Code of Federal Regulations (alpha)

CFR /  Title 47  /  Part 79  /  Sec. 79.101 Closed caption decoder requirements for analog

(a)(1) Effective July 1, 1993, all television broadcast receivers with picture screens 33 cm (13 in) or larger in diameter shipped in interstate commerce, manufactured, assembled, or imported from any foreign country into the United States shall comply with the provisions of this section.

(1) Effective July 1, 1993, all television broadcast receivers with picture screens 33 cm (13 in) or larger in diameter shipped in interstate commerce, manufactured, assembled, or imported from any foreign country into the United States shall comply with the provisions of this section.

Note to paragraph (a)(1): This paragraph places no restriction on the shipping or sale of television receivers that were manufactured before July 1, 1993.

(2) Effective January 1, 2014, all television broadcast receivers shipped in interstate commerce, manufactured, assembled, or imported from any foreign country into the United States shall comply with the provisions of this section, if technically feasible, except that television broadcast receivers that use a picture screen less than 13 inches in size must comply with the provisions of this section only if doing so is achievable pursuant to Sec. 79.103(b)(3).

Note to paragraph (a)(2): This paragraph places no restrictions on the importing, shipping, or sale of television receivers that were manufactured before January 1, 2014.

(b) Transmission format. Closed-caption information is transmitted on line 21 of field 1 of the vertical blanking interval of television signals, in accordance with Sec. 73.682(a)(22) of this chapter.

(c) Operating modes. The television receiver will employ customer-selectable modes of operation for TV and Caption. A third mode of operation, Text, may be included on an optional basis. The Caption and Text Modes may contain data in either of two operating channels, referred to in this document as C1 and C2. The television receiver must decode both C1 and C2 captioning, and must display the captioning for whichever channel the user selects. The TV Mode of operation allows the video to be viewed in its original form. The Caption and Text Modes define one or more areas (called ``boxes'') on the screen within which caption or text characters are displayed.

Note: For more information regarding Text mode, see ``Television Captioning for the Deaf: Signal and Display Specifications'', Engineering Report No. E-7709-C, Public Broadcasting Service, dated May 1980, and ``TeleCaption II Decoder Module Performance Specification'', National Captioning Institute, Inc., dated November 1985. These documents are available, respectively, from the Public Broadcasting Service, 1320 Braddock Place, Alexandria, VA 22314 and from the National Captioning Institute, Inc., 5203 Leesburg Pike, Falls Church, VA 22041.

(d) Screen format. The display area for captioning and text shall fall approximately within the safe caption area as defined in paragraph (n)(12) of this section. This display area will be further divided into 15 character rows of equal height and 32 columns of equal width, to provide accurate placement of text on the screen. Vertically, the display area begins on line 43 and is 195 lines high, ending on line 237 on an interlaced display. All captioning and text shall fall within these established columns and rows. The characters must be displayed clearly separated from the video over which they are placed. In addition, the user must have the capability to select a black background over which the captioned letters are displaced.

(1) Caption mode. In the Caption Mode, text can appear on up to 4 rows simultaneously anywhere on the screen within the defined display area. In addition, a solid space equal to one column width may be placed before the first character and after the last character of each row to enhance legibility. The caption area will be transparent anywhere that either:

(i) No standard space character or other character has been addressed and no accompanying solid space is needed; or,

(ii) An accompanying solid space is used and a ``transparent space'' special character has been addressed which does not immediately precede or follow a displayed character.

(2) [Reserved]

(e) Presentation format. In analyzing the presentation of characters, it is convenient to think in terms of a non-visible cursor which marks the screen position at which the next event in a given mode and data channel will occur. The receiver remembers the cursor position for each mode even when data are received for a different address in an alternate mode or data channel.

(1) Screen addressing. Two kinds of control codes are used to move the cursor to specific screen locations. In Caption Mode, these addressing codes will affect both row and column positioning. In Text Mode, the codes affect only column positioning. In both modes, the addressing codes are optional. Default positions are defined for each mode and style when no addressing code is provided.

(i) The first type of addressing code is the Preamble Address Code (PAC). It assigns a row number and one of eight ``indent'' figures. Each successive indent moves the cursor four columns to the right (starting from the left margin). Thus, an indent of 0 places the cursor at Column 1, an indent of 4 sets it at Column 5, etc. The PAC indent is non-destructive to displayable characters. It will not affect the display to the left of the new cursor position on the indicated row. Note that Preamble Address Codes also set initial attributes for the displayable characters which follow. See paragraph (h) of this section and the Preamble Address Code table.

(ii) The second type of addressing code is the Tab Offset, which is one of three Miscellaneous Control Codes. Tab Offset will move the cursor one, two, or three columns to the right. The character cells skipped over will be unaffected; displayable characters in these cells, if any, will remain intact while empty cells will remain empty, in the same manner that a PAC indent is non-destructive.

(2) [Reserved]

