Add support for CC (Closed Captions)

My films play PERFECTLY in QuickTime, subtitles and all.

However, in Plex, the subtitle menu gets ludicrously complex to navigate, and none of them actually work.

I’ve tried opensubtitles.org (inaccurate/way off the mark). I’ve tried various conversion programs to extract .srt files, which either don’t work properly or give poor results.

What I’d like to see is essentially QuickTime quality, versatility and reliability in the Plex player. Plex should be able to read the CC already embedded in the file and play it back without the need for us to faff around with re-coding, exporting, creating additional files or adjusting settings using trial and error.

No more frustration/wasted time trying to get it right/figure it out ourselves.

It should just work. As is. Out of the box. Add file to server. Play. End of.

what subtitles are you having issues with? I’ve never had an issue plex and subtitles, either in the file or as an external .ass/.srt etc.

Literally all closed caption subtitles. All of them. On all of my films.

I know I’m not supposed to, but I remove DRM for films I’ve purchased (because I’ve actually bought them and feel I should be able to watch them however I like!) via iTunes using M4VGear, which ONLY removes the DRM from the film, and does so flawlessly. This leaves me with a flawless HD film with built in closed captions, which plays absolutely perfectly using CC-compatible software like QuickTime.

But when playing these films back in Plex I get a HUGE list of available subtitles (different to the compact list I see in QuickTime) and none of them actually work. Only a couple of them actually show anything at all, and it’s usually just a few phrases of gibberish and then it stops working altogether.

Plex doesn’t offer support for CC. If you’ve never had issues, congratulations! Your files are obviously very different to mine… From what I understand Plex currently requires inbuilt srt (or other compatible non-cc) subtitles, or external srt files (either created as an additional file, or sourced from elsewhere on the internet) in order to process subtitles correctly.

My files don’t use those, because they have CC, which is (in my opinion) superior. SRT is a much more basic technology.

Hence my suggestion that the player get an upgrade :stuck_out_tongue:

I haven’t heard of a special subtitle format called ‘closed captions’.
Although I cannot proof that this is not ‘a thing’. :slight_smile:

I do however know of subtitles which are of the type closed captions.
These can be in any format, e.g. TX3G, VOBSUB, PGS, ASS etc pp…

To get a hint what subtitle format you have, a complete mediainfo of a file with these subtitles would be useful.
download mediainfo here
(pay attention during installation, it comes with a ‘piggybacked’ installer which asks to install additional crapware. Make sure to set/clear the right checkboxes!)

Once it is installed, analyse the file, then go to:
File - Export - Text (Advanced mode)

Later the developers would also need a sample file with embedded subtitles.

Thanks for the advice!

Have downloaded and installed mediainfo, and analysed one of my film purchases.

Subtitle format seems to be either TX3G or c608 (which I’m fairly certain is a closed caption file type).

Full text file below:

General
Complete name : /Volumes/Jon_Ext/Media/Films/Conversions/Doctor Strange (2016).mp4
Format : MPEG-4
Format profile : Base Media / Version 2
Codec ID : mp42 (mp42/isom)
File size : 4.35 GiB
Duration : 1h 55mn
Overall bit rate mode : Variable
Overall bit rate : 5 386 Kbps
Movie name : Doctor Strange (2016)
Performer : Scott Derrickson
Performer/Sorted by : Scott Derrickson
Director : Scott Derrickson
Actor : Benedict Cumberbatch / Chiwetel Ejiofor / Rachel McAdams / Benedict Wong / Michael Stuhlbarg / Benjamin Bratt / Scott Adkins / Mads Mikkelsen / Tilda Swinton / Zara Phythian / Alaa Safi / Katrina Durden / Topo Wresniwiro / Umit Ulgen / Linda Duan / Mark Anthony Brighton / Meera Syal / Amy Landecker / Adam Pelta-Pauls / Sarah Malin / Eben Young / Kobna Holdbrook-Smith / Elizabeth Healey / Guillaume Faure / Daniel Dow / Stan Lee / Ezra Khan / Kimberly Van Luin / Pat Kiernan
Screenplay by : Scott Derrickson / Jon Spaihts / C. Robert Cargill
Producer : Kevin Feige
Production studio : Marvel
Genre : Action & Adventure
ContentType : Short Film
Description : From Marvel comes Doctor Strange, the story of world-famous neurosurgeon Dr. Stephen Strange, whose
Recorded date : UTC 2017-02-28 08:00:00
Encoded date : UTC 2017-02-15 17:33:27
Tagged date : UTC 2017-02-15 19:13:00
Copyright : © 2016 Marvel
Cover : Yes
Rating : None
Title/Sort : Doctor Strange (2016)
LongDescription : From Marvel comes Doctor Strange, the story of world-famous neurosurgeon Dr. Stephen Strange, whose life changes forever after a horrific car accident robs him of the use of his hands. When traditional medicine fails him, he is forced to look for healing, and hope, in an unlikely place – a mysterious enclave known as Kamar-Taj. He quickly learns that this is not just a center for healing but also the front line of a battle against unseen dark forces bent on destroying our reality. Before long Strange – armed with newly acquired magical powers – is forced to choose whether to return to his old life or leave it all behind to defend the world as the most powerful sorcerer in existence.
PurchaseDate : 2017-02-15 16:37:39
AppleStoreCountry : United States
AppleStoreCatalogID : 1164294784
GenreID : 4401
ContentRating : mpaa|PG-13|300|for sci-fi violence and action throughout, and an intense crash sequence.

Video
ID : 6
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L4
Format settings, CABAC : Yes
Format settings, ReFrames : 2 frames
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 1h 55mn
Bit rate mode : Variable
Bit rate : 4 501 Kbps
Maximum bit rate : 768 Kbps
Width : 1 920 pixels
Height : 804 pixels
Display aspect ratio : 2.40:1
Frame rate mode : Variable
Frame rate : 23.976 fps
Minimum frame rate : 23.077 fps
Maximum frame rate : 35.294 fps
Original frame rate : 25.000 fps
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.122
Stream size : 3.63 GiB (84%)
Language : English
Encoded date : UTC 2017-02-15 18:07:50
Tagged date : UTC 2017-02-15 19:12:35

Audio #1
ID : 1
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 1h 54mn
Bit rate mode : Variable
Bit rate : 124 Kbps
Maximum bit rate : 215 Kbps
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 48.0 KHz
Frame rate : 46.875 fps (1024 spf)
Compression mode : Lossy
Stream size : 102 MiB (2%)
Language : English
Default : Yes
Alternate group : 1
Encoded date : UTC 2017-02-15 17:33:28
Tagged date : UTC 2017-02-15 17:40:35
Menus : 14

Audio #2
ID : 2
Format : AC-3
Format/Info : Audio Coding 3
Mode extension : CM (complete main)
Format settings, Endianness : Big
Codec ID : ac-3
Duration : 1h 54mn
Bit rate mode : Constant
Bit rate : 384 Kbps
Channel(s) : 6 channels
Channel positions : Front: L C R, Side: L R, LFE
Sampling rate : 48.0 KHz
Frame rate : 31.250 fps (1536 spf)
Bit depth : 16 bits
Compression mode : Lossy
Stream size : 316 MiB (7%)
Language : English
Default : No
Alternate group : 1
Encoded date : UTC 2017-02-15 17:40:36
Tagged date : UTC 2017-02-15 17:46:13

Audio #3
ID : 3
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 1h 54mn
Bit rate mode : Variable
Bit rate : 125 Kbps
Maximum bit rate : 197 Kbps
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 48.0 KHz
Frame rate : 46.875 fps (1024 spf)
Compression mode : Lossy
Stream size : 103 MiB (2%)
Language : French
Default : No
Alternate group : 1
Encoded date : UTC 2017-02-15 17:46:14
Tagged date : UTC 2017-02-15 17:53:21

Audio #4
ID : 4
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 1h 54mn
Bit rate mode : Variable
Bit rate : 124 Kbps
Maximum bit rate : 212 Kbps
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 48.0 KHz
Frame rate : 46.875 fps (1024 spf)
Compression mode : Lossy
Stream size : 102 MiB (2%)
Language : Spanish
Default : No
Alternate group : 1
Encoded date : UTC 2017-02-15 17:53:22
Tagged date : UTC 2017-02-15 18:00:34

