Sorry for the rant, but as someone who has used Jellyfin and similar apps like Kodi, I have to say I find their code quality and general software architecture to be crap. I wish there was a good alternative. A few examples:
I have installed the Jellyfin server on a Linux box, and the Jellyfin app on a playback device (Google Chromecast with Google TV, GCCWGTV). When the app detects the playback device or TV doesn't support, say, the 7.1 Dolby audio stream in the media file being played, it asks the server to transcode the media to something it supports (eg. stereo audio). But while doing so, it transcodes both video and audio, forcibly, even though it's only the audio track that's causing the problem. The server is forced to transcode on-the-fly a perfectly supported H.264 stream to... another H.264 stream of the same bitrate, while this could be avoided... facepalm In theory this is rather simple to fix, as the Jellyfin server is built on ffmpeg, and ffmpeg is perfectly capable of leaving the video stream unmodified while transcoding only the audio stream. But the fact the developer(s) chose to implement it this inefficiently doesn't give me much confidence in the rest of their architectural choices. Maybe this inefficiency was inherited when they forked Emby, so in that case redirect my rant toward Emby :-)
Another issue with Jellyfin is it is incapable of DTS 5.1 passthrough. DTS stereo passthrough works. Dolby 5.1 passthrough works. But not DTS 5.1 passthrough. At least on GCCWGTV. That boggles my mind, given DTS 5.1 is so ubiquitous. So because Jellyfin doesn't do DTS 5.1 passthrough, I must transcode to stereo. And because it must transcode the audio, it must also transcode the video (see above), taxing heavily my server CPU whenever it's playing media.
I have also experimented with Kodi. Something in the scrapers breaks every 6 months. And for everyone who knows the scrapers are primordial in a nice user experience in Kodi. But for some reason, in Kodi, scrapers are not first-party components. They are third-party poorly-maintained junk that seems developed by random people exchanging source code patches on the kodi web forums. Like the Universal Movie Scraper code trying to pull the movie title and description and actors from IMDB. Guess how this is implemented? By some hot garbage of XML file hundreds of lines long, containing regexes that have to be entity-encoded by hand when edited. What is this? The 2000s? I get it, that IMDB disallows "scraping" in their ToS, so Kodi doesn't want to include scraping code in their codebase, but that doesn't justify the low code quality found in scrapers. Use an actual language (Python, C#, anything) with an HTML parsing library, not some junk regexes.
I hate to sound so negative, in the end I'm still grateful for these apps which are open source and free, developed by unpaid volunteers. So, thanks, but man, I get frustrated with low code quality.