(f) Caption Mode. There are three styles of presenting text in Caption Mode: roll-up, pop-on, and paint-on. Character display varies significantly with the style used, but certain rules of character erasure are common to all styles. A character can be erased by addressing another character to the same screen location or by backspacing over the character from a subsequent location on the same row. The entire displayed memory will be erased instantly by receipt of an Erase Displayed Memory command. Both displayed memory and non-displayed memory will be entirely erased simultaneously by either: The user switching receiver channels or data channels (C1/C2) or fields (F1/F2) in decoders so equipped; the loss of valid data (see paragraph (j) of this section); or selecting non-captioning receiver functions which use the display memory of the decoder. Receipt of an End of Caption command will cause a displayed caption to become non-displayed (and vice versa) without being erased from memory. Changing the receiver to a non-captioning mode which does not require use of the decoder's display memory will leave that memory intact, and the decoder will continue to process data as if the caption display were selected.

(1) Roll-up. Roll-up style captioning is initiated by receipt of one of three Miscellaneous Control Codes that determine the maximum number of rows displayed simultaneously, either 2, 3 or 4 contiguous rows. These are the three Roll-Up Caption commands.

(i) The bottom row of the display is known as the ``base row''. The cursor always remains on the base row. Rows of text roll upwards into the contiguous rows immediately above the base row to create a ``window'' 2 to 4 rows high.

(ii) The Roll-Up command, in normal practice, will be followed (not necessarily immediately) by a Preamble Address Code indicating the base row and the horizontal indent position. If no Preamble Address Code is received, the base row will default to Row 15 or, if a roll-up caption is currently displayed, to the same base row last received, and the cursor will be placed at Column 1. If the Preamble Address Code received contains a different base row than that of a currently displayed caption, the entire window will move intact (and without erasing) to the new base row immediately.

(iii) Each time a Carriage Return is received, the text in the top row of the window is erased from memory and from the display or scrolled off the top of the window. The remaining rows of text are each rolled up into the next highest row in the window, leaving the base row blank and ready to accept new text. This roll-up must appear smooth to the user, and must take no more than 0.433 second to complete. The cursor is automatically placed at Column 1 (pending receipt of a Preamble Address Code).

(iv) Increasing or decreasing the number of roll-up rows instantly changes the size of the active display window, appropriately turning on or off the display of the top one or two rows. A row which is turned off should also be erased from memory.

(v) Characters are always displayed immediately when received by the receiver. Once the cursor reaches the 32nd column position on any row, all subsequent characters received prior to a Carriage Return, Preamble Address Code, or Backspace will be displayed in that column replacing any previous character occupying that address.

(vi) The cursor moves automatically one column to the right after each character or Mid-Row Code received. A Backspace will move the cursor one column to the left, erasing the character or Mid-Row Code occupying that location. (A Backspace received when the cursor is in Column 1 will be ignored.)

(vii) The Delete to End of Row command will erase from memory any characters or control codes starting at the current cursor location and in all columns to its right on the same row. If no displayable characters remain on the row after the Delete to End of Row is acted upon, the solid space (if any) for that row should also be erased to conform with the following provisions.

(viii) If a solid space is used for legibility, it should appear when the first displayable character (not a transparent space) or Mid-Row Code is received on a row, not when the Preamble Address Code, if any, is given. A row on which there are no displayable characters or Mid-Row Codes will not display a solid space, even when rolled up between two rows which do display a solid space.

(ix) If the reception of data for a row is interrupted by data for the alternate data channel or for Text Mode, the display of caption text will resume from the same cursor position if a Roll-Up Caption command is received and no Preamble Address Code is given which would move the cursor.

(x) A roll-up caption remains displayed until one of the standard caption erasure techniques is applied. Receipt of a Resume Caption Loading command (for pop-on style) or a Resume Direct Captioning command (for paint-on style) will not affect a roll-up display. Receipt of a Roll-Up Caption command will cause any pop-on or paint-on caption to be erased from displayed memory and non-displayed memory.

(2) Pop-on. Pop-on style captioning is initiated by receipt of a Resume Caption Loading command. Subsequent data are loaded into a non-displayed memory and held there until an End of Caption command is received, at which point the non-displayed memory becomes the displayed memory and vice versa. (This process is often referred to as ``flipping memories'' and does not automatically erase memory.) An End of Caption command forces the receiver into pop-on style if no Resume Caption Loading command has been received which would do so. The display will be capable of 4 full rows, not necessarily contiguous, simultaneous anywhere on the screen.

(i) Preamble Address Codes can be used to move the cursor around the screen in random order to place captions on Rows 1 to 15. Carriage Returns have no effect on cursor location during caption loading.

(ii) The cursor moves automatically one column to the right after each character or Mid-Row Code received. Receipt of a Backspace will move the cursor one column to the left, erasing the character or Mid-Row Code occupying that location. (A Backspace received when the cursor is in Column 1 will be ignored.) Once the cursor reaches the 32nd column position on any row, all subsequent characters received prior to a Backspace, an End of Caption, or a Preamble Address Code, will replace any previous character at that location.

(iii) The Delete to End of Row command will erase from memory any characters or control codes starting at the current cursor location and in all columns to its right on the same row. If no displayable characters remain on a row after the Delete to End of Row is acted upon, the solid space (if any) for that element should also be erased.

(iv) If data reception is interrupted during caption loading by data for the alternate caption channel or for Text Mode, caption loading will resume at the same cursor position if a Resume Caption Loading command is received and no Preamble Address Code is given that would move the cursor.

(v) Characters remain in non-displayed memory until an End of Caption command flips memories. The caption will be erased without being displayed upon receipt of an Erase Non-Displayed Memory command, a Roll-Up Caption command, or if the user switches receiver channels, data channels or fields, or upon the loss of valid data (see paragraph (j) of this section).

(vi) A pop-on caption, once displayed, remains displayed until one of the standard caption erasure techniques is applied or until a Roll-Up Caption command is received. Characters within a displayed pop-on caption will be replaced by receipt of the Resume Direct Captioning command and paint-on style techniques (see below).

(3) Paint-on. Paint-on style captioning is initiated by receipt of a Resume Direct Captioning command. Subsequent data are addressed immediately to displayed memory without need for an End of Caption command.

(i) Preamble Address Codes can be used to move the cursor around the screen in random order to display captions on Rows 1 to 15. Carriage Returns have no affect on cursor location during direct captioning. The cursor moves automatically one column to the right after each character or Mid-Row Code is received. Receipt of a Backspace will move the cursor one column to the left, erasing the character or Mid-Row Code occupying that location. (A Backspace received when the cursor is in Column 1 will be ignored.) Once the cursor reaches the 32nd column position on any row, all subsequent characters received prior to a Preamble Address Code or Backspace will be displayed in that column replacing any previous character occupying that location.

(ii) The Delete to End of Row command will erase from memory any characters or control codes starting at the current cursor location and in all columns to its right on the same row. If no displayable characters remain on the row after the Delete to End of Row is acted upon, the solid space (if any) for that element should also be erased.

(iii) If the reception of data is interrupted during the direct captioning by data for the alternate caption channel or for Text Mode, the display of caption text will resume at the same cursor position if a Resume Direct Captioning command is received and no Preamble Address Code is given which would move the cursor.

(iv) Characters remain displayed until one of the standard caption erasure techniques is applied or until a Roll-Up Caption command is received. An End of Caption command leaves a paint-on caption fully intact in non-displayed memory. In other words, a paint-on style caption behaves precisely like a pop-on style caption which has been displayed.

(g) Character format. Characters are to be displayed on the screen within a character ``cell'' which is the height and width of a single row and column. The following codes define the displayable character set. Television receivers manufactured prior to January 1, 1996 and having a character resolution of 5 x 7 dots, or less, may display the allowable alternate characters in the character table. A statement must be in a prominent location on the box or other package in which the receiver is to be marketed, and information must be in the owner's manual, indicating the receiver displays closed captioning in upper case only.

Character Set Table

Special Characters

These require two bytes for each symbol. Each hex code as shown will be preceded by a 11h for data channel 1 or by a 19h for data channel 2. For example: 19h 37h will place a musical note in data channel 2. ------------------------------------------------------------------------HEX Example Alternate Description------------------------------------------------------------------------

30 [reg] See note \1\ Registered mark symbol

31 [deg] ............ Degree sign

32 \1/2\ ............ \1/2\

33 [iquest] ............ Inverse query

34 \TM\ See note \1\ Trademark symbol

35 [cent] ............ Cents sign

36 [pound] ............ Pounds Sterling sign

37 [sung] ............ Music note

38 [agrave] A Lower-case a with grave accent

39 ............ Transparent space

3A [egrave] E Lower-case e with grave accent

3B [acirc] A Lower-case a with circumflex

3C [ecirc] E Lower-case e with circumflex

3D [icirc] I Lower-case i with circumflex

3E [ocirc] O Lower-case o with circumflex

3F [ucirc] U Lower-case u with circumflex------------------------------------------------------------------------\1\ Note: The registered and trademark symbols are used to satisfy

certain legal requirements. There are various legal ways in which

these symbols may be drawn or displayed. For example, the trademark

symbol may be drawn with the ``T'' next to the ``M'' or over the

``M''. It is preferred that the trademark symbol be superscripted,

i.e., XYZ \TM\. It is left to each individual manufacturer to

interpret these symbols in any way that meets the legal needs of the

user.

Standard characters ------------------------------------------------------------------------HEX Example Alternate Description------------------------------------------------------------------------

20 .......... Standard space

21 ! .......... Exclamation mark

22 `` .......... Quotation mark

23  .......... Pounds (number) sign

24 $ .......... Dollar sign

25 % .......... Percentage sign

26 & .......... Ampersand

27 ' .......... Apostrophe

28 ( .......... Open parentheses

29 ) .......... Close parentheses

2A [aacute] A Lower-case a with acute accent

2B + .......... Plus sign

2C , .......... Comma

2D - .......... Minus (hyphen) sign

2E . .......... Period

2F / .......... Slash

30 0 .......... Zero

31 1 .......... One

32 2 .......... Two

33 3 .......... Three

34 4 .......... Four

35 5 .......... Five

36 6 .......... Six

37 7 .......... Seven

38 8 .......... Eight

39 9 .......... Nine

3A : .......... Colon

3B ; .......... Semi-colon

3C < .......... Less than sign

3D = .......... Equal sign

3E Sec. 79.102 Closed caption decoder requirements for digital television receivers and converter boxes.

