Jellyfin struggling to play high quality files, crashing after a few minutes.
Hi
I have jellyfin installed in a VM with 24 cores and 32GiB RAM (VM also used for Docker).
Whenever I attempt to play higher quality files, jellyfin crashes after a few minutes. I haven't seen it struggle with lower quality media.
If the crashes are seemingly at random when transcoding I would suspect overheating hardware. Transcoding uses more energy and produces more heat than playing directly. If it were a software issue it would either work or not.
I have this issue whenever I have to deal with transcoding. The stream will usually die after a few minutes of watching. I haven't seen anything out of the ordinary in the logs. I've just resigned myself to lugging around the device I have that can direct stream the files.
I have a couple of vms on my server - truenas, pihole, etc. One is for my media - arrs in docker containers and Jellyfin installed (not at container as it wasn't binding to the media dir properly)
Pastebin wouldn't accept it (said it was nsfw - maybe because of killing processes?) so I used paste.io, which I now see is blocked by adblocking. I am not using Hardware transcoding, I am unsure where to find the driver version.
There's a couple things that stick out to me in these logs:
the androidtv client logs show the crash was due to a time-out while waiting for the server to respond to a request for over 3 seconds.
you included a DirectStream log, that's usually not too hard for even a Raspberry Pi to handle reasonably well
the first log I looked at showed libx264 was using 36 threads
So my guess is that, due to video encoding not scaling all that well across larger numbers of threads, your server is being bogged down with this transcoding and isn't providing http responses fast enough to your client device(s).
A simple way to troubleshoot this would be to explicitly set the transcoding thread count to something a bit lower than what your server has, say 16 or 20, and see if that does any better.
An obvious potential fix would be to use hardware acceleration if it's available to you. I run my Jellyfin server off of a little N100 mini PC and it can transcode 4K HDR 70 Mbps video (tonemapping included) at about 45 fps due to the hw acceleration. That said, I know it can be tricky to set up in a VM and you may not have the HW accel capability in your server CPU anyhow.
Wow, I never considered that too many cores may be the issue. I will for sure try that.
I believe my cpu is compatible, but I believe this is not iGPU transcoding. Pretty sure my server does have an iGPU (although I've never actually plugged in a screen so I can't be sure). I will research passing through either of those.
I also read that it's possible to use a different server for just transcoding. I have an old laptop I've been considering setting for that, but it's network speeds are shite.
@sammeeeeeee@entropicdrift not sure if Intel igpus are the same, but my ryzen 5700g igpu won't transcoded unless when it boots it has a monitor plugged in and powered on...