DVR does not record Subtitles after linux server update

Server Version#: 1.41.4.9463
Player Version#: 1.108.1.307-dd5b87aa
Tuner Make/Model: HDHomerun Quattro
Guide/Lineup name: FBI/Law n Order
Using XMLTV?: no
Channel number/Name: CBS/NBC/Any other
<If providing server logs please do NOT turn on verbose logging, only debug logging should be enabled>

I updated my server and I no longer can record Over The Air subtitles. What I now get are choices of 3 public domain sources of subtitles which I didn’t get before. They are never synchronized even if I have my server settings set to auto-sync when recording but that doesn’t seem to work either. What to do here?

I can get subtitles over the air if I record the same show using my HDHomerun DVR. which leads me to believe that the problem is with the server. When things worked, I used to get subtitles over the air and Plex called them “Unknown Caption” Everything worked fine when I got those. I no longer get them.

It is not my Roku player because the HD app works fine on it. It is not my TV, it is not my tuner and I have tried Plex players on at least 3 platforms.

I read all of the release documents and discovered that about 5 releases ago someone was reworking subtitles to enable/fix Chinese subtitle issues. I think whoever did this work re-engineered something that broke what worked before. I need to roll back to a prior version.

I have an older version of the server in my downloads from March last year that I can install. I am hesitating because I could really screw up my installation by doing that. I would only need to roll back my installation about 3 releases back to get it back to where it was when it was working. If you read this and can tell me where I can get an archive I would really appreciate it. With Plex, it is a one way ticket, they don’t have a public archive just in case. I have learned a lesson this time and I will begin saving software packages because I got in trouble with this new release.

We really need this fixed because we live off of subtitles due to hearing disabilities.

Can you post the XML info for such an episode?

Do you perform any sort of post-processing, including Plex’s own ad detection, or a post-processing script?

I ask because PMS doesn’t really do anything to the stream it receives from the tuner other than write it to disk as a transport stream (.ts) file.

Yeah, definitely don’t do that.

I do not do any post processing on anything. I do have the server do ad detection. That has always been that way.

Where do I find the XML info file? I will go and figure it out and post it if I find it.

Update: I searched for an XML.info file on my disk drives. could not find any. Can you be a bit more specific?

Well I came empty on the xml info file I am supposed to post. grep’ed my whole machine ten ways to Sunday to figure out where everything is to see if I can find it.

Notice how xml info changed color in your post, it is now a url that takes you to a support page with instructions.

Yep, I should have been more clear. But just to be explicit:

https://support.plex.tv/hc/en-us/articles/201998867-Investigate-Media-Information-and-Formats

Sorry about missing the link, this web site is very pretty: Ok, I have the xml you requested, I hope it stays together well enough to read it:

