Plex UI showing phantom subtitles

server-linux

#1

In a few cases, the UI [both Web and FireTV] shows a bunch of available subtitles, but there is only one on disk. For example:

while the filesystem looks like:

The info dialog for the media item shows that is the file in question.

Here’s a more extreme case:

vs the disk:

How might a guy go about diagnosing this?


#2

Please attach the XML for the item as well as the log file set (Settings - Server - Help - Download Logs) captured approximatly 15 second after you get to the point of showing what you have displayed above.


#3

As requested.

[edit: forgot the second XML]


#4

This is why PMS is showing multiple subtitles..

They are in the file.

<Stream id="20992" streamType="2" codec="ac3" index="2" channels="6" bitrate="640" language="English" languageCode="eng" audioChannelLayout="5.1(side)" samplingRate="48000" streamIdentifier="3"/>
<Stream id="230369" key="/library/streams/230369" streamType="3" codec="srt" language="English" languageCode="eng" format="srt"/>
<Stream id="230367" key="/library/streams/230367" streamType="3" codec="srt" language="English" languageCode="eng" format="srt"/>
<Stream id="230368" key="/library/streams/230368" streamType="3" codec="srt" language="English" languageCode="eng" format="srt"/>
<Stream id="230362" key="/library/streams/230362" streamType="3" codec="srt" language="English" languageCode="eng" format="srt"/>
<Stream id="230366" key="/library/streams/230366" streamType="3" codec="srt" language="English" languageCode="eng" format="srt"/>
<Stream id="230372" key="/library/streams/230372" streamType="3" codec="srt" language="English" languageCode="eng" format="srt"/>
<Stream id="230370" key="/library/streams/230370" streamType="3" codec="srt" language="English" languageCode="eng" format="srt"/>
<Stream id="230371" key="/library/streams/230371" streamType="3" codec="srt" language="English" languageCode="eng" format="srt"/>
<Stream id="230365" key="/library/streams/230365" streamType="3" codec="srt" language="English" languageCode="eng" format="srt"/>
<Stream id="230363" key="/library/streams/230363" streamType="3" codec="srt" language="English" languageCode="eng" format="srt"/>
<Stream id="230364" key="/library/streams/230364" streamType="3" codec="srt" language="English" languageCode="eng" format="srt"/>
<Stream id="11837" key="/library/streams/11837" streamType="3" codec="srt" language="English" languageCode="eng" format="srt"/>
</Part>
</Media>
<Extras size="0"></Extras>
</Video>
</MediaContainer>

#5

Yeah, I saw that, but ffprobe and mediainfo don't show them. Any idea what might cause that?

mediainfo:

root@Pattern:/# mediainfo /mnt/user/TV/Shameless\ \(US\)/Season\ 07/Shameless\ \(US\)\ -\ S07E12\ -\ Requiem\ for\ a\ Slut\ WEBDL-1080p.m4v
General
Complete name                            : /mnt/user/TV/Shameless (US)/Season 07/Shameless (US) - S07E12 - Requiem for a Slut WEBDL-1080p.m4v
Format                                   : MPEG-4
...

Video
ID                                       : 1
Format                                   : AVC
...
Encoded date                             : UTC 1904-01-01 00:00:00
Tagged date                              : UTC 1904-01-01 00:00:00

Audio #1
ID                                       : 2
Format                                   : AAC
...
Encoded date                             : UTC 1904-01-01 00:00:00
Tagged date                              : UTC 1904-01-01 00:00:00

Audio #2
ID                                       : 3
Format                                   : AC-3
...
Encoded date                             : UTC 1904-01-01 00:00:00
Tagged date                              : UTC 1904-01-01 00:00:00

ffprobe:

root@d18999c46f6b:/$ ffprobe /tv/Shameless\ \(US\)/Season\ 07/Shameless\ \(US\)\ -\ S07E12\ -\ Requiem\ for\ a\ Slut\ WEBDL-1080p.m4v
ffprobe version 3.2.6 Copyright (c) 2007-2017 the FFmpeg developers
...
  Duration: 01:00:35.03, start: 0.000000, bitrate: 12771 kb/s
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080, 11865 kb/s, SAR 1:1 DAR 16:9, 23.98 fps, 23.98 tbr, 16k tbn, 47.95 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 254 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
    Stream #0:2(eng): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), fltp, 640 kb/s
    Metadata:
      handler_name    : SoundHandler
    Side data:
      audio service type: main

I suppose I can try deleting and replacing the file to get Plex to take a fresh look at it. This is actually the case with every file in Season 7 for this show. They all show 2 audio tracks [as shown in mediainfo/ffprobe] and 12 subtitle tracks, and mediainfo/ffprobe output looks the same for all of them; they all have a single srt in the directory.

Season 6 files show one subtitle in the UI. There is a single srt file in the directory:

root@d18999c46f6b:/$ ls /tv/Shameless\ \(US\)/Season\ 06/
...
'Shameless (US) - S06E12 - Familia Supra Gallegorious Omnia! Bluray-720p.en.srt'
'Shameless (US) - S06E12 - Familia Supra Gallegorious Omnia! Bluray-720p.m4v'

and in this case ffprobe even shows a subtitle track that isn't in the UI:

root@d18999c46f6b:/$ ffprobe /tv/Shameless\ \(US\)/Season\ 06/Shameless\ \(US\)\ -\ S06E12\ -\ Familia\ Supra\ Gallegorious\ Omnia\!\ Bluray-720p.m4v
ffprobe version 3.2.6 Copyright (c) 2007-2017 the FFmpeg developers
...
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/tv/Shameless (US)/Season 06/Shameless (US) - S06E12 - Familia Supra Gallegorious Omnia! Bluray-720p.m4v':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf57.60.100
  Duration: 00:56:27.33, start: 0.000000, bitrate: 6103 kb/s
...
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 5196 kb/s, 23.98 fps, 23.98 tbr, 16k tbn, 47.95 tbc (default)
    Metadata:
      handler_name    : VideoHandler
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 255 kb/s (default)
    Metadata:
      handler_name    : SoundHandler
    Stream #0:2(eng): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), fltp, 640 kb/s
    Metadata:
      handler_name    : SoundHandler
    Side data:
      audio service type: main
    Stream #0:3(eng): Data: bin_data (text / 0x74786574)
    Metadata:
      handler_name    : SubtitleHandler
Unsupported codec with id 100359 for input stream 3

Any idea where Plex might be getting the idea that those files contain 12 subtitles?


#6

Looking at your output makes me think that stream decode processing stopped when it hit the Unsupported codec with id 100359 for input stream 3.
My first thought seeing this is there's a bad codec ID in the file (not uncommon).

I suggest MkvMerge-gui (part of the mkvtoolnix package). it will show you everything in much better detail.

From there, you have a few choices.

a) remux the file and output to MKV (which does save space over MP4) and makes it very easy to control the file's metadata attributes without actually re-encoding the stream and thereby losing more quality
b) Re-encode through handbrake and lose some of the quality (not much if you turn up the bit rate but you'll end up with a larger file in most cases )


#7

Thanks; I'll poke around at it. I actually convert everything to m4v using the sickbeard-mp4-converter because those direct-play on the majority of the clients my users use. It seems that any MKV file always transcodes on the FireTV, AppleTV, and Roku clients that represent 98% of the plays on my server. I got periodic questions about why the stream would stop to buffer every so often until I started converting everything to m4v.

Something must have gone sideways recently, though, since this dozen-copies-of-the-same-wrong-subtitle thing is a recent development.

Thanks for the help!