Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SubRip/SRT Subtitles No Longer Appearing #1575

Closed
dathbe opened this issue Dec 13, 2023 · 13 comments
Closed

SubRip/SRT Subtitles No Longer Appearing #1575

dathbe opened this issue Dec 13, 2023 · 13 comments
Labels
bug Something isn't working

Comments

@dathbe
Copy link

dathbe commented Dec 13, 2023

Software Versions

  • Jellyfin Server Version: 10.8.13
  • Roku Client Version: 2.0.0 0

Describe the bug

Embedded subtitles of the type SubRip (SRT) are not selectable from the new subtitle menu.

How To Reproduce

  1. Play a video with embedded SRT subtitles. (It should automatically play the subtitles because they are set to forced)
  2. Press up up or down
  3. Select "CC".
  4. Graphical subtitles are an option, but SRT subtitles do not appear as an option

Expected behavior

All subtitle types should be selectable.

Logs

N/A, but if someone thinks they will help I can post something.

Screenshots

Connection Information

  • Is server local or remote?
  • Is server connection HTTP or HTTPS?

Additional context

@dathbe dathbe added the bug Something isn't working label Dec 13, 2023
@1hitsong
Copy link
Member

Thanks for the bug report. We're looking into the subtitles issues.

FYI for anyone experiencing this issue: We can't update the app till January 2nd due to the roku holiday blackout. If we're able to fix it before then and push an update release on the 2nd, the app would hit Roku devices a few days later.

Unfortunately, the only workaround until then is to sideload v1.6.6.

You can find the app here: https://github.com/jellyfin/jellyfin-roku/releases/tag/v1.6.6

You can find instructions here: #897

@dathbe
Copy link
Author

dathbe commented Dec 13, 2023

Thanks for the quick reply. I'm glad it's not just me. If there's any troubleshooting you need, let me know. For instance:

I've found that if you turn captions to "Always On" in the settings of your Roku before launching the app (Settings>Accessibility>Captions Mode>Always On), the SRT subtitles will indeed play. But you cannot select them from within the app, and if you go into the captions menu while the SRTs are playing, "None" will be highlighted and backing out will disable the titles.

So this may both give some clue as to what's going on, and it gives another workaround (turn on captions before you launch Jellyfin). This might be less hassle than sideloading the old version. I really like the new Change User feature, so I'll be sticking with 2.0.0 for the moment.

@1hitsong
Copy link
Member

@dathbe That's awesome info, thanks!

@dathbe
Copy link
Author

dathbe commented Dec 13, 2023

More findings from messing around:

  1. If you have external SRT subtitles, they will be selectable in the subtitles menu. So it's not a technical issue with SRTs, just some bug in displaying the option.

  2. PGS subs also do not appear to be showing up. The only ones I've seen are ASS, though I have not done an exhaustive review of all sub types.

  3. Issue #984 seems to be marginally worse now where the external subs cause the video to play the second audio track on the video even though the first audio track is selected in the Options menu. Previously I was only getting this error on one of my Roku devices (a stick), but now I'm getting it on two (the stick and a tv).

@1hitsong
Copy link
Member

Can y'all find or create video samples that have your issues so I can use them to debug?

Do any videos found in the MPlayer samples collection match what you're experiencing?

I need to experience the same issue you have so I can fix it.

@dathbe
Copy link
Author

dathbe commented Dec 16, 2023

Ok. So I've found some weird stuff. I don't know how to search the MPlayer samples files easily, but I did find a file with srt subs at https://samples.mplayerhq.hu/Matroska/subtitles/multiple_sub_sample.mkv. This file plays fine and has selectable subtitles out of the box.

But, when I copy over JUST the video (stream 0), audio (stream 1), and English subs (stream 3), the sub stream is no longer selectable. It doesn't seem like I'm allowed to paste a video file here, but you can recreate what I did with the following:

ffmpeg -fflags +genpts -i multiple_sub_sample.mkv -map 0:v -map 0:a -map 0:3 -c copy a2.mkv

(the "-flags + genpts" is necessary because of some timestamp issue).

There are some .ttf attachments in the original file that do not copy over when you use this script, and I'm wondering if it has some effect on how Jellyfin/Jellyfin-Roku read the file. I've confirmed that the a2.mkv file plays fine with subtitles using VLC. It also plays fine in the Jellyfin web player (though to be fair the video gets transcoded when played in the web player).

If there's some way to get you the modified file, let me know. Otherwise hopefully you can run the ffmpeg script above and test your output.

@1hitsong
Copy link
Member

If you can, please test and see if my code changes in this PR fixes this bug.

#1608

@dathbe
Copy link
Author

dathbe commented Jan 1, 2024

Thank you for working on this.

I'm a complete noob when it comes to managing github files. But I managed to download PR 1608 using GitHub Desktop, and then I zipped those files and tried to load onto my Roku. But I got an "Install Failure: No *.brs script files found." message. Let me know what I'm doing wrong and I'll test it out.

@1hitsong
Copy link
Member

1hitsong commented Jan 2, 2024

It won't work like that. We have several build scripts that must be run to make the code executable on a Roku.

Instead, try downloading and loading the build artifact from my PR on to your device.

https://github.com/jellyfin/jellyfin-roku/actions/runs/7372766067

@dathbe
Copy link
Author

dathbe commented Jan 2, 2024

Tested. Working!

Thanks so much. Can't wait for this to get merged to the main line.

I have so much to learn about GitHub.

@1hitsong
Copy link
Member

1hitsong commented Jan 2, 2024

Fix merged into 2.0.1 release

@1hitsong 1hitsong closed this as completed Jan 2, 2024
@dathbe
Copy link
Author

dathbe commented Jan 9, 2024

I don't think this fully made it into 2.0.1. My app updated this morning, I got the update popup saying I was on 2.0.1, and my app info tells me I'm on 2.0 build 1. Yet I still cannot select subtitles. Below is a screenshot comparison between 2.0.1 and the Dev build artifact linked above. Same server, same, movie file, same TV. I've tested on two setups (a Roku TV and a Roku Stick). Same results.
compare

@dathbe
Copy link
Author

dathbe commented Jan 9, 2024

After some further testing, it seems this is an issue with the "Text Subtitles Only" option. I had enabled this feature on my production app but not the Dev version, which explains the different screenshots. So it does seem like this fix was fully integrated into 2.0.1, but for some reason the app is picking up my SRT subtitles as non-text subtitles.

There's also a (possibly related) issue where, when the SRT subtitle is turned on, the video continues playing/direct streaming seamlessly. But when the SRT subtitle is turned off, the video pauses and then restarts like it is switching from encoding to not encoding. I seem to recall seeing something about similar to this in release notes, but I can't find it now. The app reports it is "Direct Playing" whether the subtitles are displayed or not.

I'll open a new issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants