Вспомогательные данные — это данные, которые были добавлены к заданным данным и используют ту же форму транспорта. Обычными примерами являются изображения обложек для медиафайлов или потоков , или цифровые данные, добавленные к радио- или телепередачам .
Вспомогательные данные (обычно сокращенно ANC-данные ) в контексте телевизионных систем относятся к средствам, которые посредством невидеоинформации (такой как аудио , другие формы сущности и метаданные ) могут быть встроены в последовательный цифровой интерфейс . Вспомогательные данные стандартизированы SMPTE как SMPTE 291M: Ancillary Data Packet and Space Formatting .
Вспомогательные данные могут быть расположены в не-картинных частях горизонтальных строк развертки , известных как Горизонтальные ANCillary данные ( HANC ). Вспомогательные данные также могут быть расположены в не-картинных областях видеокадра , известных как Вертикальные ANCillary данные ( VANC ).
Вспомогательные пакеты данных могут располагаться в любом месте последовательного цифрового потока данных, за исключением следующих случаев:
Пакеты вспомогательных данных обычно делятся на два типа в зависимости от того, где они находятся: определенные типы пакетов часто ограничены тем или иным местом.
Обратите внимание, что пакеты ANC, которые лежат в пространстве данных, которое находится как в горизонтальном , так и в вертикальном интервалах, считаются HANC, а не VANC.
Пакеты VANC следует вставлять следующим образом:
Все пакеты ANC должны начинаться с начальной последовательности; для компонентных интерфейсов (единственный вид последовательного цифрового интерфейса, широко используемый сегодня) начальная последовательность — 0x000 0x3FF 0x3FF. В противном случае эта последовательность недопустима в последовательном цифровом интерфейсе. (В устаревших составных версиях SDI начальная последовательность ANC — это одно слово, 0x3FC).
Три слова следуют сразу за стартовой последовательностью в заголовке. Первое слово после стартовой последовательности — это идентификатор данных или DID , за которым следует либо вторичный идентификатор данных ( SDID ) , либо номер блока данных ( DBN ), за которым следует счетчик данных ( DC ). После слова счетчика данных идут 0–255 (включительно) слова пользовательских данных ( UDW ), за которыми следует слово контрольной суммы ( CS ).
Слово идентификатора данных (вместе с SDID, если используется) указывает тип вспомогательных данных, которым соответствует пакет. Идентификаторы данных находятся в диапазоне от 1 до 255 (FF hex), причем 0 зарезервирован. Поскольку последовательный цифровой интерфейс имеет 10-битный формат, слово DID кодируется следующим образом:
Таким образом, DID 0x61 (01100001) будет закодирован как 0x161 (0101100001), тогда как DID 0x63 (01100011) будет закодирован как 0x263 (1001100011). Обратите внимание, что эта схема кодирования гарантирует, что зарезервированные значения в последовательном цифровом интерфейсе (0-3 и 1020-1023) никогда не будут использоваться.
Если DID равен 128 (0x80) или больше, то пакет является пакетом типа 1 , и DID достаточен для идентификации типа пакета, а следующее слово является номером блока данных. Если DID меньше 128, то это пакет типа 2 , и следующие слова являются вторичным идентификатором данных; DID и SDID вместе идентифицируют тип пакета.
SDID действителен только если DID меньше 0x80. SDID — это номинально 8-битное значение в диапазоне от 0 до 255. Он кодируется таким же образом, как и DID.
Слова DID/SDID 161 101 (шестнадцатеричные) соответствуют DID 61 шестнадцатеричным и SDID 1 (после удаления двух старших битов); эти значения указывают на то, что тип пакета определяется SMPTE 334M и содержит данные скрытых субтитров DTV .
DBN действителен только в том случае, если DID равен 80 hex или больше. Он (опционально) используется для идентификации нескольких пакетов одного типа в поле; каждый последующий пакет указанного типа имеет DBN, который на единицу больше, чем у предыдущего пакета, при необходимости циклически повторяясь. DBN — это 8-битное значение, закодированное таким же образом, как SDID.
Слово Data Count — это 8-битное значение, закодированное таким же образом, как DID, которое указывает, сколько слов пользовательских данных должно следовать. Оно может иметь диапазон от 0 до 255.
Слова пользовательских данных являются «полезной нагрузкой», присутствующей в пакете ANC. Они определяются в соответствии с типом пакета, SMPTE 291M не определяет их использование и не накладывает никаких ограничений на значения, которые могут присутствовать в пространстве UDW. Единственное ограничение заключается в том, что зарезервированные значения в последовательном цифровом интерфейсе (0-3 и 1020-1023) не могут быть включены в UDW. Многие форматы ANC, хотя и не все, по сути являются 8-битными форматами и кодируют данные таким же образом, как кодируются слова заголовка.
SMPTE 352M (Video Payload ID) определяет четыре UDW:
Биты | Байт 1 | Байт 2 | Байт 3 | Байт 4 |
---|---|---|---|---|
Бит 7 | 1 | Чересстрочная (0) или прогрессивная (1) развертка | Сдержанный | Сдержанный |
Бит 6 | 0 | Изображение с чересстрочной (0) или прогрессивной (1) разверткой | Горизонтальная выборка Y´/Y 1920 (0) или 2048 (1) | Сдержанный |
Бит 5 | 0 | Сдержанный | Сдержанный | Сдержанный |
Бит 4 | 0 | Сдержанный | Сдержанный | Динамический диапазон 100% (0ч), 200% (1ч), 400% (2ч), Зарезервировано (3ч) |
Бит 3 | 1 | Скорость передачи изображения (см. таблицу 2 SMPTE 352M) | Структура выборки (см. SMPTE 352M, таблица 3 и примечание 1) | Динамический диапазон 100% (0ч), 200% (1ч), 400% (2ч), Зарезервировано (3ч) |
Бит 2 | 0 | Скорость передачи изображения (см. таблицу 2 SMPTE 352M) | Структура выборки (см. SMPTE 352M, таблица 3 и примечание 1) | Сдержанный |
Бит 1 | 0 | Скорость передачи изображения (см. таблицу 2 SMPTE 352M) | Структура выборки (см. SMPTE 352M, таблица 3 и примечание 1) | Разрядность 8 бит (0h), 10 бит (1h), 12 бит (2h), зарезервировано (3h) |
Бит 0 | 1 | Скорость передачи изображения (см. таблицу 2 SMPTE 352M) | Структура выборки (см. SMPTE 352M, таблица 3 и примечание 1) | Разрядность 8 бит (0h), 10 бит (1h), 12 бит (2h), зарезервировано (3h) |
Последнее слово в пакете ANC — это слово контрольной суммы. Оно вычисляется путем вычисления суммы (по модулю 512) битов 0-8 (не бита 9) всех остальных слов в пакете ANC, за исключением последовательности начала пакета. Затем бит 9 слова контрольной суммы определяется как инверсия бита 8. Обратите внимание, что слово контрольной суммы не содержит бит четности; вместо этого биты четности других слов включаются в расчеты контрольной суммы.
Встроенный звук — это полезная звуковая нагрузка, которая (обычно) представляет собой звуковую дорожку (музыку, диалоги и звуковые эффекты) для видеопрограммы. Два стандарта, SMPTE 272M (для SD) и SMPTE 299M (для HD и 3G), определяют, как звук встраивается во вспомогательное пространство. Стандарты SD и HD предусматривают до 16 каналов звука PCM, в то время как 3G допускает до 32 каналов, обычно закодированных в формате AES3 . В HD встроенные пакеты аудиоданных переносятся в пространстве HANC параллельного потока данных Cb/Cr (цветность).
Кроме того, оба стандарта определяют пакеты управления аудио . Пакеты управления аудио переносятся в пространстве HANC параллельного потока данных Y (яркость) и вставляются один раз в поле на второй видеостроке после точки переключения (см. SMPTE RP168 для точек переключения различных видеостандартов). Пакет управления аудио содержит связанные со звуком метаданные, такие как его синхронизация относительно видео, какие каналы присутствуют и т. д.
Встроенные аудиопакеты — это пакеты типа 1.
Пакеты EDH используются для обнаружения ошибок в интерфейсах стандартной четкости (они не нужны в интерфейсах HD, поскольку интерфейс HD-SDI включает встроенные контрольные слова CRC ).