Closed Captioning + ATSC3 not working

I have an HD HomeRun Flex 4K recording to Channel DVR on to my Synology (latest OS and latest channels release). I have 4 ATSC3 channels available in my area (the big 4 networks). None of the ATSC3 channels render closed captioning to my Apple TV or my iPad. All non-ATSC3 channels that have closed captioning in the the feed work correctly in Channels DVR.

I verified on YoutubeTV that the closed captioning is part of the stream. Is there a setting I need to change or something else I can do to solve this issue?

Closed captions for ATSC 3.0 are handled completely different than they are for ATSC 1.0. They are encoded in a separate stream, and the software doesn't fully support them yet.

Depending upon your market, CCs may be sent both as previously used as well as the new standard. However, just as ATSC 3.0 audio was "standardized" before complete market support was there, the same is true for CCs.

This is a known issue, and not something you personally can fix. The issue is that the standards bodies moved too fast and were driven by market forces and licensing deals, rather than what is best for consumers. Welcome to Corporate America.

3 Likes

Thanks for the information, is this something that Channels will be able to solve over time, or something that has to be solidified by the standards org and then pushed out to the broadcasters?

It's something we plan to support. The standard is new so it takes time to adopt it.

5 Likes

For some of us captions are a necessity, not a nicety.
We are only 5 miles from the ATSC 3 transmitter but 50 miles from the ATSC 1 transmitters which are subject to breakups and dropouts - some days unwatchable.

Please elevate the priority on caption support.

Thanks..

2 Likes

I get Captions on my ATSC 3.0 ... Fire TV Cube 3rd gen. Latest Beta.


I also get Captions on my Android s21 Ultra ... What is your client ... I am on the Latest Firmware from silicondust.

I'm using Channels DVR to connect to my Silicondust HDFX-4K (10A5433A).I love it but am consistantly missing captions on most of my local ATSC 3.0 non encrypted stations. My Channels client on both FireTV and iPad consistantly show captions on 103.1 & 108.1 but never on any of the other non encrypted stations (110.1, 115.1, 145.1, etc.)
As a troubleshooting measure I ran the HDHomerun client on both the same FireTV and iPad connected directly to the HDFX-4K (10A5433A). On the HDHomerun client I can see captions (tiny useless captions at the bottom of the screen but captions never the less) on all my non encrypted ATSC 3.0 channels. That makes me think the the captions are being transmitted by the local channels but the Channels DVR software is not allowing them to pass on most of my non encrypted ATSC 3.0 channels. The symptom is consistant and reproducable. Any information or advice would be welcome. Thanks

TL;DR – The captioning method used for ATSC 3.0 is new, and Channels does not yet support it.

ATSC3 captions are A/343, which is roughly the same as TTML. However, Channels does not currently support TTML captions for decoding.

Some stations transmit the same CTA-708 captions that ATSC1 uses in tandem with the A/343 captions that ATSC3 requires. On those broadcasts, Channels can display those captions.

Unfortunately, until the underlying libraries that Channels uses support TTML captions, full native ATSC3 captions will not be available in Channels.

Thank you for the reply and answer. I will no longer search my setup for a reason that I am not getting ATSC 3.0 captions and will continue to otherwise enjoy using Channels DVR. That said I have to say my adventure into ATSC 3.0 has been a disappointed. At every turn I find that ATSC 3.0 is at an experimental stage and very much a work in progress.

You are not alone in that feeling. I was all set to dive in but the more I learn the less I want to. I do have the luxury of strong ATSC 1.0 signals though.

Chris

Comskip has the Option to extract CC into SRT when it runs ... So why can't the developers give us the option to extract the CC and use them... I believe they already support SRT Subtitles.. That is what I do on my other DVR Software.

Might work might not but worth a try. All my Captions work on every ATSC 3.0 Channels so I cannot really test this... using FireTV Max 2nd Gen.

output_srt=1

Comskip uses the same libraries that Channels uses. Neither Comskip nor Channels presently support TTML subtitles.

I guess my ATSC 3.0 Networks do not use this type of CC as they all work on all channels. Thanks for the info.

TTML subtitles are required in ATSC3. However, some stations are additionally embedding CTA-708 closed captions in the video stream (as required by ATSC1). Your ability to use closed captions from ATSC3 feeds within Channels means your broadcasters are either doing both, or transmitting non-compliant streams.

In ATSC1, subtitles were delivered as part of the video stream. In ATSC3, subtitles are a wholly separate stream alongside the video and audio streams.

I guess the below doesn't really gives any Info about CC.

