Hacker News new | past | comments | ask | show | jobs | submit login

Jellyfin is pretty good, and I've been using it in place of Plex for the last few years. However, I feel like there are some underlying limitations that I just can't get past:

1. the UI jank. The thumbnail tiles are slow to load, even on a local network. Searches and filters flicker as you type and take a while to return. Scrolling fast in the web UI gets choppy/laggy.

2. The native app (at least in the case of Apple TV) is either nonexistent or terrible. I've been using Swiftfin since it was one of the first alpha versions, and it constantly lost pairing with my Jellyfin instance. When it did work, which was very cryptic and usually required re-enrolling the client every time, it would randomly fail to load things, and the UI was very choppy as well. I haven't used the native apps on other platforms, but I imagine they are equally or more janky, because the Apple TV is comparatively very beefy hardware-wise vs. most other platforms.

3. The polling for new media is slow. I upped it to 10 minutes (the quickest possible setting) but I shudder to think what a full scan of a media library every 10 minutes is doing to my disks. Why doesn't it use file watchers and webhooks for new content notification?

4. The homepage has very little actionable info and doesn't work for browsing. It's not like Netflix or any of the other services where you can boot it up and see a bunch of different categories, as well as your "list". It has playlists, but you have to drill down to see them. You can go to "Movies -> Suggestions" and it has a little bit, but nothing like Netflix does. No real recommendation engine.

5. You have to maintain your own trailers or use an app like Infuse that can download its own trailers.

6. You have to separately configure tiles to be rendered if you want a nice seeking experience where it shows a live preview as you scrub through the timeline.

7. Movies and TV Shows are separated even though pretty much every other platform doesn't separate them, which requires you to click into one of 2 options before you can do almost anything.

That said, it's still far better and less janky than Plex was before I switched, and Infuse actually plays back HDR / Dolby Vision content correctly.

Does anyone else have qualms with Jellyfin? And how does Plex compare to any of these gripes?




As a jellyfin fan myself, I'd like to address a couple of your points.

For 1, 2, 3(?), 4, you appear to be referring to the Apple TV client, which is written in an entirely different language and frameworks, and entirely different authors. (This is due to the excessive limitations on languages put in place by apple in their ecosystem).

Jellyfin has dozens of other platforms.

In regard to #3, Jellyfin does use file watchers.

For #5, there is a setting to grab trailers. Additionally, if the default metadata providers aren't getting you what you want, there is a baked in library of more than a dozen alternative metadata providers and a variety of other things you can use to augment what your media library provides.

For #6, I'm not sure if you're just referring to the Apple client again, but I'll add that the "Jellyscrub" feature is turned off by default, but if turned on, it will automatically generate video scrub images.

For #7, idk. I guess it's a stylistic choice? Why is there Sonarr and Radarr?

Anyway, I'm just a user, but, I'm also a Jelly-stan. So, I'd highly recommend you browse through the configuration options a bit more, particularly in regard to plugins and the many settings available in each of libraries' individual configurations.


It's not really fair to blame Apple for those dev's poor product, nor for Jellyfin's choice not to support an iOS client of their own. Plex has a fantastic iOS app, the Plex Music app is one of the prettiest music players ever produced. VLC has a fully-functional iOS app. Home Assistant's iOS client is indistinguishable from its Android client. The list of self-hosted apps that have great iOS companion apps is long and diverse.

This myth that Apple's ecosystem is so stifling isn't shared by the expansive developer community who work on Apple devices. It's far from perfect, to be sure, and they may overreach with some of their more stringent security and privacy controls (but none to my knowledge outright prevent apps like Jellyfin from being competitive). If Jellyfin wanted to release a high-quality app for Apple devices, there's nothing really stopping them.

I don't mean to suggest that your primary motivation for your opinions re: Jellyfin on iOS are the result of blind fanaticism, I'm certainly not saying any of this out of some tribal loyalty for Apple, either. The frequent partisanship surrounding Apple and Microsoft/Android has always been strange to me. Among the devices I use every day are a custom-built Windows 11 box, an M2 Mac Mini, an older PC running PopOS (Ubuntu-based), an iPad, and a Google Pixel. They're all tools, and they excel in their own areas. I like some things that aren't available to all platforms, and attempts to find reasonable alternatives don't always prevail. I like my Windows box for MS Flight Simulator, Remote Desktop Manager, and Visual Studio. I like my Mac Mini for Logic Pro, native Bash terminal, and DEVONthink. I like Linux for its infinite versatility and freedom. I like Android's customization, and Apple's unbeatable device/OS integrations and sync.


