708Features

From Web Media Text Tracks Community Group

Features of the CEA-708 specification

Thanks to Ken Harrenstien from Google for sharing his analysis of the features in CEA-708 with us.

You can buy the latest spec at CEA-708-D if you care for more details.

The various concepts in 708 that need to be represented are as follows.

The five major components of CEA-708 captioning are:

  • Caption Screen: The Caption Screen is the canvas on which caption windows are displayed.
  • Caption Windows: Caption Windows are the areas within which caption text is displayed.
  • Caption Pens: Caption Pens define styles and attributes for the appearance of the text within the caption windows.
  • Caption Text: The Caption Text component defines how text is encoded and directed to specific windows.
  • Caption Synchronization: The Caption Synchronization component controls the flow of interpretation of commands and caption text within the independent service data streams.


Caption Screen (the video viewport)

Grid cell setup (Size ratio) - Not knowable in advance without knowing program content.

  • 16:9 - 210 horiz x 75 vert
  • 4:3 - 160 horiz x 75 vert
  • other - 100 horiz x 100 vert

Coordinates are (horiz, vert). (0,0) is top left corner.

  • Eg 16:9 corners are (0,0), (209,0), (0,74), (209,74)

NOTE: grid cells are for positioning WINDOWS, not text!


Caption Windows (rendering region)

Properties of a "Window" (up to 8, identified by winId value 0-7):

  • Window Priority (0-7). Lower # overlays higher #.
  • Anchor point (9 possibs)
        Anchor ID 0-8 refers to:
	0 top-left corner
	1 top middle
	2 top-right corner
	3 left middle
	4 middle/center
	5 right middle
	6 bottom left corner
	7 bottom middle
	8 bottom right corner
  • Anchor location on grid (horiz, vert), thus window location
  • Size in terms of character rows & cols.
        Max # rows is 15, max # cols is 32.
	Physical size of window depends on lots of other things.
  • Locked/unlocked rows/cols
        If rows unlocked, decoder can change # of displayed rows.
        If cols unlocked, decoder can change # of displayed cols.
	Normally both are locked.
  • Text justification
        LEFT - justified to start of row
	RIGHT - justified to end of row
	CENTERED
	FULL - aligned to start and end margins
  • Text print direction
        Left->Right
	Right->Left
	Top->Bottom
	Bottom->Top
  • Text scroll direction
        Same options as text print direction, but only
	certain combinations of print and scroll direction
	are allowed.
	Horizontal scrolling allowed only with vertical print dir.
	Vertical scrolling allowed only with horizontal print dir.
  • Display Effect
        Effect to use when a window is displayed or hidden:
	- Snap on/off
	- Fade on/off
	- Wipe on/off
	    - left-to-right
	    - right-to-left
	    - top-to-bottom
	    - bottom-to-top
  • Border type
        - None
	- Raised
	- Depressed
	- Uniform
	- Drop-shadowed
	    - Left
	    - Right
  • Background color
        - Clear
	- Colored (64 color palette)
	    - translucent
	    - solid
	    - flashing

Caption Pen (cue text attributes)

  • Font size (user modifiable)
        3 sizes: SMALL, STANDARD, LARGE
  • Font (8 standard)
        8 standard styles:
	    0 - Default (undefined)
	    1 - Monospaced serif (Courier)
	    2 - Proportionally spaced serif (Times New Roman)
	    3 - Monospaced sans serif (Helvetica Monospaced)
	    4 - Proportionally sans serif (Arial, Swiss)
	    5 - Casual font type (Dom, Impress)
	    6 - Cursive font type (Coronet, Marigold)
	    7 - Small capitals (Engravers Gothic)
        Plus pen styles:
	    - Italicized
	    - Underlined
  • Character offsetting
        - normal (no offset)
	- subscript (offset vertically downward)
	- superscript (offset vertically upward)
  • Foreground color & opacity
     Same options as for window background
  • Background color & opacity
        Each char has a small rectangular box for background, distinct from that of the window.
        - Same options as for window background
  • Char Border type
        - NONE, RAISED, DEPRESSED, UNIFORM, DROP_SHADOWED
  • Char Border color
        - Same options as for window background
  • Caption text function tags (yikes!)
        0 - Dialog (normal)
	1 - Source or speaker ID
	2 - Electronically reproduced voice
	3 - Dialog in a lang other than the primary lang
	4 - Voiceover
	5 - Audible translation
	6 - Subtitle translation
	7 - Voice quality
	8 - Song lyrics
	9 - Sound effect description
	10 - Musical score description
	11 - Expletive
	12 - undef
	13 - undef
	14 - undef
	15 - Text not to be displayed (reserved for future uses)

Pre-defined Window and Pen attribute sets

  • 7 sets for both, specified in Recommendations.

Caption Text

  • No explicit "Text Write" command. Anything not a command is text to be written into the current window using the current pen.
  • 4 glyph sets defined by 708 (see full desc farther down)
        G0 - ASCII
	G1 - ISO 8859-1
	G2 - Misc chars
	G3 - icon / reserved

Caption Synchronization

In 708, normally real-time, but can buffer commands in advance for later execution using "Delay" command (max 25.5 sec). Not needed if we provide explicit timecodes.

User Options:

User is allowed to override these things:

  • caption font size
  • caption color
  • caption intensity (brightness)