General
ID                                       : 1 (0x1)
Complete name                            : LEGO Masters S04E05 Cirque du Soleil 2023-10-26-2059.mpg
Format                                   : MPEG-TS
File size                                : 2.05 GiB
Duration                                 : 1 h 1 min
Overall bit rate mode                    : Variable
Overall bit rate                         : 4 783 kb/s
Frame rate                               : 59.940 FPS
FileExtension_Invalid                    : ts m2t m2s m4t m4s tmf ts tp trp ty

Video
ID                                       : 49 (0x31)
Menu ID                                  : 3 (0x3)
Format                                   : HEVC
Format/Info                              : High Efficiency Video Coding
Format profile                           : Main [email protected]@Main
Codec ID                                 : 36
Duration                                 : 1 h 1 min
Width                                    : 1 920 pixels
Height                                   : 1 080 pixels
Display aspect ratio                     : 16:9
Active Format Description                : Letterbox 16:9 image
Frame rate                               : 59.940 (60000/1001) FPS
Standard                                 : Component
Color space                              : YUV
Chroma subsampling                       : 4:2:0 (Type 0)
Bit depth                                : 10 bits
Color range                              : Limited
Color primaries                          : BT.709
Transfer characteristics                 : BT.709
Matrix coefficients                      : BT.709

Audio #1
ID                                       : 50 (0x32)
Menu ID                                  : 3 (0x3)
Format                                   : AC-4
Format/Info                              : Audio Coding 4
Commercial name                          : Dolby AC-4
Format version                           : Version 2
Codec ID                                 : 6
Duration                                 : 1 h 1 min
Channel(s)                               : 6 channels
Channel layout                           : L R C LFE Ls Rs
Sampling rate                            : 48.0 kHz
Frame rate                               : 29.970 (30000/1001) FPS (1601.6 SPF)
Compression mode                         : Lossy
Delay relative to video                  : -132 ms
Language                                 : English
I-Frame interval                         : 30 frames
Number of presentations                  : 1
NumberOfGroups                           : 1
Number of substreams                     : 1
Presentation #1                          : 5.1 Main (English)
 Presentation ID                         : 0
 Dialogue normalization                  : -24.00
 Language                                : English
 Loudness                                : Yes
  Integrated loudness (speech gated)     : -24.7 LKFS
  Integrated loudness (level gated)      : -24.9 LKFS
  Audio Loudness Standard                : Manual
  Realtime loudness corrected            : Yes
  Dialogue corrected                     : Yes
 Dynamic Range Control                   : Yes
  Home theater AVR                       : Film standard
  Flat panel TV                          : Film standard
 Downmix                                 : Yes
  LoRo center mix gain                   : -3.0 dB
  LoRo surround mix gain                 : -3.0 dB
  LtRt center mix gain                   : -3.0 dB
  LtRt surround mix gain                 : -3.0 dB
 Group #s                                : 1
Group #1                                 : Main
 Content classifier                      : Main
 Language                                : English
 Channel coded                           : Yes
 Number of substreams                    : 1
 Substream #s                            : 1
Substream #1                             : 5.1
 Channel mode                            : 5.1
 Channel layout                          : L R C LFE Ls Rs
 Preprocessing                           : Yes
  Phase 90 filter info                   : Not applied
  Surround attenuation known             : Yes
  LFE attenuation known                  : No
 Dialogue enhancement                    : Yes
  Enabled                                : Yes
  Max gain                               : 9 dB
  Channel configuration                  : C

Audio #2
ID                                       : 51 (0x33)
Menu ID                                  : 3 (0x3)
Format                                   : AC-4
Format/Info                              : Audio Coding 4
Commercial name                          : Dolby AC-4
Format version                           : Version 2
Codec ID                                 : 6
Duration                                 : 1 h 1 min
Channel(s)                               : 2 channels
Channel layout                           : L R
Sampling rate                            : 48.0 kHz
Frame rate                               : 29.970 (30000/1001) FPS (1601.6 SPF)
Compression mode                         : Lossy
Delay relative to video                  : -33 ms
Language                                 : Spanish
NOK                                      : tools_metadata
I-Frame interval                         : 30 frames
Number of presentations                  : 1
NumberOfGroups                           : 1
Number of substreams                     : 1
Presentation #1                          : Stereo Main (English)
 Presentation ID                         : 0
 Dialogue normalization                  : -24.00
 Language                                : English
 Loudness                                : Yes
  Integrated loudness (speech gated)     : -23.1 LKFS
  Integrated loudness (level gated)      : -23.7 LKFS
  Audio Loudness Standard                : Manual
  Realtime loudness corrected            : Yes
  Dialogue corrected                     : Yes
 Dynamic Range Control                   : Yes
  Home theater AVR                       : Film standard
  Flat panel TV                          : Film standard
 Group #s                                : 1