Apple TV doesn't support embedding a web browser (WKWebView/UIWebView), which means that the client app needs to be completely re-implemented. For a small team of volunteers this can be quite a challenging undertaking, and will take development time away from other apps.


It is in fact extremely limiting, since you must have a Macintosh to create a iOS app, meanwhile you can create Android apps on Windows / Macintosh / Linux


Thanks for the detailed reply, I’ll look through my configuration and see if I can find where the issues are with the file watching. You’re right, many of them are likely because I have to use Infuse, due to the native Apple TV client being so bad.

When I say there is UI jank and lag, what I mean is that content re-renders and shifts around when you search, results flash in and out with loading animations. the placeholder tiles are clearly visible and I can see the tiles loading in when I scroll. This happens in both the web client and Apple TV. I believe the issue is the API design that’s dictating how clients fetch and load data, some virtualization in the frontend implementation, and a lack of prefetching/caching.

I have a 10 gig network to a very fast NAS setup and a very small media library. the image assets should be able to be cached/streamed/prefetched from the server so that I do not ever see a placeholder tile (maybe if you jump ahead like 1/2 the library, then that makes sense).

Perhaps this is one of those things where people haven’t seen what’s really possible performance-wise from a local server and they’re OK with something that feels like a webpage. But nothing feels like a native app that just has all my content there all the time. It feels like a remote service even though it’s < 1 ms away on a hardwired multigig network. Does that make sense? Do you agree with that?


About 6, jellyfin also landed trick play images recently, which gives you a preview image when hovering the progress bar.


I have a very different experience from most of your issues, to the point where I think something is wrong with your install.

I can scroll through a page of >1000 movie cards and there's no choppiness or lag at all in the webUI. The cards have blurhash placeholders until the actual thumbnail loads, which is always very quick.

Swiftfin for the Apple TV is admittedly very barebones and can be choppy when scrolling through big lists, but it has never lost pairing or failed to load anything for me.

New media shows up pretty much immediately for me. Did you disable the "real time monitoring" setting in your libraries? Jellyfin will use something like ionotify or whatever your platform/fs supports when it's enabled.

"separately configure tiles to be rendered" is one checkbox, assuming you're talking about trickplay images, which was a recently added feature and I think is enabled by default for new installs.


Having placeholders is part of what I’m talking about when I say lag, and jank is about dropping frames so that things do not appear smoothly animated. Not everyone is as sensitive to jank or they’re ok with it, but if you use something that lacks jank in the animations it feels better even if you don’t know what jank is.

The media detection thing might be related to Infuse and not to Jellyfin itself, since it sounds like everyone else isn’t having this issue, which is good to know.


What sort of hardware are you using to do transcoding of the content on the source box? You could try adjusting the quality (or type) of the transcoding to potentially improve this. Like, perhaps you are trying to transcode into a format for which your video card doesn't have built-in encoding? (Like, nvenc units on an nvidia chip, if that's what you have.)

You could also try setting up directplay, if your stack supports that.

Lastly, it might just be a limitation of your host hardware. What are you running your jellyfin server on?


I’m talking about the UI of the media browser part, not the video playback. I’m direct playing and the video is perfect.


Swiftfin constantly forgets my login on AppleTV too, but then again so do a few other apps, so I blame Apple


Re:

2. https://github.com/jellyfin/Swiftfin/issues/776

3. If you use radarr/sonarr, you can add Jellyfin as a connection. When they import a file, they will notify Jellyfin to process it.


Whoaaa I was not aware of #3! Amazing, thanks. Got a few friends to share that information with as well :)


Plex has a lot more polish. However, Plex also tries to shove stuff down your throat. If you want to share your meeting with friends, you need to have a Kodi pass or some bollocks. Jellyfin is 100% free. Certainly it is not as polished though, but I managed to use it with my friend who are not very technically literate, and it works very well for them. Every release improve the polish a little!

Edit: New media shows up for me pretty much straight away without having to do anything. Not sure what's happening there for you.


> However, Plex also tries to shove stuff down your throat

Unpinning the trash every few months gets tedious. It turns out, I want the stuff I pinned, not anything else.


I use Infuse as a front-end to Jellyfin on Apple TV - and don't even have to pay for it as I encode something it doesn't care to charge for.

My server running Jellyfin has something setup with the kernel that it notices new files almost instantly.


You are not wrong. But it is still an amazing piece of software for self hosting.

My biggest gripe is the sometimes hilariously strange behavior picking artwork:

https://github.com/jellyfin/jellyfin/issues/10494

Other weird things I have been able to DIY. I wrote my own auto-updater and Live TV listing grabber.


