plexinc / plex-media-player

Next generation Plex Desktop/Embedded Client
GNU General Public License v2.0
1.16k stars 168 forks source link

player:Subtitles derived from EIA-608 captions won't display automatically #808

Open gizmotronic opened 5 years ago

gizmotronic commented 5 years ago

Test environment

PMS Version: 1.14.0.5470 PMP Version: 3.77.2 Platform (Windows/OSX/Embedded): OSX

Steps to reproduce

  1. Find or create a recording that includes subtitles derived from EIA-608 captions
    • My recordings are identified with an unknown subtitle language, which seems to be normal for OTA
  2. In Plex Server settings, ensure the following Language settings are selected:
    • "Automatically select audio and subtitle tracks" is checked
    • Prefer audio tracks in English
    • Subtitle mode Always enabled
    • Prefer subtitles in English
  3. Start playback of the recording

Current behavior

  1. When playback starts, notice that player settings indicated that subtitles are turned on, but no subtitles are displayed
  2. Change subtitles to None, and without closing the panel, select the EIA-608 subtitles; notice that they immediately start displaying

Expected behavior

  1. Subtitles should automatically start displaying on playback

The iOS and Apple TV apps work as expected.

I'm using an HDHomeRun CONNECT Quatro, in case it matters.

mseeley commented 5 years ago

Hi @gizmotronic, adding some notes from an internal issue:

When a program with Closed Captioning is recorded the resulting file can be played back, but the subtitles are not displayed. If the web client forcibly tells PMS to burn the subtitles they are visible, but otherwise they do not display (with a burn level of never). During Live TV playback the subs are correctly burned into the video. Example video: https://drive.google.com/open?id=13aWXP7a4tpy3VwVZa4qixNMoJIioQB1L

gizmotronic commented 5 years ago

One additional bit of information that seems important is that I'm currently set up to automatically transcode to H.264 while recording. This is mainly so that I can use Direct Play/Direct Stream with the Apple TV and iOS clients. However, before I made that change, I seemed to be having no trouble with subtitles. I didn't notice the issue I'm reporting until recently, when I started using PMP in another room as a second "television".

To be absolutely clear, I'm not having problems with subtitles displaying in general - the only issue is that PMP needs an extra step to get them to display, using the same recordings that work without any issue on the iOS and Apple TV clients. They can be toggled on and off without needing a video transcode for all of my clients and don't appear to be burned in at all (unless I force a transcode).

The example video of course behaves the same way I've described with PMP: subtitles have to be turned off and back on before they start to display. However, unlike with my own recordings, I wasn't able to make them display on iOS no matter what I did, even with transcoding. I can test the Apple TV tomorrow, if that's helpful. [Update: the example video won't display captures on the Apple TV, either.]

klamouri commented 5 years ago

Hi, I can confirm the issue with the Apple TV and the iOS app when they use the new enhanced player. The subtitles are showing automatically only if the stream is being transcoded (at least transcoded to 720p). When the video is set to direct stream I have to disable the subs and enabled them back. Once this is done they'll start showing

gizmotronic commented 5 years ago

Hi, I can confirm the issue with the Apple TV and the iOS app when they use the new enhanced player.

This sounds like a similar, but different problem. I'm not using the enhanced player on iOS or Apple TV, and subtitles work fine.

klamouri commented 5 years ago

From my understanding, the iOS enhanced player and the Plex Media Player Desktop app are both using MPV so I wouldn't be surprised if this issue is related to MPV

mseeley commented 5 years ago

When the video is set to direct stream I have to disable the subs and enabled them back. Once this is done they'll start showing

It's super curious that both PMP and the iOS enhanced player behave the same. The MPV version used in iOS' player is from September of this year while the one in PMP is older.

So odd that the subtitles do display but only after toggling.

gizmotronic commented 5 years ago

@klamouri Got it - I wasn't aware of the connection. Thanks for clarifying.

Subtitles in this example snippet of a DVR recording from my system display properly with the default iOS and Apple TV players. Subtitles have to be toggled to be displayed with the enhanced players and with PMP.

(Fun fact: the example video metadata indicates that the second audio track is in Spanish, but it's actually English descriptive audio.)

gizmotronic commented 4 years ago

Possibly related: mpv-player/mpv#6376

gizmotronic commented 4 years ago

At this point, on all of the platforms I can test with, the default player behaves the same way: captions don't display by default, and toggling is an effective workaround.

gizmotronic commented 3 years ago

The mpv issue is closed and the fix was included in mpv 0.31.0. However, this problem remains on at least the macOS client, which apparently uses mpv 0.32.0.

The workaround is still effective.

gizmotronic commented 2 years ago

Update, August 2021: I'm only using Plex regularly on iOS and tvOS. On those platforms, this continues to be a problem and the workaround continues to be effective.