(a)(1) Effective July 1, 2002, all digital television receivers with picture screens in the 4:3 aspect ratio with picture screens measuring 13 inches or larger diagonally, all digital television receivers with picture screens in the 16:9 aspect ratio measuring 7.8 inches or larger vertically and all separately sold DTV tuners shipped in interstate commerce or manufactured in the United States shall comply with the provisions of this section.

(1) Effective July 1, 2002, all digital television receivers with picture screens in the 4:3 aspect ratio with picture screens measuring 13 inches or larger diagonally, all digital television receivers with picture screens in the 16:9 aspect ratio measuring 7.8 inches or larger vertically and all separately sold DTV tuners shipped in interstate commerce or manufactured in the United States shall comply with the provisions of this section.

Note to paragraph (a)(1): This paragraph places no restrictions on the shipping or sale of digital television receivers that were manufactured before July 1, 2002.

(2) Effective July 1, 2002, DTV converter boxes that allow digitally transmitted television signals to be displayed on analog receivers shall pass available analog caption information to the attached receiver in a form recognizable by that receiver's built-in caption decoder circuitry.

Note to paragraph (a)(2): This paragraph places no restrictions on the shipping or sale of DTV converter boxes that were manufactured before July 1, 2002.

(3) Effective January 1, 2014, all digital television receivers and all separately sold DTV tuners shipped in interstate commerce or manufactured in the United States shall comply with the provisions of this section, if technically feasible, except that digital television receivers that use a picture screens less than 13 inches in size must comply with the provisions of this section only if doing so is achievable pursuant to Sec. 79.103(b)(3).

Note to paragraph (a)(3): This paragraph places no restrictions on the importing, shipping, or sale of digital television receivers and separately sold DTV tuners that were manufactured before January 1, 2014.

(b) Digital television receivers and tuners must be capable of decoding closed captioning information that is delivered pursuant to EIA-708-B: ``Digital Television (DTV) Closed Captioning'' (incorporated by reference, see Sec. 79.100).

(c) Services. (1) Decoders must be capable of decoding and processing data for the six standard services, Caption Service 1 through Caption Service 6.

(1) Decoders must be capable of decoding and processing data for the six standard services, Caption Service 1 through Caption Service 6.

(2) Decoders that rely on Program and System Information Protocol data to implement closed captioning functions must be capable of decoding and processing the Caption Service Directory data. Such decoders must be capable of decoding all Caption Channel Block Headers consisting of Standard Service Headers, Extended Service Block Headers, and Null Block headers. However, decoding of the data is required only for Standard Service Blocks (Service IDs <-6), and then only if the characters for the corresponding language are supported. The decoders must be able to display the directory for services 1 through 6.

(d) Code space organization. (1) Decoders must support Code Space C0, G0, C1, and G1 in their entirety. [GRAPHIC(S) NOT AVAILABLE IN TIFF FORMAT]

(1) Decoders must support Code Space C0, G0, C1, and G1 in their entirety. [GRAPHIC(S) NOT AVAILABLE IN TIFF FORMAT]

(2) The following characters within code space G2 must be supported:

(i) Transparent space (TSP).

(ii) Non-breaking transparent space (NBTSP).

(iii) Solid block ( ).

(iv) Trademark symbol (TM).

(v) Latin-1 characters [Scaron], [OElig], [scaron], [oelig], [Yuml].

(3) The substitutions in Table 2 are to be made if a decoder does not support the remaining G2 characters.

Table 2--G2 Character Substitution Table------------------------------------------------------------------------

G2 Character Substitute with------------------------------------------------------------------------Open single quote (`), G2 char G0 single quote (`), char code 0 x 27

code 0 x 31.Close single quote ('), G2 char G0 single quote ('), char code 0 x 27

code 0 x 32.Open double quote (``), G2 char G0 double quote (``), char code 0 x

code 0 x 33. 22Close double quote (''), G2 char G0 double quote (''), char code 0 x

code 0 x 34. 22Bold bullet (), G1 bullet (), char

G2 char code 0 x 35. code 0 x B7Elipsis (. . .), G2 char code 0 x G0 underscore (--), char code 0 x 5F

25.One-eighth (\1/8\), G2 char code G0 percent sign (%), char code 0 x 25

0 x 76.Three-eighths (\3/8\), G2 char G0 percent sign (%), char code 0 x 25

code 0 x 77.

Five-eighths (\5/8\), G2 char G0 percent sign (%), char code 0 x 25

code 0 x 78.Seven-eighths (\7/8\), G2 char G0 percent sign (%), char code 0 x 25

code 0 x 79.Vertical border ([verbar]), G2 G0 stroke ([verbar]), char code 0 x

char code 0 x 7A. 7CUpper-right border ([rceil]), G2 G0 dash (-), char code 0 x 2D

char code 0 x 7B.Lower-left border ([lfloor]), G2 G0 dash (-), char code 0 x 2D

char code 0 x 7C.Horizontal border ([horbar]), G2 G0 dash (-), char code 0 x 2D

char code 0 x 7D.Lower-right border ([rfloor]), G2 G0 dash (-), char code 0 x 2D

char code 0 x 7E.Upper-left border ([lceil]), G2 G0 dash (-), char code 0 x 2D

char code 0 x 7F.------------------------------------------------------------------------

(4) Support for code spaces C2, C3, and G3 is optional. All unsupported graphic symbols in the G3 code space are to be substituted with the G0 underscore character (--), char code 0 x 5F.

(e) Screen coordinates. Table 3 specifies the screen coordinate resolutions and limits for anchor point positioning in 4:3 and 16:9 display formats, and the number of characters per row.

Table 3--Screen Coordinate Resolutions and Limits----------------------------------------------------------------------------------------------------------------

Maximum Maximum

Screen aspect ratio Maximum anchor position Minimum anchor position displayed characters

resolution resolution rows per row----------------------------------------------------------------------------------------------------------------4:3.......................... 75v x 160h................. 15v x 32h.................. 4 3216:9......................... 75v x 210h................. 15v x 42h.................. 4 42Other........................ 75v x (5 x H).............. 15v x H*................... 4 \1\----------------------------------------------------------------------------------------------------------------\1\H = 32 x (the width of the screen in relation to a 4:3 display). For example, the 16:9 format is \1/3\ wider

than a 4:3 display; thus, H = 32 * \4/3\ = 42.667, or 42.

(1) This means that the minimum grid resolution for a 4:3 aspect ratio instrument is 15 vertical positions x 32 horizontal positions. This minimum grid resolution for 16:9 ratio instrument is 15 vertical positions x 42 horizontal positions. These minimum grid sizes are to cover the entire safe-title area of the corresponding screen.

(2) The minimum coordinates equate to a \1/5\ reduction in the maximum horizontal and vertical grid resolution coordinates. Caption providers are to use the maximum coordinate system values when specifying anchor point positions. Decoders using the minimum resolution are to divide the provided horizontal and vertical screen coordinates by 5 to derive the equivalent minimum coordinates.

(3) Any caption targeted for both 4:3 and 16:9 instruments is limited to 32 contiguous characters per row. If a caption is received by a 4:3 instrument that is targeted for a 16:9 display only, or requires a window width greater than 32 characters, then the caption may be completely disregarded by the decoder. 16:9 instruments should be able to process and display captions intended for 4:3 displays, providing all other minimum recommendations are met.

(4) If the resulting size of any window is larger than the safe title area for the corresponding display's aspect ratio, then this window will be completely disregarded.

(f) Caption windows. (1) Decoders need to display no more than 4 rows of captions on the screen at any given time, regardless of the number of windows displayed. This implies that no more than 4 windows can be displayed at any given time (with each having only one caption row). However, decoders should maintain storage to support a minimum total of 8 rows of captions. This storage is needed for the worst-case support of a displayed window with 4 rows of captioning and a non-displayed window which is buffering the incoming rows for the next 4-row caption. As implied above, the maximum number of windows that may be displayed at any one time by a minimum decoder implementation is 4. If more than 4 windows are defined in the caption stream, the decoder may disregard the youngest and lowest priority window definition(s). Caption providers must be aware of this limitation, and either restrict the total number of windows used or accept that some windows will not be displayed.

(1) Decoders need to display no more than 4 rows of captions on the screen at any given time, regardless of the number of windows displayed. This implies that no more than 4 windows can be displayed at any given time (with each having only one caption row). However, decoders should maintain storage to support a minimum total of 8 rows of captions. This storage is needed for the worst-case support of a displayed window with 4 rows of captioning and a non-displayed window which is buffering the incoming rows for the next 4-row caption. As implied above, the maximum number of windows that may be displayed at any one time by a minimum decoder implementation is 4. If more than 4 windows are defined in the caption stream, the decoder may disregard the youngest and lowest priority window definition(s). Caption providers must be aware of this limitation, and either restrict the total number of windows used or accept that some windows will not be displayed.

(2) Decoders do not need to support overlapped windows. If a window overlaps another window, the overlapped window need not be displayed by the decoder.

(3) At a minimum, decoders will assume that all windows have rows and columns ``locked''. This implies that if a decoder implements the SMALL pen-size, then word-``un''wrapping, when shrinking captions, need not be implemented. Also, if a decoder implements the LARGE pen size, then word wrapping (when enlarging captions) need not be implemented.

(4) Whenever possible, the receiver should render embedded carriage returns as line breaks, since these carriage returns indicate an important aspect of the caption's formatting as determined by the service provider. However, it may sometimes be necessary for the receiver to ignore embedded line breaks. For example, if a caption is to appear in a larger font, and if its window's rows and/or columns are unlocked, the rows of text may need to become longer or shorter to fit within the allocated space. Such automatic reformatting of a caption is known as ``word wrap.'' If decoders support word-wrapping, it must be implemented as follows:

(i) The receiver should follow standard typographic practice when implementing word wrap. Potential breaking points (word-wrapping points) are indicated by the space character (20h) and by the hyphen character (2Dh).

(ii) If a row is to be broken at a space, the receiver should remove the space from the caption display. If a row is to be broken after a hyphen, the hyphen should be retained.

(iii) If an embedded return is to be removed, it should usually be replaced with a space. However, if the character to the left of the embedded return is a hyphen, the embedded return should be removed but NOT replaced with a space.

