I am incurring in a weird problem I noticed only when I started using Infuse outside of my home.
I have been downloading .srt subtitles for all my movies since forever, renamed them as the video file, and never had an issue. (I am using Jellyfin to serve content btw).
So when I use Infuse inside my local network (no matter the client), I have always been able to use all of my external .srt subtitles. But as soon as I connect to my server over the internet, all of my .srt files disappear inside Infuse (no matter the client).
I performed the ultimate test with my phone, while using my home wifi I started playing some random movie and .srt subs were selectable and working; then disabled wifi, closed and reopened the app, played same movie, and .srt subs disappeared from the playback menu (gear icon → subtitles), they did not even show up in the list.
Also, very important, this behavior isn’t affected by transcoding or direct play, as soon as I leave my home network external subtitles stop showing up in the list no matter how the video is delivered.
So I am at a loss here, I browsed the forum for a similar problem, and the only info I gathered is that .srt files don’t work over DLNA or UPNP, but I believe this is not the case (also cause I have DLNA explicitly disabled in Jellyfin). This problem I am having is tied specifically to streaming over the internet, and I am not sure why it’s not working.
hey sorry, but I haven’t received any notifications via email, I am just checking the forum now.
Thanks for replying, here are the answers:
nope, I tried both direct play and transcoding, and the subtitles don’t show up in both cases when outside my local network.
connection is good, it’s FTTH @ 1gbit/100mbit. I can stream basically anything with Direct Play
subtitle files don’t show up in either case (remotely and locally). when I use Settings → Add Files and then browse my server, it only shows the video files, with their date and size, and the download icon. No other files are shown there (and I have usually many metadata files inside my folders, like Jellyfin .nfo files, images and of course .srt files).
I should have added “short of remuxing external subtitles” lol. yeah, I could do that, but shouldn’t external subtitles work? it is an advertised feature, so I am seeing this as a bug. maybe this is not the place to file bugs, but I don’t know a better place.
I already tried with different clients, the problem is with Infuse when streaming over the internet. Locally, everything works with Infuse. I tested on iOS, tvOS and on the webUI, with my account and other accounts. As soon as I switch over the internet, external subtitles disappear and I am pretty sure it shouldn’t do that.
Also, I want to reassure my setup is not the cause here, because external subtitles work perfectly over the internet when using other clients (Swiftfin, Jellyfin Media Player, etc…). So filenames, permissions, sub type etc… are all perfect. I use Bazaar to automate subtitles downloading, and never had an issue.
But the moment I connect to any other network that’s not my local network, external subtitles disappear in Infuse. Pretty easy to reproduce as well, just switch from Wi-Fi to 4g/5g while streaming on your smartphone and you can see what I mean.
So, I hope my thread makes Firecore look into the issue cause it’s a big nuisance to me and possibly others.
hello @james sorry to bother you, but this problem is still present.
I am on the beta version, and I make sure to test every new version to see if this is fixed.
Have you been able to reproduce it on your end?
We’ve been looking into this, and it appears to be an environment-specific issue.
Our tests show external subtitles are available when streaming outside the local network. However, in your logs the subtitles stream failed to open because the HTTP response lacks the required header ‘Content-Length’.
The most likely explanation for this is that the subtitles are coming from Cloudflare, which might not send these headers with on-the-fly compression.
It’s hard to recommend something without direct access to the environment, but theoretically setting headers in the data source might help, but we don’t have extensive experience with the quirks of using Cloudflare.
hey James, thank you for looking into it and for your detailed response, because you put me on the right track for solving this!
Basically, after understanding this was related to response headers, I tried one last thing before going down the rabbit hole of manually modifying the headers in the Cloudflare DNS control panel: I disabled the Proxy offered by Cloudflare for DDoS protection I had set up on the jellyfin domain.
after disabling the proxy, external subtitles now work!
ofc the better answer would be to make it work while proxied, but this is another issue, and related to CloudFlare settings.
thanks again for the support, especially considering this was an edge case.