2024-03-09, 12:56 PM
Hello, sorry I... embarassingly lost access to my previous account.
There were several things that were wrong about my original post which I later found out by trial and error and by looking through the code and the SQLite DB and simply by updating Jellyfin to experimental.
Jellyfin works fine, as reported by @tmsrxzar as long as you are playing a movie, but there is a caveat:
- Obviously the media cannot be DRM protected, but this was pretty obvious from the start
- Your client needs to be compatible with the various required codecs (hevc/avc for video and the various dolby stuff for audio)
- If you want to direct play (or rather, Remux on the fly), the user you are using must NOT have permission to encode streams, while having permission to transcode streams.
The third point is the one that I was stuck at, Jellyfin can and will remux, it seems however that if it can transcode, it will do that instead... most of the time. Sometimes if the profile is set to _"Auto"_ it will Remux.
It would be nice if there was a way to force Remuxing, like an extra option on the quality settings, aside from 4K and Auto, there should be 4k, Auto, Remux.
I tried using the official Jellyfin app on Windows (aka MPV), Edge however got stuck (likely due to lack of codec support).
Actual Issues
At the moment aside from this annoying but very much manageable minor bug, the major problem lies in Jellyfin dealing with shows in BDMV format.
It seems to me that Jellyfin just isn't capable to recognize episodes in BDMVs, it will scan the playlists, find the longest one (which usually is a playlist playing all the episodes back to back) and that's what you'll be watching, it won't be able to figure out what BDMVs contain which episodes or which Extras, nor can you manually specify it.
It's usable but it's not great.
I understand that finding out what a BDMV contains can be either very hard or impossible, but it would be nice if the user could specify to Jellyfin what a BDMV contains either manually by selecting a video stream and labeling it as an episode or extra (not pretty, but better than how it is now) or by automatically figuring it out by having some sort of convention in the name, for example:
At that point it would be a matter of reading the directory name and parsing what episodes are container, so according to the first example it would be 4 episodes; then sorting all the streams in the BDMV by longest to shortest, removing the first one (which is likely just playing all the episodes back to back) and there you have the 4 episodes... in theory, possibly unordered.
(I'm looking to implement this but I'm not exactly knowledgeable about C# nor do I know the Jellyfin codebase, so for now it's quite a struggle)
There were several things that were wrong about my original post which I later found out by trial and error and by looking through the code and the SQLite DB and simply by updating Jellyfin to experimental.
Jellyfin works fine, as reported by @tmsrxzar as long as you are playing a movie, but there is a caveat:
- Obviously the media cannot be DRM protected, but this was pretty obvious from the start
- Your client needs to be compatible with the various required codecs (hevc/avc for video and the various dolby stuff for audio)
- If you want to direct play (or rather, Remux on the fly), the user you are using must NOT have permission to encode streams, while having permission to transcode streams.
The third point is the one that I was stuck at, Jellyfin can and will remux, it seems however that if it can transcode, it will do that instead... most of the time. Sometimes if the profile is set to _"Auto"_ it will Remux.
It would be nice if there was a way to force Remuxing, like an extra option on the quality settings, aside from 4K and Auto, there should be 4k, Auto, Remux.
I tried using the official Jellyfin app on Windows (aka MPV), Edge however got stuck (likely due to lack of codec support).
Actual Issues
At the moment aside from this annoying but very much manageable minor bug, the major problem lies in Jellyfin dealing with shows in BDMV format.
It seems to me that Jellyfin just isn't capable to recognize episodes in BDMVs, it will scan the playlists, find the longest one (which usually is a playlist playing all the episodes back to back) and that's what you'll be watching, it won't be able to figure out what BDMVs contain which episodes or which Extras, nor can you manually specify it.
It's usable but it's not great.
I understand that finding out what a BDMV contains can be either very hard or impossible, but it would be nice if the user could specify to Jellyfin what a BDMV contains either manually by selecting a video stream and labeling it as an episode or extra (not pretty, but better than how it is now) or by automatically figuring it out by having some sort of convention in the name, for example:
Shows/Penny Dreadful/Season 1/DISC_1-EP01-04/BDMV
Shows/Penny Dreadful/Season 1/DISC_2-EP05-08/BDMV
At that point it would be a matter of reading the directory name and parsing what episodes are container, so according to the first example it would be 4 episodes; then sorting all the streams in the BDMV by longest to shortest, removing the first one (which is likely just playing all the episodes back to back) and there you have the 4 episodes... in theory, possibly unordered.
(I'm looking to implement this but I'm not exactly knowledgeable about C# nor do I know the Jellyfin codebase, so for now it's quite a struggle)