(iv) This specification does not include optional hyphens, nor does it provide for any form of automatic hyphenation. No non-breaking hyphen is defined. The non-breaking space (A0h in the G1 code set) and the non-breaking transparent space (21h in the G2 code set) should not be considered as potential line breaks.

(v) If a single word exceeds the length of a row, the word should be placed at the start of a new row, broken at the character following the last character that fits on the row, and continued with further breaks if needed.

(g) Window text painting. (1) All decoders should implement ``left'', ``right'', and ``center'' caption-text justification. Implementation of ``full'' justification is optional. If ``full'' justification is not implemented, fully justified captions should be treated as though they are ``left'' justified.

(1) All decoders should implement ``left'', ``right'', and ``center'' caption-text justification. Implementation of ``full'' justification is optional. If ``full'' justification is not implemented, fully justified captions should be treated as though they are ``left'' justified.

(i) For ``left'' justification, decoders should display any portion of a received row of text when it is received. For ``center'', ``right'', and ``full'' justification, decoders may display any portion of a received row of text when it is received, or may delay display of a received row of text until reception of a row completion indicator. A row completion indicator is defined as receipt of a CR, ETX or any other command, except SetPenColor, SetPenAttributes, or SetPenLocation where the pen relocation is within the same row.

(ii) Receipt of a character for a displayed row which already contains text with ``center'', ``right'' or ``full'' justification will cause the row to be cleared prior to the display of the newly received character and any subsequent characters. Receipt of a justification command which changes the last received justification for a given window will cause the window to be cleared.

(2) At a minimum, decoders must support LEFT--TO--RIGHT printing.

(3) At a minimum, decoders must support BOTTOM--TO--TOP scrolling. For windows sharing the same horizontal scan lines on the display, scrolling may be disabled.

(4) At a minimum, decoders must support the same recommended practices for scroll rate as is provided for NTSC closed-captioning.

(5) At a minimum, decoders must support the same recommended practices for smooth scrolling as is provided for NTSC closed-captioning.

(6) At a minimum, decoders must implement the ``snap'' window display effect. If the window ``fade'' and ``wipe'' effects are not implemented, then the decoder will ``snap'' all windows when they are to be displayed, and the ``effect speed'' parameter is ignored.

(h) Window colors and borders. At a minimum, decoders must implement borderless windows with solid, black backgrounds (i.e., border type = NONE, fill color = (0,0,0), fill opacity = SOLID), and borderless transparent windows (i.e., border type = NONE, fill opacity = TRANSPARENT).

(i) Predefined window and pen styles. Predefined Window Style and Pen Style ID's may be provided in the DefineWindow command. At a minimum, decoders should implement Predefined Window Attribute Style 1 and Predefined Pen Attribute Style 1, as shown in Table 4 and Table 5, respectively.

Table 4--Predefined Window Style ID's------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Print Scroll Word Display Effect Effect Fill Border

Style ID  Justify direction direction wrap effect direction speed Fill color opacity Border type color Usage------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------1............................ Left........ Left-to-right Bottom-to-top No..... Snap........ n/a......... n/a........ (0,0,0) Solid...... None....... n/a........ NTSC Style

Black. PopUp

Captions2............................ Left........ Left-to-right Bottom-to-top No..... Snap........ n/a......... n/a........ n/a......... Transparent None....... n/a........ PopUp Captions

w/o Black

Background3............................ Cntr........ Left-to-right Bottom-to-top No..... Snap........ n/a......... n/a........ (0,0,0) Solid...... None....... n/a........ NTSC Style

Black. Centered

PopUp

Captions4............................ Left........ Left-to-right Bottom-to-top Yes.... Snap........ n/a......... n/a........ (0,0,0) Solid...... None....... n/a........ NTSC Style

Black. RollUp

Captions5............................ Left........ Left-to-right Bottom-to-top Yes.... Snap........ n/a......... n/a........ n/a......... Transparent None....... n/a........ RollUp

Captions w/o

Black

Background6............................ Cntr........ Left-to-right Bottom-to-top Yes.... Snap........ n/a......... n/a........ (0,0,0) Solid...... None....... n/a........ NTSC Style

Black. Centered

RollUp

Captions7............................ Left........ Top-to-bottom Right-to-left No..... Snap........ n/a......... n/a........ (0,0,0) Solid...... None....... n/a........ Ticker Tape

Black.------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Table 5--Predefined Pen Style ID's------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Foregrnd Foregrnd Backgrnd Backgrnd

Predefined style ID Pen size Font style Offset Italics Underline Edge type color opacity color opacity Edge color Usage------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------1............................. Stndr........ 0............ Normal....... No....... No.......... None....... (2,2,2) Solid...... (0,0,0) Solid...... n/a........ Default NTSC

White. Black. Style*

2............................. Stndr........ 1............ Normal....... No....... No.......... None....... (2,2,2).... Solid...... (0,0,0) Solid...... n/a........ NTSC Style*

White. Mono w/

Serif3............................. Stndr........ 2............ Normal....... No....... No.......... None....... (2,2,2) Solid...... (0,0,0) Solid...... n/a........ NTSC Style*

