jellyfin / jellyfin-expo

Jellyfin Mobile for iOS
https://jellyfin.org
Mozilla Public License 2.0
327 stars 67 forks source link

Duplicate subtitles iOS #98

Open AlfHou opened 4 years ago

AlfHou commented 4 years ago

Just downloaded the app (1.1.1) on my iPhone 6s (13.4.1) and when watching a tv show with multiple subtitles both subtitles show at the same time: image

This happens on multiple episodes of the show (Halt And Catch Fire) but not on other tv shows with multiple subtitle options.

image

thornbill commented 4 years ago

What version is the Jellyfin server you are connecting to? I recall seeing this before but thought it had been fixed in jellyfin-web.

AlfHou commented 4 years ago

I am running this docker container which is running this verison: Jellyfin.Server 10.5.5.0.

Did some more research, and it might be related to this bug?

thornbill commented 4 years ago

The Android TV issue is unrelated.

I did a preliminary search in jellyfin-web but didn’t find an issue for it there.

AlfHou commented 4 years ago

I see! Let me know if there is any more info I should provide

FrankP34 commented 4 years ago

I have double subtitles like above on all my movies viewed on my iOS devices (iPhone or iPad). I cannot disable them. The subtitles were added using handbrake and are all cc utf-8 format taken from the ripped dvd or added as srt files using handbrake. I only have the issue using the iOS version of the client. It works fine using the Roku version of the jellyfin app. They also work fine using my LG TV's DLNA media player. My jellyfin server is:

jellyfin-ffmpeg/unknown,now 4.3.1-1-focal amd64 [installed,automatic] jellyfin-server/unknown,now 10.6.4-1 amd64 [installed,automatic] jellyfin-web/unknown,now 10.6.4-1 all [installed,automatic] jellyfin/unknown,now 10.6.4-1 all [installed]

running on ubuntu 20.04

mueslimak3r commented 3 years ago

Bump. I'm still having this version with server 10.7.6 and the latest stable iOS app from the app store (iphone and ipad)

thornbill commented 3 years ago

Does this happen in the native player also? Or only the default player?

mueslimak3r commented 3 years ago

Does this happen in the native player also? Or only the default player?

Yes it does happen in both. Additionally, disabling subtitles may remove one of the subtitles displayed but not both. I'm not 100% sure about the specifics of that since I don't have my iOS device with me

FrankP34 commented 3 years ago

Hi, I’m using the jellyfin App for iOS. Jellyfin Mobile (iOS) 1.4.1 (5.4.1.0) Expo version: 39.0.0

I’m definitely a newbie to all this and until I got your email didn’t know there were different players. I finally found the Playback options under settings and switched on Use Native Video Player[BETA]. Subtitles now appear to be working correctly! So, I guess, I was using the default player till now.

Please let me know if I can help further. I’m definitely a fan of jellyfin and am amazed by its features and the range of devices supported. I also use it via Roku and via the browser app on my LG TV. Recently though I’ve noticed the subtitles disappear when watching movies with the browser app on the LG TV. If I pop up the player controls, I.e. showing the player time position, they come back on. This happens every 5 seconds or so.

Thanks, Frank

Sent from my iPad

On Aug 31, 2021, at 12:12 AM, Bill Thornton @.***> wrote:  Does this happen in the native player also? Or only the default player?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

gummykage commented 3 years ago

Here's my case, I have a mkv file when streamed causes "Remuxing" as the transport and the subtitles always trail about 1 second behind. The MKV plays fine on desktops.

So I used ffmpeg to convert the mkv to mp4: ffmpeg -i mymovie.mkv -vcodec copy -acodec copy -scodec mov_text mymovie.mp4 (No Transcoding just conversion of SRT subtitles to mov_text (timed text))

This creates a mp4 file where the movie plays as "Direct play" but subtitles now double up exactly as everyone else sees it. One of the subtitles always seems to change format after displayed where it will show a subtitle and resize it on the fly.

I decided to redo this using ffmepg again copying the video and audio streams to a new mp4 without the subtitles: ffmpeg -i mymovie.mkv -vcodec copy -acodec copy mymovie.mp4

Then I extracted the srt subs with "gMKVExtractGUI" and I added them as Mymovie.srt

Dashboard -> Scan all libraries.

Now the subtitles are on time and display but depending on client:

Windows 10 using Latest Chrome - Direct Play, Subtitles Displayed properly and on time Jellyfin official App from appstore - Direct Play, Subtitles Displayed properly and on time ios 13.5 Safari - Direct Play, Subtitles Displayed on time but format keeps moving, and the previous subtitle shows up for half a second before the next subtitle displays and then resized. It's an eye sore to watch.

angelfor3v3r commented 3 years ago

Not only do I get Double Subtitles I also get subtitles where it displays the last subtitle text but it’s displayed only for a few frames before the current subtitle text shows. It makes reading subtitles very difficult because the previous text is shown for a very short time.

I’m on the latest software versions (at the time of this comment) and on iOS 14.8.

The “Native Player” option does seem to fix most of these issues.

MickeyI04 commented 1 year ago

I am getting duplicate subtitles on the current iOS version on both the web client and app. This happens with the use of SRT subtitles and using direct-play, when I set the quality low so it has to transcode, the duplicate subtitle goes away.

mnoah66 commented 1 year ago

I am experiencing the same issue as @MickeyI04 . Turning CC off in the movie does not turn one or both duplicates off. I have to go back to the movie menu to turn off subtitles but then one set of subtitles still appears.

foss- commented 1 year ago

Also seeing double subtitles despite having subtitles set to off.

iPadOS: 16.2 Jellyfin-Expo: 1.5.0

lloeki commented 1 year ago

This also applies playing from Safari on macOS.

Inspecting the page shows that there's duplicate HTML in the shadow content element presumably originating from Safari.

It seems like when it's playing via direct play it picks up the embedded subtitles and chooses do display them anyway? So if you select one it will display both the one you picked and the one from direct play.

Screenshot 2023-02-08 at 21 52 19
Orbitally commented 1 year ago

Just thought I'd jump in to say that I'm running into the same issue

lloeki commented 1 year ago

Currently there are two situations:

The former may exhibit the issue when subtitles are embedded in the file, the latter shows no such subtitles.

I would bet that if there was a transcoding option to force only remuxing† the issue would probably vanish.

Burning in subtitles solves it (wastefully) mostly because it needs transcoding, which forces remuxing, which strips away the embedded subtitles.

† Something akin to ffmpeg -i orig.mp4 -c:v copy -c:a copy bar.mp4, that losslessly copies the audio track and video track selected for play and muxes them together in a new container, stripping away the embedded subtitles.