<MediaContainer size="1" allowSync="1" identifier="com.plexapp.plugins.library" librarySectionID="8" librarySectionTitle="DVR" librarySectionUUID="b7622b27-c3bd-406e-861b-d210b0c3fcaf" mediaTagPrefix="/system/bundle/media/flags/" mediaTagVersion="1738863612">
<Video ratingKey="14393" key="/library/metadata/14393" skipParent="1" grandparentRatingKey="14391" guid="plex://episode/67583620dfd49bd981c403c2" parentGuid="plex://season/5fc6aa011a65df002dd565f0" grandparentGuid="plex://show/5fc6aa011a65df002dd565f0" type="episode" title="Pompeii's Secret Underworld" grandparentKey="/library/metadata/14391" librarySectionTitle="DVR" librarySectionID="8" librarySectionKey="/library/sections/8" grandparentTitle="NOVA" parentTitle="Season 52" contentRating="TV-PG" summary="Archaeologists uncover new truths about Pompeii, a wealthy Roman playground with dark secrets." index="5" parentIndex="52" viewOffset="263000" lastViewedAt="1740450767" lastRatedAt="0" year="2025" thumb="/library/metadata/14393/thumb/1740024065" art="/library/metadata/14393/art/1740024065" parentThumb="/library/metadata/14392/thumb/1740024064" grandparentThumb="/library/metadata/14391/thumb/1740024064" grandparentArt="/library/metadata/14391/art/1740024064" duration="3718752" originallyAvailableAt="2025-02-19" addedAt="1740024061" updatedAt="1740024065" oneShot="1">
<Media id="13703" duration="3718752" bitrate="19745" width="1920" height="1080" aspectRatio="1.78" audioChannels="2" audioCodec="ac3" videoCodec="h264" videoResolution="1080" container="mpegts" videoFrameRate="NTSC" channelIdentifier="5fc76bd22f220e002d6d5352-5fc705f24c4901002fec409a" mediaGrabBeginsAt="1740020400" mediaGrabDevice="device://tv.plex.grabbers.hdhomerun/10B0CF35" mediaGrabStatus="complete" origin="dvr" videoProfile="high" hasVoiceActivity="0">
<Part accessible="1" exists="1" id="14143" key="/library/parts/14143/1740024061/file.ts" duration="3718752" file="/media/ron/drive1/PlexLib/TV/NOVA (1974)/Season 52/NOVA (1974) - S52E05 - Pompeii's Secret Underworld.ts" size="9409497384" container="mpegts" deepAnalysisVersion="6" packetLength="188" requiredBandwidths="21672,19995,19915,19880,19880,19880,19880,19880" videoProfile="high">
<Stream id="19544" streamType="1" codec="h264" index="0" bitrate="19553" bitDepth="8" chromaLocation="left" chromaSubsampling="4:2:0" codedHeight="1088" codedWidth="1920" colorRange="tv" frameRate="29.970" hasScalingMatrix="0" height="1080" level="40" profile="high" refFrames="2" requiredBandwidths="21479,19803,19723,19698,19698,19698,19698,19698" scanType="progressive" streamIdentifier="256" width="1920" displayTitle="1080p" extendedDisplayTitle="1080p (H.264)"> </Stream>
<Stream id="19545" streamType="2" selected="1" codec="ac3" index="1" channels="2" bitrate="192" language="English" languageTag="en" languageCode="eng" audioChannelLayout="stereo" requiredBandwidths="192,192,192,192,192,192,192,192" samplingRate="48000" streamIdentifier="257" displayTitle="English (AC3 Stereo)" extendedDisplayTitle="English (AC3 Stereo)"> </Stream>
</Part>
</Media>
<Image alt="Pompeii's Secret Underworld" type="coverPoster" url="/library/metadata/14392/thumb/1740024064"/>
<Image alt="Pompeii's Secret Underworld" type="snapshot" url="/library/metadata/14393/thumb/1740024065"/>
<Image alt="Pompeii's Secret Underworld" type="background" url="/library/metadata/14393/art/1740024065"/>
<UltraBlurColors topLeft="302d2a" topRight="3d3a37" bottomRight="242321" bottomLeft="33302e"/>
<Genre id="34334" filter="genre=34334" tag="Science"/>
<Genre id="34335" filter="genre=34335" tag="Nature"/>
<Genre id="34336" filter="genre=34336" tag="Anthology"/>
<Genre id="15523" filter="genre=15523" tag="Entertainment"/>
<Genre id="34337" filter="genre=34337" tag="History + Science"/>
<Genre id="34338" filter="genre=34338" tag="Nature + Travel"/>
<Channel id="15524" filter="channel=15524" tag="4.1 KAIDDT (Public Broadcasting Service)"/>
<Channel id="19412" filter="channel=19412" tag="4.2 KAIDDT2 (Public Broadcasting Service)"/>
<Channel id="18482" filter="channel=18482" tag="4.4 KAIDDT4 (World)"/>
<Marker id="7443" type="commercial" startTimeOffset="0" endTimeOffset="61960">
<Attributes id="7443"/>
</Marker>
<Marker id="7443" type="commercial" startTimeOffset="3251890" endTimeOffset="3717920">
<Attributes id="7443"/>
</Marker>
<Marker id="7443" type="credits" startTimeOffset="3218939" endTimeOffset="3380939">
<Attributes id="7443" version="4"/>
</Marker>
<Marker id="7443" type="credits" startTimeOffset="3454939" endTimeOffset="3546939">
<Attributes id="7443" version="4"/>
</Marker>
<Marker id="7443" type="credits" startTimeOffset="3576939" endTimeOffset="3606939">
<Attributes id="7443" version="4"/>
</Marker>
<Marker id="7443" type="credits" startTimeOffset="3642939" endTimeOffset="3686939">
<Attributes id="7443" version="4"/>
</Marker>
<Field locked="1" name="thumb"/>
<Field locked="1" name="art"/>
<Extras size="0"> </Extras>
<Related> </Related>
</Video>
</MediaContainer>

