Table of Contents
I just setup my Synology DS1821+ using Jellyfin for media server. It's great that everything is free and open-source that everyone can build together. Jellyfin is great that it comes with free hardware transcoding which in Plex and Emby you need to pay for that feature. The video scrapper and media wall all worked great for Jellyfin!
However, I've got problems that Synology NAS is simply not powerful enough for HEVC, 4k, and 10bit videos where it just serve as a high speed nas, instead of a media centric nas.
Jellyfin offers web player for playing your media. However, as my nas without hardware acceleration, the media can only be transcoded with the CPU. Playing 4K HDR with HEVC( H265 ) contents turns CPU into 100% and the video cannot be played.
There are several solutions to the problem. We need to avoid making the nas do the transcoding job. So we need media players that direct-play the video from nas instead of transcoding at the nas first then send out.
In iOS, Infuse and MrMC work for direct play.
In MacOS, you can use Jellyfin Media client and pick the highest framerate for direct play.
In Android and Windows, Jellyfin's Kodi plugin is here to help!
However, if we need to share the media center with family members, it'll be hard for them to understand which player to use for different platform. So, is there a way for disabling the transcoding on the Jellyfin server to avoid CPU 100% problem.
Yes! I found the solution from the reference link!
Here is what we need to do:
We cannot setup for the whole system to avoid transcoding, but we can avoid it in users' settings one by one.
First, let's get to the users settings menu
Disable these settings to avoid transcoding!
Under Media Playback;
- ❌ Allow audio playback that requires transcoding
- ❌ Allow video playback that requires transcoding
- ❌ (possibly) Allow video playback that requires conversion without re-encoding
Under Download & Sync;
- ❌ Allow media downloading and syncing that requires transcoding
Now, if the player starts playing HEVC videos that the browser client cannot transcode, it will only show the cover page. The Jellyfin server will not transcode for them so that the media server can remain stable!
Finding a hardware powerful enough for transcoding is still important for a media server, I still need to survey which board is the cheapest for the job. Maybe, RPi4, Nvidia video card or Nvidia shield? Please share some thoughts if you know the answer.
Stucking in the cover page as the video cannot be played is just a horrible user experience. An alert or notice message are needed for telling them to use proper player to play Jellyfin with client transcoding!
Is there a way to disable Remux, Direct Stream and Transcoding so the server will only allow Direct Play? I'm currently sharing my media via SMB and playing it with Infuse on an Apple TV. Would be nice to be able to play everything when traveling but my hardware is way too slow for transcoding.