Jellyfin Media Server

In the future, this section will cover simple how-to guides for a handful of the most common installation types.

Alternative Guides

Other guides written by fellow users that use different methods that are worth checking out.

Pick your OS

Jellyfin is offered on three main types of operating systems. The easiest by far to get going is Windows. However, networking your media server can be more difficult. macOS and Linux/Unix are easier and safer to network.

Windows
Linux/Unix
macOS
Windows

Windows is an NT kernel that is closed source.

  • Cannot update core files without the need to reboot.

  • Has better support and implementation of graphics acceleration.

  • Forced updates can lead to your system going offline while you are away from home. If you do not have the ability to remotely access, Jellyfin could be offline until you return home to correct this. Problems like blue screens or failed update loops are well documented on support threads all over the internet.

  • Overhead can be much higher once all system services and drivers are running.

  • Windows is the most targeted OS for attacks. Defender is a very good product these days, but you're not immune even with third party AV.

  • Can be easy to recover from bad updates or failures.

Linux/Unix

Linux/Unix kernel comes in many forks, flavors and targets different uses.

  • Can update core files without the need to reboot. Learn more.

  • Out of the box, open source drivers are limited themselves. Linux does have additional support through closed source drivers, but it is not as fleshed out as Windows or macOS counterparts. Closed source can be difficult to setup and make work for hardware acceleration.

  • No forced updates. You can have them installed automatically if you choose, but Linux will never force a reboot.

  • Low overhead and uses less system resources that would give the media server more to utilize.

  • Less likely to get a virus or malware.

  • When Linux breaks, it requires a more advanced recovery. Novice users without experience may feel defeated.

macOS

macOS is a Unix kernel fork that is closed source.

  • Cannot update core files without the need to reboot.

  • Has better support and implementation of graphics acceleration provided by Apple for AMF and QSV.

  • No forced updates. You can have them installed automatically if you choose, but macOS will never force a reboot.

  • Overhead can be much higher once all system services are running.

  • Less likely to get a virus or malware.

  • Can be easy to recover from bad updates or failures.

Your Hardware

You don't need anything powerful if your use isn't heavy or a lot of people will not be streaming at once. You can repurpose an older PC or even a laptop. For example here's what I have:

  • Gigabyte Z270X Ultra Gaming

  • Intel i5-6600K 4C/4T @ 3.5 - 3.9 Ghz (OC 4.5 Ghz)

  • G.Skill 16GB DDR4 3200

Instead of selling it or recycling, it's now a server. If you don't have something already at your disposal you can easily build one for a low cost. In fact you can even purchase a RaspberryPi or Intel NUC to run Jellyfin. Though these often require further advanced setup. More so the Pi than the NUC. You shouldn't need a dedicated GPU for this unless you have plans to allow a lot of people access and you all watch at the same time. Provided your internet can handle it.

Internet Factors

Most of the US has cable internet. This means our upload speeds are limited. This is to prevent noise in the line which would ultimately degrade everyone's internet on the hub. Upload speeds range from 5mb/s to 50mb/s. You should set your maximum streaming limit to a fraction of your upload. 1/5 is a good starting point. If you're going to be allowing multiple people access and everyone happens to join at the same time, you could easily reach your limit and end up with everyone buffering. I set my hard limit to 8mb/s. Devices can also have their own settings. I set this to 4mb/s on my phone. I can go up to 8 but keep it at 4 because this streams faster and quality isn't needed. Saves on data too. When connected to decent WiFi outside of the house, the 8mb/s limit is enough for 1080p. This could potentially save you costs.

If you're connected to fibre internet, your speeds in most cases are symmetrical and the upload speed cap does not apply. In this case, an IGPU to transcode may not suffice and you could need a dedicated GPU to provide more streams.

Check your upload speeds in the morning, mid-day, and evening to determine your average.

Domain Name

You should decide how you want to access your server remotely before you start the process. Read the information below to determine the best route for you. Using a domain allows you to encrypt traffic to secure your server. This is extremely important. It's something Plex already provides, albeit without a custom domain name.

You can purchase your own domain (TLD). These range from $10 to $40 USD a year. Initial sign-up prices can be as low as 0.99ยข. There are many places you can purchase a domain from. Here are a few:

If you prefer, you can use a DDNS domain. Many DDNS services are free and provide you with a domain. Though free options are often not as personable and require you use a sub-domain. IE: example.duckdns.org. Here are a few:

Later guides will cover how to use either method. It is recommend you sign up with a DDNS service before you start and install/setup their automation process.

Migration

If you're coming from a different service, such as Plex, you will need to rebuild your database. Unfortunately this is the case for any of the competing services (Emby and Kodi too). Your media files will remain where they are, the service itself builds a database from these files. To my knowledge, there are no universal plugins that will assist in migrating database content between competitors. Especially since Plex and Emby are closed source.

โ€‹

You should know your firmware boot key before you continue. If you do not know this, please refer to your boards manual.