I compared the above with one I recorded two weeks ago and I notice that the above is missing the two AC3 codecs for English and Spanish

Could that be the issue?

Oh and I did watch that nova episode on my HDHomerun’s DVR and it had the subtitles.

It’s definitely missing CCs. It should have a stream something like this:

<Stream id="149213" streamType="3" canAutoSync="0" codec="eia_608" index="0" bitrate="4569" embeddedInVideo="1" requiredBandwidths="6471,5689,4909,4909,4909,4909,4909,4909" streamIdentifier="256" displayTitle="Unknown" extendedDisplayTitle="Unknown (Closed Captions)"></Stream>

I wonder if the stream is really in the file but the scanner didn’t analyze it correctly for some reason? In the article linked above is a link to a tool called MediaInfo. It can analyze a file and provide additional details. Can you run it against one of the affected files to see if it shows the CC stream?

It looks like the audio stream is in the file:

It’s not the audio stream that has the CCs/subtitles; it will be one with a codec of “eia_608.” That definitely appears to be missing for some reason. I’m not sure why it would be stripped though.

Oh, wait. I just remembered something. You don’t have your DVR configured to convert video while recording, do you? I’m pretty sure that process does strip the CCs. I recently tested that and completely forgot. This setting:

I must be getting old; I even noted it in a reply here:

I did have it set since day 1, nearly a year ago. I guess the new updates fixed this part of the transcoding feature :slight_smile:

I will test it later this afternoon and see what happens.

I am getting much better results but not as expected. Everything is there I will tell you more after you can see for yourself:

<MediaContainer size="1" allowSync="1" identifier="com.plexapp.plugins.library" librarySectionID="8" librarySectionTitle="DVR" librarySectionUUID="b7622b27-c3bd-406e-861b-d210b0c3fcaf" mediaTagPrefix="/system/bundle/media/flags/" mediaTagVersion="1738863612">
<Video ratingKey="14436" key="/library/metadata/14436" skipParent="1" grandparentRatingKey="14434" guid="plex://episode/6257fa6b6cf130afddcd75d2" parentGuid="plex://season/5fc6acee8f76ce002de0d44e" grandparentGuid="plex://show/5fc6acee8f76ce002de0d44e" type="episode" title="Opening Up" grandparentKey="/library/metadata/14434" librarySectionTitle="DVR" librarySectionID="8" librarySectionKey="/library/sections/8" grandparentTitle="Bull" parentTitle="Season 6" contentRating="TV-PG" summary="When Bull is sidelined with a back injury, Marissa and Chunk are forced to go to court without him to defend Marissa's closest childhood friend, Kyla, a tech CEO accused of wrongfully terminating an employee." index="19" parentIndex="6" viewOffset="207000" viewCount="15" skipCount="1" lastViewedAt="1740532354" lastRatedAt="0" year="2022" thumb="/library/metadata/14436/thumb/1740524460" art="/library/metadata/14436/art/1740524460" parentThumb="/library/metadata/14435/thumb/1740523633" grandparentThumb="/library/metadata/14434/thumb/1740523632" grandparentArt="/library/metadata/14434/art/1740523632" duration="922804" originallyAvailableAt="2022-04-28" addedAt="1740523631" updatedAt="1740524460" oneShot="1">
<Media id="13734" duration="922804" bitrate="1452" width="720" height="480" aspectRatio="1.78" audioChannels="2" audioCodec="ac3" videoCodec="mpeg2video" videoResolution="480" container="mpegts" videoFrameRate="NTSC" beginOffset="1965" channelIdentifier="5fc76bd22f220e002d6d5352-5fc705e8a62668002dcef9af" mediaGrabBeginsAt="1740520800" mediaGrabDevice="device://tv.plex.grabbers.hdhomerun/10B0CF35" mediaGrabPartialRecording="1" mediaGrabPartialRecordingReason="The recording was cancelled" mediaGrabStatus="complete" origin="dvr" videoProfile="main" hasVoiceActivity="0">
<Part accessible="1" exists="1" id="14174" key="/library/parts/14174/1740523631/file.ts" duration="922804" file="/media/ron/drive1/PlexLib/TV/Bull (2016)/Season 06/Bull (2016) - S06E19 - Opening Up.ts" size="167510016" container="mpegts" packetLength="188" videoProfile="main">
<Stream id="19651" streamType="1" codec="mpeg2video" index="0" bitrate="1324" anamorphic="1" bitDepth="8" chromaLocation="left" chromaSubsampling="4:2:0" closedCaptions="1" codedHeight="480" codedWidth="720" colorRange="tv" frameRate="29.970" height="480" level="8" pixelAspectRatio="32:27" profile="main" refFrames="1" scanType="interlaced" streamIdentifier="256" width="720" displayTitle="480i" extendedDisplayTitle="480i (MPEG2VIDEO)"> </Stream>
<Stream id="19653" streamType="2" selected="1" codec="ac3" index="1" channels="2" bitrate="128" language="English" languageTag="en" languageCode="eng" audioChannelLayout="stereo" samplingRate="48000" streamIdentifier="257" displayTitle="English (AC3 Stereo)" extendedDisplayTitle="English (AC3 Stereo)"> </Stream>
<Stream id="19652" streamType="3" canAutoSync="0" selected="1" codec="eia_608" index="0" embeddedInVideo="1" streamIdentifier="256" displayTitle="Unknown" extendedDisplayTitle="Unknown (Closed Captions)"> </Stream>
</Part>
</Media>
<Media id="13736" duration="811700" bitrate="1341" width="720" height="480" aspectRatio="1.78" audioChannels="2" audioCodec="ac3" videoCodec="mpeg2video" videoResolution="480" container="mpegts" videoFrameRate="NTSC" beginOffset="2906" channelIdentifier="5fc76bd22f220e002d6d5352-5fc705e8a62668002dcef9af" mediaGrabBeginsAt="1740520800" mediaGrabDevice="device://tv.plex.grabbers.hdhomerun/10B0CF35" mediaGrabPartialRecording="1" mediaGrabPartialRecordingReason="The recording was cancelled" mediaGrabStatus="complete" origin="dvr" videoProfile="main" hasVoiceActivity="0">
<Part accessible="1" exists="1" id="14176" key="/library/parts/14176/1740524459/file.ts" duration="811700" file="/media/ron/drive1/PlexLib/TV/Bull (2016)/Season 06/Bull (2016) - S06E19 - Opening Up (copy 1).ts" size="136082108" container="mpegts" packetLength="188" videoProfile="main">
<Stream id="19654" streamType="1" codec="mpeg2video" index="0" bitrate="1213" anamorphic="1" bitDepth="8" chromaLocation="left" chromaSubsampling="4:2:0" closedCaptions="1" codedHeight="480" codedWidth="720" colorRange="tv" frameRate="29.970" height="480" level="8" pixelAspectRatio="32:27" profile="main" refFrames="1" scanType="interlaced" streamIdentifier="256" width="720" displayTitle="480i" extendedDisplayTitle="480i (MPEG2VIDEO)"> </Stream>
<Stream id="19656" streamType="2" selected="1" codec="ac3" index="1" channels="2" bitrate="128" language="English" languageTag="en" languageCode="eng" audioChannelLayout="stereo" samplingRate="48000" streamIdentifier="257" displayTitle="English (AC3 Stereo)" extendedDisplayTitle="English (AC3 Stereo)"> </Stream>
<Stream id="19655" streamType="3" canAutoSync="0" codec="eia_608" index="0" embeddedInVideo="1" streamIdentifier="256" displayTitle="Unknown" extendedDisplayTitle="Unknown (Closed Captions)"> </Stream>
<Stream id="19662" key="/library/streams/19662" streamType="3" canAutoSync="0" selected="1" codec="srt" language="English" languageTag="eng" languageCode="eng" format="srt" providerTitle="OpenSubtitles" score="2002" sourceKey="/library/streams/7442776" title="Bull.2016.S06E19.720p.HDTV.x264-SYNCOPY - No HIx" transient="1" userID="1" displayTitle="English" extendedDisplayTitle="Bull.2016.S06E19.720p.HDTV.x264-SYNCOPY - No HIx (English SRT OpenSubtitles)"> </Stream>
</Part>
</Media>
<Image alt="Opening Up" type="coverPoster" url="/library/metadata/14435/thumb/1740523633"/>
<Image alt="Opening Up" type="snapshot" url="/library/metadata/14436/thumb/1740524460"/>
<Image alt="Opening Up" type="background" url="/library/metadata/14436/art/1740524460"/>
<UltraBlurColors topLeft="0e0202" topRight="645c55" bottomRight="2a2a2d" bottomLeft="191a1b"/>
<Genre id="32081" filter="genre=32081" tag="Crime drama"/>
<Genre id="15523" filter="genre=15523" tag="Entertainment"/>
<Genre id="5" filter="genre=5" tag="Crime"/>
<Channel id="34449" filter="channel=34449" tag="12.5 KTRVDT5 (ION Plus)"/>
<Marker id="7443" type="commercial" startTimeOffset="0" endTimeOffset="19920">
<Attributes id="7443"/>
</Marker>
<Marker id="7443" type="commercial" startTimeOffset="770640" endTimeOffset="810880">
<Attributes id="7443"/>
</Marker>
<Field locked="1" name="thumb"/>
<Field locked="1" name="art"/>
<Extras size="0"> </Extras>
<Related> </Related>
</Video>
</MediaContainer>