Audio #5
ID : 5
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 1h 54mn
Bit rate mode : Variable
Bit rate : 123 Kbps
Maximum bit rate : 210 Kbps
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 48.0 KHz
Frame rate : 46.875 fps (1024 spf)
Compression mode : Lossy
Stream size : 101 MiB (2%)
Language : English
Default : No
Alternate group : 1
Encoded date : UTC 2017-02-15 18:00:35
Tagged date : UTC 2017-02-15 18:07:49
tagc : public.accessibility.describes-video

Text #1
ID : 7
Format : Timed Text
Muxing mode : sbtl
Codec ID : tx3g
Duration : 1h 54mn
Bit rate mode : Variable
Bit rate : 2 bps
Stream size : 1.47 KiB (0%)
Language : French
Default : Yes
Forced : No
Alternate group : 2
Encoded date : UTC 2017-02-15 19:12:35
Tagged date : UTC 2017-02-15 19:12:35

Text #2
ID : 8
Format : Timed Text
Muxing mode : sbtl
Codec ID : tx3g
Duration : 1h 54mn
Bit rate mode : Variable
Bit rate : 86 bps
Stream size : 72.3 KiB (0%)
Language : French
Default : No
Forced : No
Alternate group : 2
Encoded date : UTC 2017-02-15 19:12:36
Tagged date : UTC 2017-02-15 19:12:40
Forced Alternative : 7

Text #3
ID : 9
Format : Timed Text
Muxing mode : sbtl
Codec ID : tx3g
Duration : 1h 54mn
Bit rate mode : Variable
Bit rate : 0 bps
Stream size : 177 Bytes (0%)
Language : Spanish
Default : No
Forced : No
Alternate group : 2
Encoded date : UTC 2017-02-15 19:12:41
Tagged date : UTC 2017-02-15 19:12:41

Text #4
ID : 10
Format : Timed Text
Muxing mode : sbtl
Codec ID : tx3g
Duration : 1h 54mn
Bit rate mode : Variable
Bit rate : 82 bps
Stream size : 68.9 KiB (0%)
Language : Spanish
Default : No
Forced : No
Alternate group : 2
Encoded date : UTC 2017-02-15 19:12:41
Tagged date : UTC 2017-02-15 19:12:45
Forced Alternative : 9

Text #5
ID : 11
Format : Timed Text
Muxing mode : sbtl
Codec ID : tx3g
Duration : 1h 54mn
Bit rate mode : Variable
Bit rate : 81 bps
Stream size : 68.0 KiB (0%)
Language : English
Default : No
Forced : No
Alternate group : 2
Encoded date : UTC 2017-02-15 19:12:46
Tagged date : UTC 2017-02-15 19:12:50

Text #6
ID : 12
Format : Timed Text
Muxing mode : sbtl
Codec ID : tx3g
Duration : 1h 54mn
Bit rate mode : Variable
Bit rate : 82 bps
Stream size : 68.6 KiB (0%)
Language : Portuguese
Default : No
Forced : No
Alternate group : 2
Encoded date : UTC 2017-02-15 19:12:51
Tagged date : UTC 2017-02-15 19:12:54

Text #7
ID : 13-CC1
Format : EIA-608
Muxing mode : Final Cut
Codec ID : c608
Duration : 1h 54mn
Bit rate mode : Constant
Stream size : 0.00 Byte (0%)
Language : English
Default : No
Forced : No
Alternate group : 2
Encoded date : UTC 2017-02-15 19:12:55
Tagged date : UTC 2017-02-15 19:12:59
CaptionServiceName : CC1

