EIA-608, также известный как «субтитры 21 строки» и «CEA-608», когда-то был стандартом для скрытых субтитров для NTSC ТВ вещания в США. Штаты, Канада и Мексика. Он также определяет «расширенную службу данных», которая является средством для включения службы управления видеомагнитофоном с электронным программным обеспечением для передач NTSC, которое работает в поле четной строки 21, аналогично на VPS на основе TeleText, который работает на линии 16, которая используется в странах PAL.
Он был разработан Electronic Industries Alliance и по закону должен быть реализован в большинстве телевизионных приемников, производимых в США.
Субтитры EIA-608 передаются либо в нечетных, либо в четных полях строки 21 с битом нечетной четности в невидимой активной области видеоданных в трансляциях NTSC, а также иногда присутствуют в данные пользователя изображения в ATSC передачах. Он использует фиксированную полосу пропускания 480 бит / с на строку 21 поле для максимум 32 символов в строке на заголовок (максимум четыре заголовка) для широковещательной передачи из 30 кадров. Заголовки нечетных полей относятся к основной звуковой дорожке, а заголовки четных полей относятся к SAP или вторичной звуковой дорожке, которая обычно является переводом основного звука на второй язык, например, переводом англоязычного телешоу на французский или испанский язык.
Необработанные пары байтов заголовка EIA-608 становятся все менее распространенными, поскольку цифровое телевидение заменяет аналоговое. Вместо этого широковещательные передачи ATSC используют протокол заголовков EIA-708 для инкапсуляции как пар заголовков EIA-608, так и для добавления собственного потока EIA-708. В EIA-608 были внесены изменения с добавлением расширенных наборов символов для полной поддержки представления испанского, французского, немецкого языков и других западноевропейских языков. EIA-608 также был расширен для поддержки двухбайтовых символов для корейского и японского рынков. Полная версия EIA-708 поддерживает большее количество наборов символов и улучшенные параметры позиционирования заголовков; однако из-за существующего оборудования EIA-608 и изменений формата, в реальном мире формат практически не использовался, кроме простых встроенных преобразований 608 в 708.
EIA-608 определяет четыре канала информации о субтитрах, так что программа может, например, иметь субтитры на четырех разных языках. В каждом из двух полей кадра есть два канала, которые по стандарту называются 1 и 2. Однако каналы часто представляются пользователям просто с номерами CC1-2 для нечетного поля и CC3-4 для четного поля. Однако из-за ограничений полосы пропускания для любого поля используются только CC1 и CC3, что означает, что второй канал использовался мало. Ранние испанские субтитры вещания SAP сначала использовали второй канал CC2, потому что оригинальные декодеры субтитров считывали только первое нечетное поле, но позже переключились на использование CC3 по причинам пропускной способности. По тем же причинам пропускной способности XDS никогда не использовался испаноязычными станциями.
В каждом канале есть два потока информации, которые можно рассматривать как подканалы: один несет «титры», а другой - «текст». Последний не используется широко из-за отсутствия поддержки оборудования и пропускной способности. Текст передается с помощью текстовых команд и может использоваться для форматированной строки URL с 16-битной контрольной суммой, которая обозначает веб-сайт, к которому относятся заголовки, или канал связи локальной станции.
Это распределение основано на эталонной модели протокола OSI :
CC Layers | OSI Layers | DVB / MXF Layers | Комментарии | |
---|---|---|---|---|
Приложение | Интерпретация | Выдача команд и добавление текста к строкам | ||
Представление | Кодирование | Разделение отдельных команд и символов | ||
Сеанс | Канал | Поток байтов канала | ||
- | Выбор | Сборка канала CC из пар байтов CC | ||
Внедрение | Транспорт | Синхронизация | Пары байтов CC извлекаются / синхронизируются с / из видеокадров | |
Сеть | неиспользуемые | напрямую подключенная ссылка | ||
Ссылка | видеокадры или данные VBI, разделенные из формата канала | |||
Tv | Физический формат канала | , демодулированный / полученный из передачи / источника |
Структура пользовательских данных, следующая за заголовком H.262 GOP, выглядит следующим образом (то же самое применимо после заголовка ISO / IEC 14496-2 GOP):
Длина | Имя | Тип | По умолчанию |
---|---|---|---|
32 бита | user_data_start_code | шаблонный bslbf | 0x000001B2 |
16 бит | идентификатор_пользователя | ASCII bslbf | CC |
8 бит | код_типа_пользователя | uimsbf | 1 |
8 бит | caption_block_size | инвертированный uimsbf | 0xf8 |
1 бит | caption_odd_field_first | флаг | 1 |
1 бит | caption_filler | выравнивание | 0 |
5 бит | caption_block_count | uimsbf | 15 |
1 бит | caption_extra_field_added | флаг | 0 |
X * 24 бита | caption_block | двоичный | произвольная форма |
bslbf: битовая строка, сначала левый бит; uimsbf: целое число без знака, первый старший бит
Блоки заголовков вставляются после последовательности и заголовков GOP, поэтому каждый блок предназначен для одной секунды видео, что в конечном итоге будет одной или двумя длинными строками или тремя-четырьмя короткими строки текста. Также это означает, что если caption_block_count больше 30, то блок содержит оба поля с чередованием заголовков, и можно определить частоту кадрирования из caption_block_count. Однако, поскольку данные сгруппированы вместе, частота кадров почти всегда будет 30 / 1,001, в отличие от метода ATSC, который вставляет одну пару байтов для каждого поля после заголовка изображения, что делает возможными частоту кадрирования 24 / 1,001 для контента HD. Поскольку, когда декодер выполняет преобразование 3: 2 для вывода NTSC, титры остаются синхронизированными.
Длина | Имя | Тип | По умолчанию |
---|---|---|---|
7 бит | caption_filler | выравнивание | 0x7f |
1 бит | caption_odd_field | uimsbf | 1 или 0 |
8 бит | caption_first_byte | нечетная четность uimsbf | 0x80 |
8 бит | caption_second_byte | нечетная четность uimsbf | 0x80 |
Пакетная структура, которая вставляется перед видеопакетом H.222, выглядит следующим образом для кадра связанного видео:
Длина | Имя | Тип | По умолчанию |
---|---|---|---|
32 бита | private_stream_1_start_code | шаблонный bslbf | 0x000001BD |
16 бит | PES_packet_length | uimsbf | 176 |
2 бита | версия PES | uimsbf | 2 |
1 бит | флаг PES_priority | 0 | |
2 бита | PES_scrabing_control | uimsbf | 0 |
1 бит | индикатор_выравнивания данных | флаг | 1 |
2 бита | авторское право. оригинал | uimsbf | 0 |
2 бита | PTS_DTS _flag | uimsbf | 2 |
6 бит | различные_PES_flags | uimsbf | 0 |
8 бит | PES_header_data_length | uimsbf | 36 |
40 бит | PTS | uimsbf | меняется |
248 бит | stuffing_bytes | uimsbf | 255 |
8 бит | идентификатор_данных | uimsbf | 153 |
8 бит | data_unit_id | uimsbf | 197 |
8 бит | длина_данных_данных | uimsbf | 3 |
2 бита | зарезервированное_будущее_использование | uimsbf | 3 |
1 бит | field_parity (CC1 / 2) | flag | 0 |
5 бит | line_offset | uimsbf | 21 |
16 бит | closed_captioning_data_block | uimsbf | 608 caption |
8 бит | data_unit_id | uimsbf | 197 |
8 бит | длина_блока данных | uimsbf | 3 |
2 бита | зарезервированное_использование в будущем | uimsbf | 3 |
1 бит | field_parity (CC3 / 4 / XDS) | флаг | 1 |
5 бит | смещение_строчки | uimsbf | 21 |
16 бит | closed_captioning_data_block | uimsbf | 608 captio n |
8 бит | data_unit_id | uimsbf | 255 |
8 бит | data_unit_length | uimsbf | 124 |
124 * 8 бит | байты заполнения | uimsbf | 255 |
bslbf: битовая строка, сначала левый бит; uimsbf: целое число без знака, первый старший бит
Эта структура была разработана для любых цифровых данных VBI и оптимизирована для переноса трех или более 43-байтовых пакетов телетекста. например заголовок страницы и две связанные строки. Для субтитров телетекста data_unit_id имеет значение 3. В этой форме титры должны быть разделены на пары байтов, распределенных по кадрам в одной секунде видео, а не сгруппированы в один блок, как в структуре DVD. То же самое верно и для субтитров телетекста, содержащих более одной строки текста.
Пакетная структура, вставляемая перед активным видеокадром SMPTE 259M или MXF основной видеопакет кодируется следующим образом для кадра связанного видео:
Длина | Имя | Тип | По умолчанию |
---|---|---|---|
16 или 128 бит | ancillary_flag или. ancillary_header | шаблонный bslbf или. 7 uimsbf | 0xFFFF или. меняется |
8 бит | data_id | uimsbf | 97 |
8 бит | secondary_data_id | uimsbf | 2 |
8 бит | data_count | uimsbf | меняется |
X * 24 бита | caption_data_block | двоичный | в произвольной форме |
bslbf: битовая строка, сначала левый бит; uimsbf: целое число без знака, первый старший бит
Эта структура была разработана для любого цифрового звука или метаданных, которые должны синхронизироваться с видеокадром. SDI транспортирует каждые восемь битов в 10-битовом выровненном пакете, в отличие от MXF, выровненного по байтам, а байты вспомогательных флагов заменены 128-битным заголовком.
Длина | Имя | Тип | По умолчанию |
---|---|---|---|
1 бит | caption_odd_field. (CC1 / 2 = 1; CC3 / 4 = 0) | флаг | 1 |
2 бита | caption_reserved | uimsbf | 0 |
5 бит | caption_line_offset | uimsbf | 15 |
8 бит | caption_first_byte | нечетная четность uimsbf | 0x80 |
8 бит | caption_second_byte | нечетная четность uimsbf | 0x80 |
Формат потока данных EIA-608 включает расширенную службу данных (XDS), различную информацию о трансмиссии. Это все необязательно:
Есть три набора символов, которые поток EIA-608 может направлять получателю для отображения: основные символы, специальные символы и расширенные символы. Одна двухбайтовая команда EIA-608 (представленная одной строкой VBI) может указывать два основных символа, один специальный символ или один расширенный символ.
Расширенные символы являются более поздним дополнением к стандарту, и их декодирование не является обязательным.
EIA-608 обеспечивает элементы управления цветом переднего и заднего планов текста, подчеркиванием, миганием и курсивом. Цветовая схема по умолчанию - белые символы на черном фоне, все непрозрачные.
Специальный символ «Прозрачное пространство» подразумевает прозрачный фон даже при отсутствии каких-либо команд управления фоном. Поскольку передний план этого символа - пустое пространство, это действительно означает пробел в тексте закрытой подписи.
Используется либо для заполнения строки поля, когда субтитры не отправляются, либо для расширенной службы данных.
+ - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + пустая площадка | P | 0 | 0 | 0 | 0 | 0 | 0 | 0 | | P | 0 | 0 | 0 | 0 | 0 | 0 | 0 | Метаданные XDS | P | 0 | 0 | 0 | КЛАСС | | P | 0 | 0 | 0 | ТИП | + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + 15 8 7 0 15 8 7 0
Команда с битами 13 или 14 on указывает получателю отображать два основных символа в текущей позиции курсора для текущего режима (закрытый заголовок или текст). Каждый символ представляет собой кодовую точку (идентифицирует отображаемый символ) следующим образом.
+ - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + модифицированный 7-битный ASCII | P | CHARACTER1 | | P | CHARACTER2 | + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + 15 8 7 0
Код практически идентичен ASCII; исключения показаны красным.
|
|
|
В таблице выше SB представляет ts сплошной блок. Апостроф (код 27), который, возможно, изначально задумывался как нейтральный апостроф, как в ASCII, теперь рекомендуется отображать как правую одинарную кавычку (Unicode U + 2019). Для нейтральных одинарных кавычек / апострофов следует использовать простые одинарные кавычки из расширенного набора символов.
Единственное реальное использование этого набора в Северной Америке - это использование символа восьмой ноты для обозначения перехода от разговорного диалога к пению или музыкальным сценам.
При переводе EIA-608 в телетекст для стран, совместимых с PAL, приемлемой практикой вещания является замена этого символа на знак числа из-за его сходства с диезом.
Команда для отображения специального символа имеет первый байт 0x11 или 0x19 (в зависимости от канала). Второй байт - это кодовая точка в диапазоне 0x30-0x3F, как показано ниже.
+ - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + | P | 0 | 0 | 1 | C | 0 | 0 | 1 | | P | 0 | 1 | 1 | СИМВОЛ | + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + 15 8 7 0 P = нечетная четность; C = переключатель второго канала
|
TM - сокращение от незарегистрированного товарного знака. и должен быть представлен в виде надстрочного индекса (™). TS в приведенной выше таблице представляет собой «прозрачный пробел» или неразрывный пробел. Наконец, Восьмая нота (♪) используется для обозначения пения или фоновой музыки в субтитрах.
+ - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + | P | 0 | 0 | 1 | C | 0 | 1 | S | | P | 0 | 1 | ПЕРСОНАЖ | + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + 15 8 7 0 P = нечетная четность; C = переключатель второго канала; S = переключатель набора символов
Эти расширенные наборы символов используются редко, поскольку в большинстве европейских стран используется система телетекста BBC Ceefax.
Система Ceefax более подвержена символьным ошибкам из-за большего числа битов данных (337 против 16), закодированных на одно поле VBI, эти ошибки возникают либо в подверженных шумам аналоговых передачах или соединениях.
Второй байт - это кодовая точка в диапазоне 0x20-0x3F выглядит следующим образом:
|
|
|
|
SM - это сокращение от знак обслуживания и должно быть представлено в надстрочный индекс. Одиночные кавычки - это фигурные влево, а двойные кавычки - фигурные влево и вправо. Знаки плюс относятся к верхнему левому, верхнему правому, нижнему левому и нижнему правому углам для чертежа рамки.
При использовании все стандартные и расширенные наборы символов не используются. Для следующих предопределенных наборов необходимо соблюдать осторожность, чтобы не имитировать никакие управляющие команды. Это расширение, представленное в ЦИК Норпаком, который сделал аналогичное расширение формата телетекста для китайского рынка. Основное использование было обеспечение субтитров с двухбайтовым кодом для японского, тайваньского и южнокорейского рынков. Команда переключения наборов символов имеет первый байт 0x17 или 0x1F (в зависимости от канала). Второй байт является ссылкой на набор символов в диапазоне 0x24-0x2A следующим образом:
+ - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + | P | 0 | 0 | 1 | C | 1 | 1 | 1 | | P | 0 | 1 | 0 | CHARSET | + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + 15 8 7 0
|
Биты 15 и 7 всегда являются битами нечетной четности. Бит 11 всегда является битом канала.
Код адреса преамбулы с маскирующими битами 15,11 и 7, как уже определено выше, можно интерпретировать из следующей таблицы
bits | интерпретации |
---|---|
14-13 | всегда 0 |
12 | всегда 1 |
10-8 | индикатор позиции строки |
6 | всегда 1 |
5 | индикатор позиции строки |
4-1 | индикатор текстового атрибута |
0 | индикатор подчеркивания |
.
Стандартный адрес и стиль преамбулы строки (строка 11 по умолчанию = 0, верхние строки 1-4 = 1-2, нижние строки 12-13 = 3) + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + стиль преамбулы | P | 0 | 0 | 1 | C | 0 | ROW | | P | 1 | N | 0 | СТИЛЬ | U | адрес преамбулы | P | 0 | 0 | 1 | C | 0 | ROW | | P | 1 | N | 1 | CURSR | U | + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + 15 8 7 0 15 8 7 0 Расширенный адрес и стиль преамбулы строки (нижние строки 14-15 = 0, средние строки = 5-10 = 1- 3) + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + стиль преамбулы | P | 0 | 0 | 1 | C | 1 | ROW | | P | 1 | N | 0 | СТИЛЬ | U | адрес преамбулы | P | 0 | 0 | 1 | C | 1 | ROW | | P | 1 | N | 1 | CURSR | U | + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + 15 8 7 0 15 8 7 0 P = нечетная четность; C = переключатель второго канала U = переключатель подчеркивания; N = переключатель следующей строки вниз (если стиль или позиция курсора не заданы, по умолчанию используется обычный белый текст с черным фоном при курсоре = 0, курсор - кратный 4) перечисления стилей текста: {белый = 0, зеленый, синий, голубой, красный, желтый, пурпурный, белый курсив}
Биты строки определяют, какая из пятнадцати экранных строк должна содержать текст заголовка: строка 11 (0000), 1 (0010), 2 (0011), 3, 4, 12, 13, 14, 15, 5, 6, 7, 8, 9 или 10 (1111).
Биты атрибутов допускают 16 возможных вариантов: белый (0000), зеленый, синий, голубой, красный, желтый, пурпурный, курсив, отступ 0, отступ 4, отступ 8, отступ 12, отступ 16, абзац 20, абзац 24, абзац 28 (1111).
Для кода средней линии это следующие: биты 14, 13, 10, 9, 6 и 4 всегда равны 0, биты 12, 8 и 5 всегда равны 1. Биты 3, 2 и 1 формируют цвет. атрибут 0001X10X (см. список атрибутов). Бит 0 указывает на подчеркивание.
Изменение стиля средней строки (стиль остается в силе до следующего изменения или до конца строки, о котором сигнализирует элемент управления или преамбула) + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + цвет bg | P | 0 | 0 | 1 | C | 0 | 0 | 0 | | P | 0 | 1 | 0 | ЦВЕТ | T | стиль середины | P | 0 | 0 | 1 | C | 0 | 0 | 1 | | P | 0 | 1 | 0 | СТИЛЬ | U | + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + 15 8 7 0 15 8 7 0 + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + no bg | P | 0 | 0 | 1 | C | 1 | 1 | 1 | | P | 0 | 1 | 0 | 1 | 1 | 0 | 1 | черный текст | P | 0 | 0 | 1 | C | 1 | 1 | 1 | | P | 0 | 1 | 0 | 1 | 1 | 1 | U | + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + + - + - + - + - + - + - + - + - + 15 8 7 0 15 8 7 0 P = нечетная четность; C = переключатель второго канала T = частично прозрачный; U = подчеркивание переключить нумерацию цветов bg: {белый = 0, зеленый, синий, голубой, красный, желтый, пурпурный, черный}
Для других управляющих кодов это следующие: биты 14, 13, 9, 6 и 4 всегда равны 0, биты 12, 10 и 5 всегда равны 1. Бит 8 выбирает между строками 21 и 284. Биты 3, 2, 1 и 0 определяют конкретное действие.
Командные биты допускают 16 возможностей, а именно: возобновление загрузки заголовка (0000), возврат (0001), удаление до конца строки (0100), 2-строчные свернутые заголовки, 3 сворачиваемых заголовков. строки, сводные титры 4 строки, мигают (0,25 секунды один раз в секунду), возобновляют прямое добавление титров, перезапуск текста, возобновление отображения текста, стирание отображаемой памяти, возврат каретки, стирание неотображаемой памяти, конец заголовка (1111).
Для вкладок они следующие: биты 14, 13, 6, 4, 3, 2 всегда равны 0, биты 12, 10, 9, 8, 5 всегда равны 1. Биты 1 и 0 определяют номер смещений вкладок.
Учитывая, что бит четности уже проигнорирован, шестнадцатеричное значение имеет 2 байта данных, следующая команда:
cc_data 0 (шестнадцатеричный) | cc_data 0 (двоичный) | cc_data 1 ( шестнадцатеричный) | cc_data 1 (двоичный) | Команда |
---|---|---|---|---|
0x14 (CC1) или 0x1c (CC2) или. 0x15 (CC3) или 0x1D (CC4) | 0001C10F | 0x20 | 00100000 | возобновить загрузку подписи. (начать буферизованный текст подписи) |
0x14 (CC1) или 0x1c (CC2) или. 0x15 (CC3) или 0x1D (CC4) | 0001C10F | 0x21 | 00100001 | backspace. (перезаписать последний символ) |
0x14 ( CC1) или 0x1c (CC2) или. 0x15 (CC3) или 0x1D (CC4) | 0001C10F | 0x22 | 00100010 | аварийный сигнал выключен. (не используется) |
0x14 (CC1) или 0x1c (CC2) или. 0x15 (CC3) или 0x1D (CC4) | 0001C10F | 0x23 | 00100011 | аварийный сигнал на. (не используется) |
0x14 (CC1) или 0x1c (CC2) или. 0x15 (CC3) или 0x1D (CC4) | 0001C10F | 0x24 | 00100100 | удалить до конца строки. (чистая строка) |
0x14 (CC1) или 0x1c (CC2) или. 0x15 (CC 3) или 0x1D (CC4) | 0001C10F | 0x25 | 00100101 | свернуть 2. (размер прокрутки) |
0x14 (CC1) или 0x1c (CC2) или. 0x15 (CC3) или 0x1D (CC4) | 0001C10F | 0x26 | 00100110 | свернуть 3. (размер прокрутки) |
0x14 (CC1) или 0x1c (CC2) или. 0x15 (CC3) или 0x1D (CC4) | 0001C10F | 0x27 | 00100111 | свернуть 4. (размер прокрутки) |
0x14 (CC1) или 0x1c (CC2) или. 0x15 (CC3) или 0x1D (CC4) | 0001C10F | 0x28 | 00101000 | мигает титрами на. (0,25 секунды один раз в секунду) |
0x14 (CC1) или 0x1c (CC2) или. 0x15 (CC3) или 0x1D (CC4) | 0001C10F | 0x29 | 00101001 | возобновить прямое добавление субтитров. (начальный текст субтитров) |
0x14 (TXT1) или 0x1c (TXT2) или. 0x15 (TXT3) или 0x1D (TXT4) | 0001C10F | 0x2A | 00101010 | перезапуск текста. (начальный текст без подписи) |
0x14 (TXT1) или 0x1c (TXT2) или. 0x15 (TXT3) или 0x1D (TXT4) | 0001C10F | 0x2B | 00101011 | возобновить текстовое сообщение воспроизвести. (возобновить текст без подписей) |
0x14 (CC1) или 0x1c (CC2) или. 0x15 (CC3) или 0x1D (CC4) | 0001C10F | 0x2C | 00101100 | очистить память дисплея. (очистить экран) |
0x14 (CC1) или 0x1c (CC2) или. 0x15 (CC3) или 0x1D (CC4) | 0001C10F | 0x2D | 00101101 | возврат каретки. (прокрутка строк вверх) |
0x14 (CC1) или 0x1c (CC2) или. 0x15 (CC3) или 0x1D (CC4) | 0001C10F | 0x2E | 00101110 | очистить не отображаемую память. (очистить буфер) |
0x14 (CC1) или 0x1c (CC2) или. 0x15 (CC3) или 0x1D (CC4) | 0001C10F | 0x2F | 00101111 | конец заголовка. (буфер дисплея) |
0x17 (CC1 / 3) или 0x1F (CC2 / 4) | 0001C111 | 0x21 | 00100001 | смещение табуляции 1. (добавить интервал) |
0x17 (CC1 / 3) или 0x1F (CC2 / 4) | 0001C111 | 0x22 | 00100010 | tab offset 2. (add spacing) |
0x17 (CC1/3) or 0x1F (CC2/4) | 0001C111 | 0x23 | 00100011 | tab offset 3. (add spacing) |