The media descriptor now contains:
<Stream id="19655" streamType="3" canAutoSync="0" codec="eia_608" index="0" embeddedInVideo="1" streamIdentifier="256" displayTitle="Unknown" extendedDisplayTitle="Unknown (Closed Captions)"> </Stream>

however, I still do not get subtitles on my Roku player. I tried two different programs on two different channels and no luck

BUT

I get subtitles on my Windows player! I have 3 Rokus, One is the model 101 and the other two are the Express models. All three fail. 3 different TV sets.

Before the upgrade no problem. After the upgrade: Roku fails

Live TV fails the same way too.

Yep, that XML definitely looks better.

The only Roku device I have is an old Premiere (4620R). I dusted it off and tested it with a show I just recorded tonight and was able to view subtitles on it. It’s on Plex version 7.31b7. It has burn subtitles set to automatic, and both MPEG2 options (allow MPEG2 and experimental 1080p MPEG2) enabled.

I just upgraded to server version 1.41.5.9522 earlier today, so this recording and playback were tested with that.

So…

To summarize it all:

  1. In the server configuration, the machine settings for the DVR needed to be reconfigured to prevent the server from converting the video stream while recording it. This setting was marked as Experimental by the way. This fixed the missing stream information in the XML description of the .ts file.
  1. I then had to go to the settings for the Plex app on the Roku to set the following settings:
    a) Burnt subtitles: Automatic (was already set that way)
    b) MPEG2 and experimental 1080p MPEG2 set to enabled. (this is what fixed it in my case)

My subtitles are back!

Sometimes, one meets a complete stranger and gets a real helping hand. Rare but it does happen. I don’t know your name sir but I certainly am grateful and will never forget the help I received from you. Thank you!

2 Likes

You’re welcome, I’m very glad I could help!

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.