Menu
ID : 14
Codec ID : text
Duration : 1h 55mn
Encoded date : UTC 2017-02-15 19:13:00
Tagged date : UTC 2017-02-15 19:13:00
Menu For : 1
00:00:00.000 : Prologue
00:04:34.000 : The Good Doctor
00:10:17.000 : Medicine And Mania
00:18:32.000 : Kamar-Taj
00:24:37.000 : Open Your Eye
00:31:40.000 : The Mystic Arts
00:38:33.000 : Surrender
00:43:16.000 : Infinite Dangers
00:48:24.000 : Eye Of Agamotto
00:55:34.000 : Sanctum Siege
01:05:04.000 : Astral Battle
01:12:38.000 : Manhattan Mirror Dimension
01:22:14.000 : It’s Not About You
01:28:28.000 : Defending Hong Kong
01:35:01.000 : The Dark Dimension
01:45:06.000 : End Credits
Bit rate mode : VBR

I guess the one you are after is the last subtitle stream: EIA-608

Notice that support for that is very rare in the opensource world.
I think only very few or even none of the playback software now used in Plex clients is able to play these natively.

Apparently there was some support for EIA-608 ‘baked’ into ffmpeg, but this means that you at least need a server that is fast enough for video transcoding, so these subtitles can be ‘burned’ into the video picture.

I found a file online that claims to have EIA-608 subtitles in it. I was able to select them. But upon playback I saw only garbage.
I very much like to get my hands on a file with confirmed working subtitles.
Do you have a sample file one for me to pass on to the developers?
You can send me a download link per PM.

It is, yeah. That said, none of the TX3G subtitles work for me, either.

I’ll PM you with a download link now. If you play it back in QuickTime you’ll see what I mean. Subtitles work flawlessly there.

Thanks for your help!
Jon

I would suggest CC Extractor to get the subtitles. I use it when ripping older DVD’s that specifically say “Closed Captions” with the CC logo on the cover, as opposed to “Subtitles” Very quick extraction and conversion to standard srt files with a little configuration. It might be a “windows” only program, but it is open source.

The website is here,
https://www.ccextractor.org/start
they have several samples to test with
https://www.ccextractor.org/public:general:tvsamples
(@OttoKerner - maybe one of these would work)

@leelynds said:
I would suggest CC Extractor to get the subtitles.

Interesting!
Maybe it’s possible to turn this into an automatic script which “treats” all new content.

Good suggestion. Thank you.

I did download CC Extractor to try, at the same time as I did MCEBuddy.

I may give it a try. It just seemed like such a ball ache - working with the command line interface, figuring out all the various export settings etc - for something that (in my opinion) should work out of the box.

MCEBuddy was supposed to be able to do the same thing: extract the subtitles to a separate .srt file. And that failed miserably, after about 5 wasted hours trying to get it to work.

Still no solution to this… some worked intermittently for a while, perhaps while someone was experimenting on the back end, but have since gone back to not working at all.

Any updates on compatibility?

Okay… almost three months on and still no reply/support. Considering I’m paying for this “service” it’s a bit of a joke! XD

Still no support for embedded CC.

I was just trying to watch the latest Planet of the Apes, and there are no subtitles appearing for any of the sign language, making it unwatchable.

Plays PERFECTLY. FLAWLESSLY in QuickTime player on my Mac (playing the file directly). Sign language subtitles are there. Other subtitles appear when selected. Absolutely perfect.

Just not on Plex…

This is an issue that’s spanned YEARS now… and still no solution.

The devs seem determined to create as many new features as possible, but none of the old/basic/core/essential stuff ever seems to get fixed or addressed…

I’m in the midst of spinning up Kodi/Emby etc to test them out, because it’s beyond ridiculous at this point…

@jonwatson87 said:
Okay… almost three months on and still no reply/support. Considering I’m paying for this “service” it’s a bit of a joke! XD

Still no support for embedded CC.
PM me a link to a file you can provide with the EIA-608 track in it and let me see what I can do for you. I’ve been able to pull and convert different CC/subtitle formats so I’ll give it a shot for you.

Carlo

@jonwatson87 said:
Still no support for embedded CC.
Are you actually using closed captions or subtitles? These are not the same things. Plex supports subtitles. Closed captions are supported on some clients.

If you are not sure, please provide the XML for the movie you were trying.

Early 2021 clean-up: implemented