Hacker News new | ask | show | jobs
by Drybones 1094 days ago
I switched to Jellyfin from Plex cause of it being open source and having AMD/VA-API transcoding support

I’ve enjoyed it a but more cause I feel like I can do more on the server end. I recently started to use Infuse on my Apple TV for it cause turns out that Swiftfin, still in development, doesn’t have a license for Dolby Audio formats.

But the development cycle for Jellyfin and the clients looks healthy, unlike Plex which seems to have stagnated. The next gen Jellyfin Web UI (Jellyfin Vue) is looking good too

Jellyfin is also pretty forgiving about my file names but I am meticulous at making sure the structure and filenames are correct before dumping anything new to the library to the point where I have a complex script to process movie and tv show filenames and folders. You can also override the metadata with the Identify function on the media page context menu.

6 comments

Unfortunately I had a pretty bad experience with jellyfin when trying to switch from plex. Plex works for me in almost all scenarios, mobile, desktop, chromecast, what have you. And I can play multiple feeds simultaneously from my cheap Nuc server. With Jellyfin I had trouble to get video even playing without stuttering/buffering on my phone when on the same network, let alone on mobile internet. I'll probably give it another go in a few months to see how they evolved.
That about lines up with my Jellyfin experience ~18 months ago, although I was coming from (and switched back to) Emby at the time, which Jellyfin was forked from (still evident by all the Emby/MediaBrowser references in folder and file names). Which, IMO, was really interesting, because the codebases were very close to identical for some time yet Emby was orders of magnitude more reliable. I have more and more family accessing my server each month to the point I've almost run out of 'devices' allowed by an Emby 'license,' making Jellyfin a more attractive offering going forward... assuming they've fixed the problems they had at the start.
Hmmm...I might suggest looking into the transcoding settings and changing some things next time you take a look. Because I run Plex alongside Jellyfin (the wife prefers Plex's UI once I tweak it), and it typically runs just as efficiently if not a bit more.
I had some issues with Jellyfin that weren't due to transcoding, still not sure what the cause was.

I had a 2nd gen chromecast that would play half a second and fail, something to do with the data format I think as there was some shenanigans with changing the media container but no real transcoding happening. Solved by getting a newer chromecast which was a nice upgrade anyway.

I also had problems playing on my phone, the integrated player in the app would play video fine while the UI was interacted with, so tapping continuously worked. The picture would freeze up though. Playing through the web UI on the phone worked fine, but I prefer the app. Changing the media player from the integrated to externally through VLC solved that.

So I've found it a bit rough in some cases for me, but there are a ton of Jellyfin apps with nice UI. The core work (transcoding etc) is done by ffmpeg by all the big players (plex, emby, jellyfin) so don't expect much differentiation there.

As other comments suggest, this might be due to transcoding. There is tool Tdarr which transcodes media in advance. h264 could be the safest choice for mobile (hw support) and web.
Sounds like a setup issue, which can be tricky on Jellyfin to get transcoding properly working.
Classic open source alternative feeling. I hope the near future of open source software is more stable and feels identical or better than the closed source options.
Plex might have been stagnating, but it works kinda flawlessly for me. I run it in Docker at home and through a reverse proxy on a cheap VPS (don’t want to expose any ports at home) and even that works really well - the iOS app automagically switches between remote and local networks. Hardware transcoding (Intel) just works, even in Docker. Media scanning is very snappy. User management and parental controls look powerful enough, at least after having bought Plex Pass.
> Plex might have been stagnating,

It's not stagnating, so much as they have decided that their initial market doesn't interest them. They were writing software for end users that let end users set up their own person Netflix. But maybe the revenue was unexciting or just insufficient, and now they want to be their own streaming service.

Their streaming service sucks (they're probably at least two orders of magnitude too small to be able to afford to do it right, maybe even 3 or 4), and contaminates the searches on my server with their junk.

Also, it might be true that they're just afraid of the liability of doubling down on their original market. Contributory infringement and all that. This is almost certainly the reason they haven't expanded to include media like ebooks and audio books and karaoke. I mean they have the perfect paradigm for all of these things... the same software that keeps track of where I am in a season of shows, or halfway through a movie could definitely keep track of where I am in a book, if they wanted to.

This isn't entirely speculation on my part... at some point someone had asked them about preroll trailers for new seasons (Archer might be the most fun for these), but they said that they wouldn't add the feature because there was no legitimate source for those videos (even though just ripping them with youtube-dl is dead simple).

I paid Plex for a lifetime pass a long time ago and unless something changes, I will likely never pay them again and somehow I expect more features.

So it’s not surprising they’re looking at other sources of revenue if they expect to continue paying for developers, hosting and the entire company.

I also don’t see how ripping with youtube-dl is relevant. They need a legal source from somebody, maybe with a SLA, that they can sign a contract with, not set up some hack.

> They need a legal source from somebody, maybe with a SLA, that they can sign a contract with, not set up some hack.

I'm not asking them to provide the video files.

I'm asking for the feature. And if someone doesn't understand that's what I'm asking for, then I have to conclude that what they think Plex is supposed to be is very different from what I think it's supposed to be.

That'd make me wrong, except that 10 years ago everyone who knew about Plex agreed with me. Including the original developers.

I think it is fine for Open Source software to behave as you describe. It is much more difficult for a commercial service. Any kind is service would be borderline but charging money for it pushes it over the edge in my view.

At the very least, I think you would need two entities where one creates the software and other one hosts it. That way “the service” is hosting the software and not the specific features that the software provides.

Plex mixes both and so downloading the video files becomes part of the commercial service they are offering. Providing commercial access to somebody else’s copyright sounds illegal to me.

Insightful points, thank you. I only don’t know about the infringement part - Hollywood seems to be the most litigative group, and Plex has them fully covered.
There are excellent plugins to manage audiobooks and several spectacularly good apps for playback though. Don’t know about ebooks
Only to import metadata. But for actual functionality that's set in stone... the interface clearly believes that any audio file is music.

Hell, I have a stand-up comedy library... and if you pull up the Steve Martin album, it suggests his banjo music. You know, both audio files both Steven Martin (the man's been awarded Grammies for both, it seems).

The absolute minimum they might give us is just a different icon for audio books and for comedy. Chosen at library creation time, and no other changes. Even that's too much though.

> Don’t know about ebooks

Ebooks would require changes to the mobile clients in particular. No one's reading an ebook on Plex HTPC.

These changes aren't staggering in their complexity, they aren't horrendous endeavors. They're pretty cheap/easy. They have no interest.

Yeah for sure on the server side it's not set up with that knowledge, and Plexamp as an audio client is very radio-music-centric, but I agree with Arn_Thor that 3rd-party clients can help bridge that gap.

I've fully switched my audiobook client on iOS to Prologue, it's as full-featured as BookPlayer (playback speeds, chapters, remembered place, sleep mode, etc) but instead of managing media on my phone manually, I'm hosting it in Plex.

> I run it in Docker at home and through a reverse proxy on a cheap VPS (don’t want to expose any ports at home)

What is the benefit of running the reverse proxy vs just opening the port? It would seem whatever attacks viable on the directly opened port could just as well be carried out on the proxy port.

If the attack is an application layer (Plex) exploit, then yes, I'll still have a problem. But, having a reverse proxy which handles TLS handshakes does provide extra security against a lot of attacks. I trust nginx to be better hardened than the Plex server.

Also, all traffic is tunneled through wireguard and my home IP has no ports open. Since I'm behind CGNAT, my home is really hard to DDoS now. If I'm ever attacked, I'll just turn off the VPS.

Ultimately, I had the choice between paying €2/month for a fixed IPv4 at my ISP, or spend a little more (€5) on a Hetzner VPS that would also give me space for hosting some websites with a great uplink. So I went with the latter.

I will likely add CrowdSec soon which will give additional protection. To my knowledge, it's not available for Plex without a reverse proxy.

I've also contemplated using Cloudflare Zero Trust (Cloudflare Access) instead, and might yet switch to it - I just refrained from it for now because I read on Reddit that running Plex through that might be a ToS violation (streaming). I've to check the ToS and see if that's true. Also, I run a Minecraft server for my kids and their friends, which isn't compatible with Cloudflare ZT, so - I need the reverse proxy anyway.

  > ...am meticulous at making sure the structure and filenames are correct before dumping anything new to the library to the point where I have a complex script to...
I am the exact opposite, partly because I feel like it SHOULD BE the responsibility of the media library to maintain associations between the media files and their metadata, regardless of the filename.

It seems crazy to me that Plex and other media libraries effectively require you to follow persnickety file-naming conventions. I am very much in the minority of folks who think that you should just be able to point these media servers to a file, tell it what that file is, and then have it maintain associations so you can query your media in arbitrary ways to make a playlist or whatever-- no filenames changes needed.

I think you can do that, there is an informal standard for xml files which can live alongside the media with metadata info. I'm not sure if Jellyfin can create them directly but it can read them. See for example tinymediamanager

https://www.tinymediamanager.org/

Tinymediamanager looks really cool. Much nicer than filebot!
> I am meticulous at making sure the structure and filenames are correct before dumping anything new to the library to the point where I have a complex script to process movie and tv show filenames and folders.

I'm curious to know why you chose to write a custom (and complex) script yourself instead of using something like Sonarr/Radarr for this task? Does your script do something that the *arr apps are not capable off or is there another reason?

I hand-change every file name.

Please tell me I'm an idiot and show me a better way. Lol it won't save me the hundreds of movies I've put in "Title (year).type" format, but it will save some future work.

The *arr suite of apps is made to automate the whole process of building up your media library. You have Prowlarr for managing your download sites and clients, Sonarr/Radarr for TV shows/movies, Lidarr for music, Readarr for books, etc.

These apps can be self hosted and are fully open source. The basic workflow is that you add a movie/show, it automatically searches all of your download sites for the title, chooses the best download based on your filter criteria (resolution, size, etc.), sends it to your download client and then places the movie/show into your library based on the folder/file naming pattern you specified previously.

You can choose to automate as much of the process as you want or do most of it manually. E.g. grabbing new episodes as soon as they air vs supplying your own files (if you rip your media yourself for example) and only letting the program do the part of renaming and moving your files.

Oh, I will most definitely be checking that out. Thank you so much.

It's funny, I've heard of radarr and sonarr, but I never looked into them because I was learning other stuff.

Also check out Ombi once you have the arrs set up. It's a combined UI for your users (or just yourself) to request a movie or show and then you just wait a bit and it shows up in Plex/Jelly.
Maybe it's just me, but ombi was no end of issues for me (and resource hungry). I switched to Overseerr a while back and haven't looked back. Would highly recommend giving it a try. I found it to be a very polished experience and has been set and forget.
...super cool. Man, glad I had this conversation. I have projects again.
The *arr applications can automate it but I personally don’t like doing it that way, unless you are good with your quality profiles bad files can overwrite good and it’s not the best with removing unnecessary files

I use a program called filebot which uses the same metadata sources as Emby/jellyfin and will automatically rename and move files.

So sonarr/radarr queue things up in rutorrent that saves to a temporary location and then I drag to filebot to rename, skim the results for things going weird, and tell it to move em

I let the Ember Media Manager work out the hard stuff around this for me. It is (generally) extremely good about parsing things, scraping the right details, and producing INFO/NFO files that Kodi, Plex, Jellyfin, Emby, etc will recognise.

The only irritation is that it's Windows-only, but it has saved so much pain and aggravation. It can also auto-rename/restructure your filesystem, but I've never been brave enough to try that feature.

For me it recognizes basically all the movies without any intervention, downloaded from random places. For those few it can't find, I just put IMDB id in its metadata and its done. For music, I tagged all albums with Picard previously, so each has musicbrainz data and was instantly recognized fully. On boarding for 10TB media center lasted maybe an hour for video and 0 for audio.
Same here! But for me it was "Title (year in Sumerian Ur dynasty calendar).type"

The only format that stands the test of time, IMO

something like tinymediamanager?
I'll look into it as well. Thank you.
> am meticulous at making sure the structure and filenames are correct before dumping anything new to the library

Me too! General rules of thumb: as long as your content matches the name on https://www.themoviedb.org/ Jellyfin will recognize it and have excellent metadata, posters, etc. Even if you change the filenames later you can re-scan the library and it will be updated to reflect the new names.

Also see the Jellyfin documentation about media naming for TV series https://jellyfin.org/docs/general/server/media/shows/ and movies https://jellyfin.org/docs/general/server/media/movies/.

> Plex which seems to have stagnated

Besides a pointless re-arranging of the UI, which we all hate, what should they be doing? I'll grant you "Bugs to be quashed", but fewer features to fill, fewer devs on the payroll, and less selling out to make payroll sounds perfect to me.