Group #1                                 : Main
 Content classifier                      : Main
 Language                                : English
 Channel coded                           : Yes
 Number of substreams                    : 1
 Substream #s                            : 1
Substream #1                             : Stereo
 Channel mode                            : Stereo
 Channel layout                          : L R
 Preprocessing                           : Yes
  Previous Mix Type 2-ch                 : Pro Logic
  Phase 90 Filer Info 2-ch               : Not applied
 Dialogue enhancement                    : Yes
  Enabled                                : Yes
  Max gain                               : 9 dB
  Channel configuration                  : L R

Menu
ID                                       : 48 (0x30)
Menu ID                                  : 3 (0x3)
Format                                   : HEVC / AC-4 /  / AC-4
Duration                                 : 1 h 1 min
List                                     : 49 (0x31) (HEVC) / 50 (0x32) (AC-4, English) / 57 (0x39) () / 51 (0x33) (AC-4, Spanish)
Language                                 :  / English /  / Spanish


Try the Channels DVR mediainfo using the File number of the recording.
Here's an example from my File 7256
http://127.0.0.1:8089/dvr/files/7256/mediainfo.json
notice ----->"closed_captions": 1 in the h.264 video stream

{
  "chapters": [],
  "format": {
    "bit_rate": "4312623",
    "duration": "1801.678755",
    "filename": "/shares/dvr/TV/Rick Steves' Europe/Rick Steves' Europe S12E03 2023-10-15 Rick Steves Europe Ancien 2023-10-30-1600.mpg",
    "format_long_name": "MPEG-TS (MPEG-2 Transport Stream)",
    "format_name": "mpegts",
    "nb_programs": 1,
    "nb_streams": 4,
    "probe_score": 50,
    "size": "971245312",
    "start_time": "45575.763256"
  },
  "m3u8_up_to_date": true,
  "streams": [
    {
      "avg_frame_rate": "60000/1001",
      "bits_per_raw_sample": "8",
      "chroma_location": "left",
----->"closed_captions": 1,
      "codec_long_name": "H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10",
      "codec_name": "h264",
      "codec_tag": "0x001b",
      "codec_tag_string": "[27][0][0][0]",
      "codec_type": "video",
      "coded_height": 720,
      "coded_width": 1280,
      "color_range": "tv",
      "display_aspect_ratio": "16:9",
      "disposition": {

And Mediainfo does display them as EIA-608/EIA-708 for this one

Text #1
ID                      : 4193 (0x1061)-CC1
Menu ID                 : 452 (0x1C4)
Format                  : EIA-608
Muxing mode             : SCTE 128 / DTVCC Transport
Muxing mode, more info  : Muxed in Video #1
Duration                : 30 min 0 s
Start time (commands)   : 12 h 39 min
Bit rate mode           : Constant
Stream size             : 0.00 Byte (0%)
Language                : English

Text #2
ID                      : 4193 (0x1061)-CC3
Menu ID                 : 452 (0x1C4)
Format                  : EIA-608
Muxing mode             : SCTE 128 / DTVCC Transport
Muxing mode, more info  : Muxed in Video #1
Duration                : 30 min 0 s
Start time (commands)   : 12 h 39 min
Bit rate mode           : Constant
Stream size             : 0.00 Byte (0%)

Text #3
ID                      : 4193 (0x1061)-1
Menu ID                 : 452 (0x1C4)
Format                  : EIA-708
Muxing mode             : SCTE 128 / DTVCC Transport
Muxing mode, more info  : Muxed in Video #1
Duration                : 30 min 0 s
Bit rate mode           : Constant
Stream size             : 0.00 Byte (0%)
Language                : English

Text #4
ID                      : 4193 (0x1061)-2
Menu ID                 : 452 (0x1C4)
Format                  : EIA-708
Muxing mode             : SCTE 128 / DTVCC Transport
Muxing mode, more info  : Muxed in Video #1
Duration                : 30 min 0 s
Bit rate mode           : Constant
Stream size             : 0.00 Byte (0%)

No, because as stated above, ATSC1–style closed captions are actually a part of the video stream.

Subtitles for teletext, DVDs, DVB, and most everything else (including ATSC3) are generally transmitted as a separate stream alongside the A/V content; in ATSC1 the subtitles are part of the video component.

{
    "chapters": [],
    "format": {
        "bit_rate": "4784553",
        "duration": "3689.168811",
        "filename": "Y:\\ChannelsDVR\\TV\\LEGO Masters\\LEGO Masters S04E05 Cirque du Soleil 2023-10-26-2059.mpg",
        "format_long_name": "MPEG-TS (MPEG-2 Transport Stream)",
        "format_name": "mpegts",
        "nb_programs": 1,
        "nb_streams": 4,
        "probe_score": 50,
        "size": "2206378080",
        "start_time": "35119.138100"
    },
    "m3u8_up_to_date": true,
    "streams": [
        {
            "avg_frame_rate": "60000/1001",
            "chroma_location": "left",
            "closed_captions": 0,
            "codec_long_name": "H.265 / HEVC (High Efficiency Video Coding)",
            "codec_name": "hevc",
            "codec_tag": "0x0024",
            "codec_tag_string": "[36][0][0][0]",
            "codec_type": "video",
            "coded_height": 1080,
            "coded_width": 1920,
            "color_primaries": "bt709",
            "color_range": "tv",
            "color_space": "bt709",
            "color_transfer": "bt709",
            "display_aspect_ratio": "16:9",
            "disposition": {
                "attached_pic": 0,
                "clean_effects": 0,
                "comment": 0,
                "default": 0,
                "dub": 0,
                "forced": 0,
                "hearing_impaired": 0,
                "karaoke": 0,
                "lyrics": 0,
                "original": 0,
                "timed_thumbnails": 0,
                "visual_impaired": 0
            },
            "duration": "3689.035344",
            "duration_ts": 332013181,
            "field_order": "progressive",
            "has_b_frames": 5,
            "height": 1080,
            "id": "0x31",
            "index": 0,
            "level": 123,
            "pix_fmt": "yuv420p10le",
            "profile": "Main 10",
            "r_frame_rate": "60000/1001",
            "refs": 1,
            "sample_aspect_ratio": "1:1",
            "start_pts": 3160734441,
            "start_time": "35119.271567",
            "time_base": "1/90000",
            "width": 1920
        },
        {
            "avg_frame_rate": "0/0",
            "bits_per_sample": 0,
            "channel_layout": "5.1(side)",
            "channels": 6,
            "codec_long_name": "AC-4",
            "codec_name": "ac4",
            "codec_tag": "0x342d4341",
            "codec_tag_string": "AC-4",
            "codec_type": "audio",
            "disposition": {
                "attached_pic": 0,
                "clean_effects": 0,
                "comment": 0,
                "default": 0,
                "dub": 0,
                "forced": 0,
                "hearing_impaired": 0,
                "karaoke": 0,
                "lyrics": 0,
                "original": 0,
                "timed_thumbnails": 0,
                "visual_impaired": 0
            },
            "duration": "3688.818467",
            "duration_ts": 331993662,
            "id": "0x32",
            "index": 1,
            "r_frame_rate": "0/0",
            "sample_fmt": "fltp",
            "sample_rate": "46034",
            "start_pts": 3160722429,
            "start_time": "35119.138100",
            "tags": {
                "language": "eng"
            },
            "time_base": "1/90000"
        },
        {
            "avg_frame_rate": "0/0",
            "codec_long_name": "binary data",
            "codec_name": "bin_data",
            "codec_tag": "0x50505453",
            "codec_tag_string": "STPP",
            "codec_type": "data",
            "disposition": {
                "attached_pic": 0,
                "clean_effects": 0,
                "comment": 0,
                "default": 0,
                "dub": 0,
                "forced": 0,
                "hearing_impaired": 0,
                "karaoke": 0,
                "lyrics": 0,
                "original": 0,
                "timed_thumbnails": 0,
                "visual_impaired": 0
            },
            "duration": "3689.168811",
            "duration_ts": 332025193,
            "id": "0x39",
            "index": 2,
            "r_frame_rate": "0/0",
            "start_pts": 3160722429,
            "start_time": "35119.138100",
            "tags": {
                "language": "eng"
            },
            "time_base": "1/90000"
        },
        {
            "avg_frame_rate": "0/0",
            "bits_per_sample": 0,
            "channel_layout": "stereo",
            "channels": 2,
            "codec_long_name": "AC-4",
            "codec_name": "ac4",
            "codec_tag": "0x342d4341",
            "codec_tag_string": "AC-4",
            "codec_type": "audio",
            "disposition": {
                "attached_pic": 0,
                "clean_effects": 0,
                "comment": 0,
                "default": 0,
                "dub": 0,
                "forced": 0,
                "hearing_impaired": 0,
                "karaoke": 0,
                "lyrics": 0,
                "original": 0,
                "timed_thumbnails": 0,
                "visual_impaired": 0
            },
            "duration": "3688.685000",
            "duration_ts": 331981650,
            "id": "0x33",
            "index": 3,
            "r_frame_rate": "0/0",
            "sample_fmt": "fltp",
            "sample_rate": "46034",
            "start_pts": 3160731438,
            "start_time": "35119.238200",
            "tags": {
                "language": "spa"
            },
            "time_base": "1/90000"
        }
    ]
}

Says "closed_captions": 0, Yet I get Close Captions playing.

image