For live tv listings, there are companion apps like Ersatztv and Tunarr (easier to use than Ersatztv but less features) which feed into the live tv section in Jellyfin. You create 24/7 “tv stations” running whichever collection of local media files you wish to have in a “channel”. It’s great if you plop down and can’t decide what to watch, or want to replicate the look and feel of childhood cartsoon, right down to inserting 90s ads in between episodes.

You can use Ersatztv to create an automatically updated playlist, based on a Trakt or IMDB list. Back in the day, there was/is a a cool addon for Kodi called “PseudoLiveTV” and these apps replicate this functionality.

So you can have an always updated Christopher Nolan collection, Halloween movies, westerns, 24/7 90s cartoons, BBC nature documentaries or whatever.

You can pull any imaginable tv or movie list from Kometa using Ersatztv:

https://kometa.wiki/

See here for one idea: https://youtu.be/Ibaj6NiS8xM?si=eiPhTzZuwGAwa8Id


It's a sign of the times when someone misunderstands what "Live TV" means. lol

So I am literally streaming ATSC channels from my roof antenna with JellyFin. I didn't feel like paying a subscription fee (and anyways - no paid service has exactly the right XMLTV format JellyFin expects), so I wrote a scheduled task which scrapes the listings and ingests them with the REST API.


I didn’t misunderstand what you meant. I just meant you can “hack” the live TV feature of Jellyfin, and use it to create a “live” tv experience from local media.


Agree on the DIY too! Added a _fresh_ trailer before a movie and it makes the experience close to cinema


Hm, that sounds vastly jankier than Plex per your description. I have never had to wait for any UI element to load in plex, local or remote, including thumbnails. Everything is almost always instantaneous. I've tried the demo instance of Jellyfin a few times to see if it has improved and my impression was that it's a complete joke, not a serious plex alternative.


I have the opposite experience. I tried to setup Plex a few times but always ran into issues with getting ads, having to make a Plex account, and dealing with free/paid features. I just couldn't get it to work without ads and all the hassle. Instead I installed Jellyfin on a NUC running Docker, downloaded the app from the play store onto my TV, and it just works, no delays, no lag.


I have Jellyfin on my local network and it works like a dream. I used to use Plex and, at least for my needs, one was a straightforward replacement for the other. The web UI is clean and snappy and just works.


Have you tried Infuse as the playback app on AppleTV?

It’s one of the few apps I’m happy to pay the subscription cost for. Well worth it for a well made AP.

Not trying to make this sound like an ad. It’s just a legit good app.


I use it too and also pay the subscription. Though I only connect to a local synology SMB share with it. Am I missing out by not running jellyfin and hooking up Infuse to that?

Infuse is generally really good, but I wish it had a way to expose slightly more power user features such as: viewing detailed file info (codecs, resolutions, audio-video bitrates, stream info for all streams), ways to create arbitrary dynamic playlists/folders based on conditions, and viewing current stream debug info (MB/s, cache fill, ram usage, disk usage etc). Any debug info would be helpful when some files seem to kinda work but then crash Infuse. For example some 4k/6k/8k ProRes content at around 800Mb/s. Network/NAS isn’t the issue as it’s hardwired 1Gb/s. So then I don’t even know if some specific variation of ProRes (or every) is just unsupported on the appleTV and it goes into software decoding, or whether the AppleTV is oom-ing, or what exactly is wrong.


I have to agree on #7: it's pretty annoying, especially for series where there's both TV shows and movies related to them. For instance, The X-Files: there's 11 seasons of shows, but also 2 movies. A better example is Star Trek, with a bunch of different TV series, plus a bunch of various movies related to the different series.

You can put these into "collections", but it'd be nice if my library could just have a "Star_Trek" directory and then subdirectories with all those things inside, and have it automatically sorted out by JF.


Side question, something I've sometimes wondered - why do people want trailers? I only have things in my collection that I chose to put there, so I already know what they are. Not trying to be snarky, I'm honestly curious.


People making use of autodownloaders or just with very large collections generally aren't going to know everything that's in their library. It's also just easier when you're trying to decide what to watch with a group.


The Apple TV / tvOS app is seeing development towards a new release, this discussion is actively updated with the progress https://github.com/jellyfin/Swiftfin/discussions/1294

Worst case you may have to pay for Infuse another year, although it would have felt better to donate to the development of the Apple TV app instead


Echoing many of the other replies here - my experience has been very different (much better).

The web UI is fine and snappy and using Infuse on Apple TV is simply delightful.

The server uses file watchers to update the media library very quickly and is light on resources.

I don't need a recommendation engine because... it's my media library, presumably I added things to it that I want to watch.

And most importantly, it's open source and not likely to get enshittified in the near future like Plex.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: