Hey all, I started hosting my own media server using jellyfin on a raspberry pi. This was mostly because I was new to the space and didn't want to invest heavily in hardware only to drop the project or find that I couldn't make it work for some reason.
I've now got it all set up and working, but the pi is absolutely not able to handle any sort of transcoding. So I'm now looking to upgrade the hardware.
Currently, I only need something that can handle transcoding two sub-4k streams concurrently. But I don't want to fully shut away the possibility of streaming 4k media. I should have the space for it, my current limiting factor is processing power.
Reading the jellyfin docs on recommended hardware, my understanding is that I should be OK if I get a recent Intel i7 CPU as long as it's got integrated graphics?
I am currently planning to build a small form factor PC and run it as a headless Linux (possibly Debian) server with jellyfin and everything else running in docker.
Mostly, I want to ask: does anyone with experience doing this have concerns or advice? In particular:
Is just the CPU processing power sufficient for everything if the CPU is chosen correctly?
If the CPU is not sufficient, is it difficult to set up a dedicated graphics card on a headless server?
I use a GPU but that's only because my CPU is a first gen ryzen with no graphics. I highly recommend any recent Intel CPU that supports quick sync. You'll have an easier time and pull way less power. i7 might even be a bit much honestly I'd look at i3's or even celerons. They're easily capable of what you want but you can always get something better just for future use.
An i7 is overkill for what you want. I can do multiple 4K streams with tonemapping using an Intel Celeron N100 CPU with Quicksync hardware acceleration turned on.
Ah falling down the rabbit hole. If you're only looking to transcode videos stay away from the graphics card. Look into Intel quick sync. Newer Intel cpus can transcode over a dozen 4k streams at a time using little power. However the next issue depends on what operating system you want to use, Windows, Linux, docker container or proxmox to run Plex/emby/jellyfin. They all come with their own issues/caveats to actually getting quick sync to work. However each is well documented. Learning is the fun part. I went down a similar route ended up with a nuc12pro running proxmox running a whole bunch of stuff but primarily used for Plex running in an lxc container. They are small powerful and don't use a lot of power and importantly also well documented.
Thank you. That's exactly the kind of answer I was looking for. It's good to know that this is just a struggle for the pi and not something CPUs as a whole have an issue with
I solved this problem by having all of my media in a supported format of all of my devices so no transcoding is needed. My Pi 4 can transcode two 480p streams simultaneously or a single 1080p stream but can’t do any more than that. However it can stream at least 4 streams simultaneously a mix of 4k, 1080p and 480p. It suits my needs unless I’m transcoding 4k due to subtitles 😵. Hopefully transcoding won’t be required for subtitles forever… right? Right?