White. Black. Prop w/

Serif4............................. Stndr........ 3............ Normal....... No....... No.......... None....... (2,2,2) Solid...... (0,0,0) Solid...... n/a........ NTSC Style*

White. Black. Mono w/o

Serif5............................. Stndr........ 4............ Normal....... No....... No.......... None....... (2,2,2) Solid...... (0,0,0) Solid...... n/a........ NTSC Style*

White. Black. Prop w/o

Serif6............................. Stndr........ 3............ Normal....... No....... No.......... Unifrm..... (2,2,2) Solid...... n/a........ Transparent (0,0,0) Mono w/o

White. Black. Serif,

Bordered

Text, No BG7............................. Stndr........ 4............ Normal....... No....... No.......... Unifrm..... (2,2,2) Solid...... n/a........ Transparent (0,0,0) Prop. w/o

White. Black. Serif,

Bordered

Text, No BG

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*``NTSC Style''--White Text on Black Background

(j) Pen size. (1) Decoders must support the standard, large, and small pen sizes and must allow the caption provider to choose a pen size and allow the viewer to choose an alternative size. The STANDARD pen size should be implemented such that the height of the tallest character in any implemented font is no taller than \1/15\ of the height of the safe-title area, and the width of the widest character is no wider than \1/32\ of the width of the safe-title area for 4:3 displays and \1/42\ of the safe-title area width for 16:9 displays.

(1) Decoders must support the standard, large, and small pen sizes and must allow the caption provider to choose a pen size and allow the viewer to choose an alternative size. The STANDARD pen size should be implemented such that the height of the tallest character in any implemented font is no taller than \1/15\ of the height of the safe-title area, and the width of the widest character is no wider than \1/32\ of the width of the safe-title area for 4:3 displays and \1/42\ of the safe-title area width for 16:9 displays.

(2) The LARGE pen size should be implemented such that the width of the widest character in any implemented font is no wider than \1/32\ of the safe-title area for 16:9 displays. This recommendation allows for captions to grow to a LARGE pen size without having to reformat the caption since no caption will have more than 32 characters per row.

(k) Font styles. (1) Decoders must support the eight fonts listed below. Caption providers may specify 1 of these 8 font styles to be used to write caption text. The styles specified in the ``font style'' parameter of the SetPenAttributes command are numbered from 0 through 7. The following is a list of the 8 required font styles. For information purposes only, each font style references one or more popular fonts which embody the characteristics of the style:

(1) Decoders must support the eight fonts listed below. Caption providers may specify 1 of these 8 font styles to be used to write caption text. The styles specified in the ``font style'' parameter of the SetPenAttributes command are numbered from 0 through 7. The following is a list of the 8 required font styles. For information purposes only, each font style references one or more popular fonts which embody the characteristics of the style:

(i) 0--Default (undefined)

(ii) 1--Monospaced with serifs (similar to Courier)

(iii) 2--Proportionally spaced with serifs (similar to Times New Roman)

(iv) 3--Monospaced without serifs (similar to Helvetica Monospaced)

(v) 4--Proportionally spaced without serifs (similar to Arial and Swiss)

(vi) 5--Casual font type (similar to Dom and Impress)

(vii) 6--Cursive font type (similar to Coronet and Marigold)

(viii) 7--Small capitals (similar to Engravers Gothic)

(2) Font styles may be implemented in any typeface which the decoder manufacturer deems to be a readable rendition of the font style, and need not be in the exact typefaces given in the example above. Decoders must include the ability for consumers to choose among the eight fonts. The decoder must display the font chosen by the caption provider unless the viewer chooses a different font.

(l) Character offsetting. Decoders need not implement the character offsetting (i.e., subscript and superscript) pen attributes.

(m) Pen styles. At a minimum, decoders must implement normal, italic, and underline pen styles.

(n) Foreground color and opacity. (1) At a minimum, decoders must implement transparent, translucent, solid and flashing character foreground type attributes.

(1) At a minimum, decoders must implement transparent, translucent, solid and flashing character foreground type attributes.

(2) At a minimum, decoders must implement the following character foreground colors: white, black, red, green, blue, yellow, magenta and cyan.

(3) Caption providers may specify the color/opacity. Decoders must include the ability for consumers to choose among the color/opacity options. The decoder must display the color/opacity chosen by the caption provider unless the viewer chooses otherwise.

(o) Background color and opacity. (1) Decoders must implement the following background colors: white, black, red, green, blue, yellow, magenta and cyan. It is recommended that this background is extended beyond the character foreground to a degree that the foreground is separated from the underlying video by a sufficient number of background pixels to insure the foreground is separated from the background.

(1) Decoders must implement the following background colors: white, black, red, green, blue, yellow, magenta and cyan. It is recommended that this background is extended beyond the character foreground to a degree that the foreground is separated from the underlying video by a sufficient number of background pixels to insure the foreground is separated from the background.

(2) Decoders must implement transparent, translucent, solid and flashing background type attributes. Caption providers may specify the color/opacity. Decoders must include the ability for consumers to choose among the color/opacity options. The decoder must display the color/opacity chosen by the caption provider unless the viewer chooses otherwise.

