jellyfin / jellyfin-mpv-shim

MPV Cast Client for Jellyfin
Other
1.61k stars 93 forks source link

Subtitle and Audio Track Selection Breaks after Video Quality is Changed #223

Open djsigmann opened 3 years ago

djsigmann commented 3 years ago

To Reproduce Steps to reproduce the behavior:

  1. Open up a file in jellyfin-mpv-shim through jellyfin
  2. Press "c" or whatever key you have mapped to open the config menu
  3. Use the arrow keys or mouse to select "Change Video Quality"
  4. Select any option

Expected behavior The video will pause for a while and the bottom-left hand corner will reflect 0 audio and subtitle tracks The video will then resume but with only the default audio track available and no subtitle tracks. It also seems to be a bit glitchy and slow and partially unresponsive to seeking and pausing. Opening up the config menu again and trying to change the audio or subtitle tracks yields no changes.

Screenshots If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

Error Messages https://gist.github.com/DJSigmann/50b08785c8bacc34ba3298b323957092 I can't seem to find anything in the log that corresponds directly to this bug I'm having, but then again, I'm not one of the devs.

P.S. I just remembered that sometimes when I use an external player app with jellyfin mobile, I get somewhat similar behaviors, perhaps this is something wrong with jellyfin itself, then?

iwalton3 commented 3 years ago

One thing to note is when using a video quality mode, changing the tracks can do various different things. If the subtitles need to be burned in, it will restart the video transcode. More often for subtitles, it will re-request the subtitles as external subtitles, which may require the entire file to be read. This may take a few minutes to complete in the worse case.

djsigmann commented 3 years ago

One thing to note is when using a video quality mode, changing the tracks can do various different things. If the subtitles need to be burned in, it will restart the video transcode. More often for subtitles, it will re-request the subtitles as external subtitles, which may require the entire file to be read. This may take a few minutes to complete in the worse case.

I almost exclusively use SRT and SSA subtitles (which, afaik are just pure text and don't have to be burned in), and even though you can see in the attached log this video file does indeed have PGS sub streams in it, one can also see that I had selected an external .srt file to be used for its subtitles. When I change the video quality the log shows: 895 [ INFO] mpv: cplayer: (+) Subs --sid=4 'Stream.srt?api_key=REDACTEDREDACTEDREDACTED' (subrip) (external) (I obfuscated the key), mpv shows it as if it was never there in the first place, nor does it show any subtile streams that are present in the video itself, PGS, SRT, or otherwise unless it was already selected in the UI prior to playing the video.

Would perhaps a screenshot help to simplify this explanation?