Unlike Run-length encodingDVB and DVD subtitles, CTA-708 captions are low bandwidth and textual like traditional EIA-608 captions and EBU Teletext subtitles. Unlike EIA-608 byte pairs, CTA-708 captions are not able to be modulated on an ATSC receiver's composite output and must be pre-rendered by the receiver. With the digital video frames, they also include more of the Latin-1 character set, and include stubs to support full UTF-32 captions, and downloadable fonts. CTA-708 caption streams can also encapsulate EIA-608 byte pairs internally, a fairly common usage.[1]
CTA-708 captions are used in MPEG-2 video streams in the picture user data. The packets are in picture order and must be rearranged. This is known as the DTVCC Transport Stream. It is a fixed-bandwidth channel that has 960 bit/s typically allocated for backward compatible "encapsulated" Line 21 captions, and 1.08 kB/s allocated for CTA-708 captions, for a total of 1.2 kB/s.[2] The ATSC A/53 Standard contains the encoding specifics. The main form of signalling is via a PSIP caption descriptor which indicates the language of each caption and if formatted for "easy reader" (3rd-grade level for language learners) in the PSIP EIT on a per-event basis and optionally in the H.222 PMT only if the video always sends caption data.
CTA-708 caption decoders are required in the U.S. by FCC regulation in all 13-inch (33 cm) diagonal or larger digital televisions. Further, some broadcasters are required by FCC regulations to caption a percentage of their broadcasts.
CTA-708 Technical Details
Caption streams are transmitted with many packet wrappers around them. These are the picture user data, which contains the caption data, which contains the cc_data, which contains the Caption Channel packets, which contains the Service Block, which contains the caption streams.
These are inserted before a SMPTE 259M active video frame or video packet. Common video packets are a picture header, a picture parameter set, and a Material Exchange Format essence.
ISO/IEC 13818 H.262/14496-2 MPEG-4 Video user data structure prefix
This structure was designed for any digital audio or metadata that is to be synchronized with a video frame. SDI transports every eight bits in a 10-bit aligned packet and the ancillary flag bytes are replaced by 128 bit header.
A cdp_timecode is used when cdp data stream is discontinuous (i.e., not padded) and the cdp_service_info is used to add extra details to the PSIP broadcast metadata such as language code, easy reader, and widescreen usage.
Fonts
CTA-708 supports eight font tags: undefined, monospaced serif, proportional serif, monospaced sans serif, proportional sans serif, casual, cursive, and small capitals. Below are some font examples, for more see the Wikipedia Fonts article.