No hardware accelerated encoding available on Epyc, in that regard you’d been better off with Intel CPUs.
Edit: What you could possibly do is to pair it with an Intel ARC graphics card but support is still in early days. I don’t know however how many concurrent encodings it’ll handle though…
HEVC or h264 should be available for ur Epyc using jellyfish… It also supports AVX512 the Epyc not sure about jellyfish… That’s kind of what you get when you try to encode with a CPU. The Epyc should have plenty of resources for h264. Are you having some kind of performance problems with software encoding?
Once Intel Arc supports Linux, I’ll be interested in grabbing it. I love that it’s cheap and supports AV1. Great for this use case, but I’d really prefer a card designed for a server-chassis; 1-slot if possible.
I have having tons of playback problems and choppiness with even a single stream. But I haven’t enabled hardware acceleration. It’s still currently set to “None”.
Once thing I did was talk to the TrueCharts folks. One huge improvement was bumping the thread count from 4 to 14. I tried 10 threads, but it was still choppy. At 14 threads, it was finally smooth.
I’ve done CPU-encoding of YouTube at 2x in the past and never had issues aside from increased CPU usage. Not sure why I’d need a dedicated GPU for 1 transcode stream.
You may have luck with x264 and FFmpeg via AMD AMF. How ever it might not be strait forward. Apparently AMD might not have implemented their hardware encoder yet. This could be done in the future ie “fine wine…” And from what I can gather AMF is GPU focused not CPU focused. How ever people have bench marked x264 on the 7252 via FFmpeg which jellyfin references in the AMD docs on their website… Thats the best I can come up with rn hope that helps.
I tried AMD AMF in Jellyfin and it’s not able to transcode.
I think this is important:
Source: Hardware Acceleration | Jellyfin
Most Zen CPUs do not come with integrated graphics. You will need a dedicated GPU (dGPU) or a Zen CPU with integrated graphics for hardware acceleration. If your Zen CPU is suffixed with a G or GE in model name, you have integrated graphics.
So I don’t think any hardware acceleration is enabled for Epyc processors.
Yes I figured. I dont think its implemented. You might be able to find a work around but it might not be worth the time and effort. The Intel Arc which may or may not work or a an AMD GPU around the same price should work for you. Good luck.
i run EMBY on 8 cores of a 7351p and no GPU. only software for transcode. i have 0 issues even with multiple transcode jobs running at once. i would hazard a guess that your bottleneck is not CPU related.
CPU usage is 75-89% when it transcodes. I would expect it to be higher (99-100%), but it could be thermal-throttling. I’m not sure how to check for that in TrueNAS.
That’s strange, part of the reason I moved to Jellyfin was a generally easier transcode. It really comes down to your settings. IIRC they both point to FFPEG
The target is to never use transcode and target direct play.
If you are using iPhone try toggling between the Jellyfin default player and the native player in settings mode to get direct play, it depends on the media. The android app is just broken time to time due to android reasons. From a browser it typically always works. Clients are typically good too. Sometimes the subtitle extraction on the fly makes things goofy, test with on and off with that. In a weird case the discord channel told me to clear browser cookies and cache to fix problems with a android phone cilent.
Direct play is always the first goal. Tinkering to get that is a bullet proof solution.
You don’t appear to have the necessary equipment for hardware acceleration. You’ll have to add a gpu. Give close attention to whether the graphics card has accelerated encode/decode. For example I believe the GT 1030 (single slot) doesn’t have NVENC. There are also limits on number of NVENC sessions you can have at one time, something to consider. See here: Nvidia Matrix
If direct play isn’t an option or be achieved:
From the dashboard make sure your transcode path is on fast storage. Test between different combos of transcode subtitles on the fly and throttle transcode. It very much be that the server is trying to blow through the entire file. Ease up the encode quality increasing the CFR values. Set the encode preset to something like fast or faster. If you are transcoding seeking will never be a good experience, full stop.
Good luck on the path.
TLDR: find a way to direct play, falling that, get a gpu with the correct capabilities
this makes me think your bottleneck is not the CPU.
as recommended, get direct play working everywhere possible. but when transcode is required, make sure you have fast STORAGE on the host. and fast NICs if the media is not local.
+1 on wired connection on the host giving attention to the other traffic you may have coming from the machine. I doubt you’re using wifi from the server but that as well is very sub-optimal.
truenas scale also seems to not be a true hypervisor, as such there is no easy way to handle NUMA configuration. EPYC is very RAM sensitive, NUMA node locking is vital for performance orientated EPYC VMs. That may be why 8 cores on my 7351p handles stream transcoding fine, as i have the 8 cores locked to NUMA channels.
DirectPlay is working, just not on every piece of media; not sure why.
None of the devices I tested are wireless.
My NAS using 20Gb over 2x10Gb LACP.
I’m using a Roku Ultra 4800R (100Mb), a 1Gb Mac, and a 2.5 Windows PC. I’ve tried all 3.
I have an Android phone, but I only used Plex in the browser for testing. Haven’t messed with the app.
Apps are installed on a 2x500GB SSD mirror.
My pictures, videos, and demo videos are all on an SSD zpool of 12 mirrors with NVMe Optane mirrors for cache, log, and metadata. The 12 mirrors are connected t 3 LSI SAS controllers on PCIe 3.0 x8. It’s not the full bandwidth of the drives, but it’s enough to make drive speed a non-issue.
My 7252p has 1 NUMA node at 8 cores. That’s also not an issue.
I have 128GB of 3200MT DDR4.
I’m wondering if I have all the correct UEFI settings enabled like SR-IOV. I should, but who knows if it’s working correctly. Tonight, I get a SuperMicro board to replace my ASRock Rack one. Could be that it fixes my issues.
I’d prefer to avoid adding a GPU if I could, but if I did add one, it’d probably have to be 1-slot. It’s possible I’ll want to add more NVMe drives or a 25Gb NIC in the future, so I need all 7 slots.