Appnotes

Easy Caption Authoring for EEG Encoders

Last Updated April 30, 2020

All EEG closed caption encoders support two primary methods of caption authoring: PassThru Mode and RealTime Mode.

PassThru mode requires users to enter CTA-608 command codes interspersed with their caption text in order to specify caption formatting and positioning. It allows you to enter pop-on, roll-up, or paint-on captions.

RealTime mode, meanwhile, allows you to specify these parameters once, after which you only need to provide the caption text itself. This mode is limited to roll-up captioning. The remainder of this document will focus on RealTime mode.

Entering RealTime Mode

RealTime mode can be entered via any Smart Encoder port on an EEG encoder, including iCap, Telnet, RS-232 serial, and modem. It uses the following format:

<Ctrl+C><Ctrl+A>2 arg1 arg2 arg3 arg4 arg5<CR>

<Ctrl+C> corresponds to the hexadecimal value x03, while <Ctrl+A> corresponds to x01, and <CR>, or carriage-return, corresponds to x0D. arg1 through arg5 are all optional and can consist of the following in any order, insensitive to case:

  • Caption channel
    • cc1, cc2, cc3, or cc4
    • Default: cc1
  • Row count
    • 2, 3, or 4
    • Default: 3
  • Base row
    • b1 through b15
    • b1 refers to the uppermost row on the screen and b15 refers to the lowermost. For 2-row captioning, the effective minimum base row is b2; for 3-row captioning, the effective minimum is b3; and for 4-row captioning, the effective minimum is b4.
  • Grouping mode
    • word or line
    • Default: line
    • In word mode, captions will be encoded one word at a time, delimited by spaces or carriage returns. In line mode, captions will be encoded one line at a time, delimited by carriage returns.
  • Unicode support
    • To enable: utf8
    • To disable: omit argument (default)
    • When this mode is enabled, you can include UTF-8-encoded Unicode code points within your caption text.

For example, in order to enter 4-line roll-up captions into CTA-608 channel CC3 with a base row of 10 (approximately centered, vertically), including non-ASCII characters, and encoding one word at a time, you would use the following command to enter mode:

<Ctrl+C><Ctrl+A>2 4 cc3 b10 utf8 word<CR>

This is equivalent to the following binary sequence:

x03 x01 x32 x20 x34 x20 x63 x63 x33 x20 x62 x31 x30 x20 x75 x74 x66 x38 x20 x77 x6F x72 x64 x0D

Entering Caption Text

Once you have entered RealTime mode with the appropriate set of parameters, you can begin entering caption text. In word grouping mode, each word (delimited by spaces) will be encoded one-at-a-time, as it is entered. Lines will be broken when the per-line character limit (32) is reached, or when a carriage return is entered. If the character limit for a given line is reached in the middle of a word, that word will be moved to the beginning of the next line.

In line grouping mode, all caption text for a given line will be buffered, and will not be encoded until a carriage return is entered.

Completing Caption Entry

When you are finished captioning, <Ctrl+C> (x03) is required to exit captioning mode on the Smart Encoder port you are using.