(p) Character edges. Decoders must implement separate edge color and type attribute control.

(q) Color representation. (1) At a minimum, decoders must support the 8 colors listed in Table 6.

Table 6--Minimum Color List Table------------------------------------------------------------------------

Color Red Green Blue------------------------------------------------------------------------Black........................................ 0 0 0White........................................ 2 2 2Red.......................................... 2 0 0Green........................................ 0 2 0Blue......................................... 0 0 2Yellow....................................... 2 2 0Magenta...................................... 2 0 2Cyan......................................... 0 2 2------------------------------------------------------------------------

(2)(i) When a decoder supporting this Minimum Color List receives an RGB value not in the list, it will map the received value to one of the values in the list via the following algorithm:

(i) When a decoder supporting this Minimum Color List receives an RGB value not in the list, it will map the received value to one of the values in the list via the following algorithm:

(A) All one (1) values are to be changed to 0.

(B) All two (2) values are to remain unchanged.

(C) All three (3) values are to be changed to 2.

(ii) For example, the RGB value (1,2,3) will be mapped to (0,2,2), (3,3,3) will be mapped to (2,2,2) and (1,1,1) will be mapped to (0,0,0).

(3) Table 7 is an alternative minimum color list table supporting 22 colors.

Table 7--Alternative Minimum Color List Table------------------------------------------------------------------------

Color Red Green Blue------------------------------------------------------------------------Black........................................ 0 0 0Gray......................................... 1 1 1White........................................ 2 2 2Bright White................................. 3 3 3Dark Red..................................... 1 0 0Red.......................................... 2 0 0Bright Red................................... 3 0 0Dark Green................................... 0 1 0Green........................................ 0 2 0Bright Green................................. 0 3 0Dark Blue.................................... 0 0 1Blue......................................... 0 0 2Bright Blue.................................. 0 0 3Dark Yellow.................................. 1 1 0Yellow....................................... 2 2 0Bright Yellow................................ 3 3 0Dark Magenta................................. 1 0 1Magenta...................................... 2 0 2Bright Magenta............................... 3 0 3Dark Cyan.................................... 0 1 1Cyan......................................... 0 2 2Bright Cyan.................................. 0 3 3------------------------------------------------------------------------

(i) When a decoder supporting the Alternative Minimum Color List in Table 7 receives an RGB value not in the list (i.e., an RGB value whose non-zero elements are not the same value), it will map the received value to one of the values in the list via the following algorithm:

(A) For RGB values with all elements non-zero and different--e.g., (1,2,3), (3,2,1), and (2,1,3), the 1 value will be changed to 0, the 2 value will remain unchanged, and the 3 value will be changed to 2.

(B) For RGB values with all elements non-zero and with two common elements--e.g., (3,1,3), (2,1,2), and (2,2,3), if the common elements are 3 and the uncommon one is 1, then the 1 elements is changed to 0; e.g. (3,1,3) [rarr] (3,0,3). If the common elements are 1 and the uncommon element is 3, then the 1 elements are changed to 0, and the 3 element is changed to 2; e.g. (1,3,1) [rarr] (0,2,0). In all other cases, the uncommon element is changed to the common value; e.g., (2,2,3) [rarr] (2,2,2), (1,2,1) [rarr] (1,1,1), and (3,2,3) [rarr] (3,3,3).

(ii) All decoders not supporting either one of the two color lists described above, must support the full 64 possible RGB color value combinations.

(r) Character rendition considerations. In NTSC Closed Captioning, decoders were required to insert leading and trailing spaces on each caption row. There were two reasons for this requirement:

(1) To provide a buffer so that the first and last characters of a caption row do not fall outside the safe title area, and

(2) To provide a black border on each side of a character so that the ``white'' leading pixels of the first character on a row and the trailing ``white'' pixels of the last character on a row do not bleed into the underlying video.

(i) Since caption windows are required to reside in the safe title area of the DTV screen, reason 1 (above) is not applicable to DTVCC captions.

(ii) The attributes available in the SetPenAttributes command for character rendition (e.g., character background and edge attributes) provide unlimited flexibility to the caption provider when describing caption text in an ideal decoder implementation. However, manufacturers need not implement all pen attributes. Thus it is recommended that no matter what the level of implementation, decoder manufacturers should take into account the readability of all caption text against a variety of all video backgrounds, and should implement some automatic character delineation when the individual control of character foreground, background and edge is not supported.

(s) Service synchronization. Service Input Buffers must be at least 128 bytes in size. Caption providers must keep this lower limit in mind when following Delay commands with other commands and window text. In other words, no more than 128 bytes of DTVCC commands and text should be transmitted (encoded) before a pending Delay command's delay interval expires.

(t) Settings. Decoders must include an option that permits a viewer to choose a setting that will display captions as intended by the caption provider (a default). Decoders must also include an option that allows a viewer's chosen settings to remain until the viewer chooses to alter these settings, including periods when the television is turned off. [65 FR 58471, Sept. 29, 2000, as amended at 69 FR 2849, Jan. 21, 2004. Redesignated and amended at 77 FR 19515, 19518, Mar. 30, 2012; 78 FR 39627, July 2, 2013]