Closed Scratchydisk closed 1 year ago
Can you test setting the "preferred video player" in the app settings to libvlc and exoplayer and let us know if this happens with both or just one of them?
Can confirm I was having this same issue, changing to libvlc solved it. Seems like the issue is only in exoplayer - attempting to select "None" just closes the subtitles menu and either resumes playing or pauses the media depending on its previous state.
Also confirm this.
I'm not sure whether libvlc has same issue. because libvlc can not load the subtitle, it is a ass subtitle embedded inside the mkv file. When switching the subtitle using libvlc, it pop up a toast saying "Unable to load subtitle"
Interestingly I was having this same problem - subtitles stuck on, selecting "None" would do nothing - with the default option. But it was LibVLC that was broken, and manually switching to Exoplayer fixed it.
I can also confirm this. After some testing these are my results.
Exoplayer has the issue where you cannot turn off the subtitles. You cab choose any other subtitles and they work but you cannot select 'None'. LibVLC works as expected and you can select any subtitles as well as 'None' and they all work as expected.
Unfortunately though I cannot really use LibVLC as quite a few of my TV shows are in 4:3 format and LibVLC does not offer the stretch option to stretch the video to fill the 16:9 screen.
Ime not sure if this is a different bug, but with ExoPlayer or VLC, my AndroidTV cannot change from subs to none. The app seems todo something when disabling the subs as it closes the transcoded stream, but seems to fail and revert back. This only seems happens if the video got transcoded, in my case because my TV doesn't support ASS subs. MI TV-4S(MSSP3), Jellyfin 0.15.9, Server latest stable, transcoded stream are mkv avc aac.
Edit: I can confirm the same behavior on the Shield TV Pro 2019 with Jellyfin 0.15.10. Here the audio is not supported and does get transcoded and repacked with the video.
I was also unable to turn off subtitles (ASS in a MKV container) while streaming from my Jellyfin 10.8.10 server to jellyfin-androidtv 0.15.10 running on a Xiaomi MiBox S.
I tried to use the [cc] menu selection during video playback, and when I would select None the video stop for a moment, then continue with subtitles. I watched this process from the web dashboard and saw that Jellyfin was transcoding the video, with the message "Reason for transcoding: The subtitle codec is not supported"
When I first play the file, I get a about 4.5 seconds of "Direct playing" (Then the first line of subtitles hits, and transcoding begins.)
I was able to use the workaround described in the original report (set subtitles to Off on the individual video file, via the web interface, then play a few second of the file from the web interface so the selection "sticks") After doing this, if I use the [cc] menu selection during playback I get the "please wait while we burn in subtitles" message, followed by subtitles that I am not able to turn off.
I was also able to set LibVLC in Preferences > Playback > Preferred media player. This was the best behaved solution. Subtitles do render initially, without requiring transcoding, and subtitles can be turned off (and back on) from the [cc] menu during payback. (I'm going to use this method until it breaks something else)
Interestingly, when I play the video file in my browser (Chrome 115.0.5790.171 from the Jellyfin server web interface), the dashboard tells me "Reason for transcoding: The video codec is not supported The audio codec is not supported", so the subtitle codec appears to be supported, and the [cc] menu selection works to toggle subtitles on and off. Setting subtitles to off while the move is playing this way seems to work like the first workaround. (Selects the Off option on the individual video file info screen)
I think I found something interesting in my jellyfin.log:
I think this is me playing the file with the workaround:
[2023-08-18 00:48:36.915 -04:00] [INF] User policy for "jellyfin". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2023-08-18 00:48:36.916 -04:00] [INF] StreamBuilder.BuildVideoItem( Profile="AndroidTV-ExoPlayer", Path="\\192.168.1.182\video.mkv", AudioStreamIndex=null, SubtitleStreamIndex=null ) => ( PlayMethod=DirectPlay, TranscodeReason=0 ) "media:/videos/43dec9c2-ad19-016f-ec86-c33b191b0cfb/stream.mkv?MediaSourceId=43dec9c2ad19016fec86c33b191b0cfb&Static=true&VideoCodec=hevc&AudioCodec=eac3&AudioStreamIndex=1&api_key=<token>&SubtitleMethod=Encode&Tag=73486732408f1a1f40f5018f75338fac"
Then a similar line when I used the [cc] menu to turn subtitles back on:
[2023-08-18 00:49:27.638 -04:00] [INF] User policy for "jellyfin". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2023-08-18 00:49:27.638 -04:00] [INF] StreamBuilder.BuildVideoItem( Profile="AndroidTV-ExoPlayer", Path="\\192.168.1.182\video.mkv", AudioStreamIndex=null, SubtitleStreamIndex=2 ) => ( PlayMethod=Transcode, TranscodeReason=SubtitleCodecNotSupported ) "media:/videos/43dec9c2-ad19-016f-ec86-c33b191b0cfb/master.m3u8?MediaSourceId=43dec9c2ad19016fec86c33b191b0cfb&VideoCodec=hevc,h264,hevc&AudioCodec=eac3&AudioStreamIndex=1&SubtitleStreamIndex=2&VideoBitrate=17029795&AudioBitrate=640000&AudioSampleRate=48000&MaxFramerate=24&api_key=<token>&SubtitleMethod=Encode&RequireAvc=false&Tag=73486732408f1a1f40f5018f75338fac&SegmentContainer=ts&BreakOnNonKeyFrames=False&hevc-level=120&hevc-videobitdepth=10&hevc-profile=main10&hevc-audiochannels=6&aac-audiochannels=8&TranscodeReasons=SubtitleCodecNotSupported"
And finally, I think this is my attempt to turn subtitles off, and it not working:
[2023-08-18 00:49:54.793 -04:00] [INF] User policy for "jellyfin". EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True
[2023-08-18 00:49:54.793 -04:00] [INF] StreamBuilder.BuildVideoItem( Profile="AndroidTV-ExoPlayer", Path="\\192.168.1.182\video.mkv", AudioStreamIndex=null, SubtitleStreamIndex=null ) => ( PlayMethod=Transcode, TranscodeReason=SubtitleCodecNotSupported ) "media:/videos/43dec9c2-ad19-016f-ec86-c33b191b0cfb/master.m3u8?MediaSourceId=43dec9c2ad19016fec86c33b191b0cfb&VideoCodec=hevc,h264,hevc&AudioCodec=eac3&AudioStreamIndex=1&SubtitleStreamIndex=2&VideoBitrate=17029795&AudioBitrate=640000&AudioSampleRate=48000&MaxFramerate=24&api_key=<token>&SubtitleMethod=Encode&RequireAvc=false&Tag=73486732408f1a1f40f5018f75338fac&SegmentContainer=ts&BreakOnNonKeyFrames=False&hevc-level=120&hevc-videobitdepth=10&hevc-profile=main10&hevc-audiochannels=6&aac-audiochannels=8&TranscodeReasons=SubtitleCodecNotSupported"
I'm seeing:
I don't know if this is the right direction, or where to look next, but I'm quite sure I can reproduce this as needed, please let me know if more log files or testing can help.
This issue still persits with exoplayer today, not closed.
Yes this bug is still open
No using VLC externally isn't a good enough solution, it doesn't handover your language preferences or anything.
Queue me surprised to hear Japanese Goku with no obvious way to change it with a different interface.
Describe the bug
Expected Behaviour: Changing the CC option to None from the Android app should turn off subtitles.
Actual Behaviour: Selecting the None CC option has no effect at all.
Changing to any other subtitle works, it is just changing to None that doesn't work.
To Reproduce:
Workaround:
The workaround is to access the video via the web interface and set the default subtitles to None there. Then play the video in the web app (a few seconds is enough). The Android app then shows no subtitles.
Logs
No response
FFmpeg logs
No response
Media info of the file
Application version
0.14.03
Device information
AQUOS_TVE19A
Android version
Android 9, Kernel 4.9.118+
Jellyfin server version
10.8.4