ГОСТ Р 56954-2016
НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
ТЕЛЕВИДЕНИЕ ВЕЩАТЕЛЬНОЕ ЦИФРОВОЕ
Спецификация транспортировки синхронизированных вспомогательных данных в транспортных потоках DVB
Digital Video Broadcasting. Specification for the carriage of synchronized auxiliary data in DVB transport streams
ОКС 33.170
ОКП 657400
Дата введения 2017-06-01
Предисловие
1 РАЗРАБОТАН Автономной некоммерческой организацией "Научно-технический центр информатики" (АНО "НТЦИ")
2 ВНЕСЕН Техническим комитетом по стандартизации ТК 480 "Связь"
3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 7 июня 2016 г. N 547-ст
4 Настоящий стандарт разработан с учетом основных нормативных положений стандарта Европейского института по стандартизации в области телекоммуникаций (ETSI) ЕТСИ ТС 102 823 V1.2.1 (2014-01)* "Телевидение вещательное цифровое. Спецификация транспортировки синхронизированных вспомогательных данных в транспортных потоках DVB" [ETSI TS 102 823 V1.2.1 (2014-01) "Digital Video Broadcasting (DVB); Specification for the carriage of synchronized auxiliary data in DVB transport streams", NEQ]
________________
* Доступ к международным и зарубежным документам, упомянутым в тексте, можно получить, обратившись в Службу поддержки пользователей. - .
5 ВВЕДЕН ВПЕРВЫЕ
Правила применения настоящего стандарта установлены в ГОСТ Р 1.0-2012 (раздел 8). Информация об изменениях к настоящему стандарту публикуется в ежегодном (по состоянию на 1 января текущего года) информационном указателе "Национальные стандарты", а официальный текст изменений и поправок - в ежемесячном информационном указателе "Национальные стандарты". В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ближайшем выпуске ежемесячного информационного указателя "Национальные стандарты". Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (www.gost.ru)
1 Область применения
Настоящий стандарт определяет спецификацию транспортировки синхронизированных вспомогательных данных в транспортных потоках DVB для их синхронизации со стороны приемника с видео- и аудиопотоками. Данный стандарт применим к различным потокам вспомогательных данных, таким как телетекст, субтитры и прочее, передаваемых в составе транспортного потока MPEG.
Требования настоящего стандарта следует учитывать при разработке, изготовлении и эксплуатации оборудования DVB.
2 Нормативные ссылки
В настоящем стандарте использованы нормативные ссылки на следующие стандарты:
ГОСТ Р 52210-2004 Телевидение вещательное цифровое. Термины и определения
ГОСТ Р 52591-2006 Система передачи данных пользователя в цифровом телевизионном формате. Основные параметры
ГОСТ Р 54994-2012 Телевидение вещательное цифровое. Передача служб DVB по сетям с IP протоколами. Общие технические требования
Примечание - При пользовании настоящим стандартом целесообразно проверить действие ссылочных стандартов в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет или по ежегодному информационному указателю "Национальные стандарты", который опубликован по состоянию на 1 января текущего года, и по выпускам ежемесячного информационного указателя "Национальные стандарты" за текущий год. Если заменен ссылочный стандарт, на который дана недатированная ссылка, то рекомендуется использовать действующую версию этого стандарта с учетом всех внесенных в данную версию изменений. Если заменен ссылочный стандарт, на который дана датированная ссылка, то рекомендуется использовать версию этого стандарта с указанным выше годом утверждения (принятия). Если после утверждения настоящего стандарта в ссылочный стандарт, на который дана датированная ссылка, внесено изменение, затрагивающее положение, на которое дана ссылка, то это положение рекомендуется применять без учета данного изменения. Если ссылочный стандарт отменен без замены, то положение, в котором дана ссылка на него, рекомендуется применять в части, не затрагивающей эту ссылку.
3 Термины, определения и сокращения
3.1 В настоящем стандарте применены термины по ГОСТ Р 52210, ГОСТ Р 52591, ГОСТ Р 54994, а также следующие термины с соответствующими определениями:
3.1.1 вещательная временная диаграмма (broadcast timeline): Поток данных, который переносит временную диаграмму контента метаданных во время передачи элементов контента.
3.1.2 временная диаграмма контента метаданных (metadata content timeline): Концептуальный прогресс времени, присущий элементу контента, который может быть отнесен к метаданным и доставлен вещательной временной диаграммой.
3.1.3 временная база (timebase): Тип данных, используемых в метаданных спецификации TV-Anytime ("ТВ в любое время") с целью привязки временной диаграммы контента метаданных к элементу контента.
3.2 В настоящем стандарте применены следующие сокращения:
CRC - контроль циклическим избыточным кодом (Cyclic Redundancy Check);
DVB - телевидение вещательное цифровое (Digital Video Broadcasting);
ETSI - Европейский институт по стандартизации в области телекоммуникаций (European Telecommunications Standards Institute);
MPEG - экспертная группа по движущемуся изображению; стандарт сжатия видео- и аудиоданных (Moving Picture Experts Group);
NTP - время нормального воспроизведения (Normal Play Time);
PES - пакетизированный элементарный поток (Packetized Elementary Stream);
PID - идентификатор пакета (Packet Identifier);
PMT - таблица состава программы (Program Map Table);
PSI - информация, относящаяся к программе (Program Specific Information);
PTS - временная отметка предоставления пакета (Presentation Time Stamp);
STC - часы системного времени (System Time Clock);
TS - транспортный поток (Transport Stream);
TV-Anytime - "Телевидение в любое время";
TVA - "Телевидение в любое время" (TV-Anytime);
uimsbf - целое без знака, старший значащий бит первый (unsigned integer, most significant bit first).
4 Транспортировка синхронизированных вспомогательных данных
4.1 Введение
Синхронизированные вспомогательные данные, которые должны быть доставлены с фиксированным временным соотношением с другими линейными потоками внутри услуги DVB, такими как аудио- и видеопотоки, должны быть перенесены в пакетах пакетизированного элементарного потока (Packetized Elementary Stream; PES), которые в свою очередь переносятся в пакетах транспортного потока (Transport Stream; TS) согласно [1].
Идентификатор пакета (Packet Identifier; PID) элементарного потока, несущего синхронизированные вспомогательные данные, ассоциированные с услугой DVB, должен быть идентифицирован в таблице состава программы (Program Map Table; PMT) из информации, относящейся к программе (Program Specific Information; PSI) для этой услуги.
Элементарный поток, несущий синхронизированные вспомогательные данные, должен иметь значение дескриптора stream_type, равное 0
Услуга DVB может содержать один или более элементарных потоков, несущих синхронизированные вспомогательные данные. Только один пакет PES в элементарном потоке должен быть кодирован с отдельным значением временной отметки предоставления пакета (Presentation Time Stamp; PTS).
4.2 Формат пакетов транспортного потока (TS)
Синтаксис и семантика стандартного пакета TS приведены далее по тексту настоящего стандарта.
4.3 Формат пакетов пакетизированного элементарного потока (PES)
Поля стандартного пакета PES должны соответствовать следующему формату:
stream_id - должен быть равен '1011 1101' (0
data_alignment_indicator - должен быть равен 1;
PES_packet_data_byte - данные байты должны быть кодированы согласно структуре вспомогательных данных в соответствии с 4.5 настоящего стандарта;
PTS - данное значение должно быть кодировано с точной синхронизацией. Если оно не кодировано, полезная нагрузка пакета PES все равно должна извлекаться и отображаться приемником, но временные соотношения с другими данными PES в текущей услуге DVB будут не определены.
Иные дополнительные поля могут присутствовать в заголовке PES.
4.4 Расположение потока
Элементарный поток, несущий синхронизированные вспомогательные данные, должен иметь значение stream_type, равное 0
Однако этой информации может быть недостаточно для однозначной идентификации отдельного потока, так как в отдельной услуге DVB может содержаться несколько элементарных потоков с одинаковыми значениями stream_type и stream_id. Причины такой ситуации могут быть следующие:
- в отдельной услуге DVB может содержаться несколько элементарных потоков, несущих синхронизированные вспомогательные данные (п.4.1 настоящего стандарта);
- вышеуказанная комбинация значений stream_type и stream_id может быть использована приложениями, не предназначенными для доставки синхронизированных вспомогательных данных.
В таких случаях необходимо обеспечить способ однозначной идентификации элементарного потока помимо идентификации по stream_type и stream_id. Для этой цели может существовать несколько подходов, один из них - добавление ссылки в поле DVB component_tag и включение использования отдельных дескрипторов в соответствующую таблицу РМТ.
4.5 Структура вспомогательных данных
Синтаксис структуры вспомогательных данных должен соответствовать таблице 1.
Таблица 1 - Синтаксис структуры вспомогательных данных auxiliary_data_structure
Примечание - Поскольку эта структура является единственными данными, которые передаются в байтах PES_packet_data_bytes, их количество может быть определено из полей PES_packet_length и PES_header_data_length, закодированных в структуре пакета PES.
Структура вспомогательных данных должна содержать следующие поля:
payload_format: 4-битовое поле, используемое для идентификации формата кодирования поля полезной нагрузки, кодируемое согласно таблице 2.
Таблица 2 - Формат поля payload_format
Значение | Описание |
0 | Зарезервировано DVB |
0 | Поле полезной нагрузки должно содержать 0 или более дескрипторов, описанных в разделе 5 настоящего стандарта |
0 | Зарезервировано DVB |
0 | Определяется пользователем |
CRC_flag: 1-битовый флаг. Если равен 1, то в данной структуре содержится поле CRC_32. Если равен 0, то поле CRC_32 отсутствует.
payload_byte: 8-битовое поле. Последовательность байтов payload_byte составляют поле полезной нагрузки. Синтаксис и семантика поля полезной нагрузки определяются в соответствии с форматом, который идентифицируется полем payload_format.
CRC_32: 32-битовое поле, содержащее значение контроля циклическим избыточным кодом (Cyclic Redundancy Check; CRC), которое дает 0 на выходе регистров декодера, описанного в [2], после обработки всей структуры auxiliary_data_structure.
5 Дескрипторы
5.1 Идентификация дескрипторов
Поле полезной нагрузки структуры вспомогательных данных (п.4.5 настоящего стандарта) может содержать 0 или более дескрипторов, приведенных в таблице 3.
Таблица 3 - Дескрипторы, используемые в структуре вспомогательных данных
Значение тега | Идентификатор |
0 | Зарезервировано DVB |
0 | TVA_id_descriptor |
0 | broadcast_timeline_descriptor |
0 | time_base_mapping_descriptor |
0 | content_labeling_descriptor |
0 | synchronised_event_descriptor |
0 | synchronised_event_cancel_descriptor |
0 | Зарезервировано DVB |
0 | Определяется пользователем |
5.2 Определения дескрипторов
5.2.1 Дескриптор TVA_id_descriptor
Назначение, синтаксис и семантика данного дескриптора определены в [3] (11.2.4).
Минимальная скорость повторения данного дескриптора, относящегося к отдельному значению TVA_id, должна быть как минимум один раз каждые 2 с.
Если данный дескриптор передается в синхронизированных вспомогательных данных со значением поля payload_format, равным 0
значение 8-битового поля descriptor_tag должно быть равно 0
5.2.2 Дескриптор broadcast_timeline_descriptor
5.2.2.1 Введение
Элемент линейного контента содержит обязательную временную диаграмму, которая перемещается синхронно с потоком. Чтобы позволить приложению (метаданным) управлять элементом контента во время представления, данная временная диаграмма может быть представлена в терминах временной диаграммы контента метаданных.
Чтобы временная диаграмма контента метаданных была использована приемником для управления представлением элемента контента, она должна быть доставлена в приемник во время вещания элемента контента. Это может быть достигнуто путем отображения временной диаграммы контента метаданных на вещательную временную диаграмму, которая может быть доставлена через использование дескриптора вещательной временной диаграммы broadcast_timeline_descriptor.
Типы временных диаграмм в соответствии с приложением А настоящего стандарта.
5.2.2.2 Использование
Дескриптор вещательной временной диаграммы определяет время в виде числа отсчетов. Это неформатированное число отсчетов затем конвертируется в значение времени путем использования поля формата отсчетов, т.е. числа отсчетов на единицу времени. Затем кодированные значения вещательной временной диаграммы преобразуются в форматы представления времени.
Вещательная временная диаграмма должна определяться одним из двух способов:
- как прямая вещательная временная диаграмма путем кодирования абсолютного времени в дескрипторе вещательной временной диаграммы;
- как смещенная вещательная временная диаграмма путем кодирования смещения времени в дескрипторе вещательной временной диаграммы. Данное смещение должно добавляться к абсолютному времени, определенному прямой вещательной временной диаграммой.
Дескриптор вещательной временной диаграммы определяет кодированные значения времени для вещательной временной диаграммы на дискретных отсчетах. Для генерации значений для вещательной временной диаграммы между принятыми значениями следует использовать экстраполяцию:
где
5.2.2.3 Синтаксис
Синтаксис дескриптора broadcast_timeline_descriptor приведен в таблице 4.
Таблица 4 - Синтаксис дескриптора broadcast_timeline_descriptor
5.2.2.4 Семантика
descriptor_tag: 8-битовое поле, должно быть равно 0
descriptor_length: 8-битовое поле, указывает общее количество байтов для блока данных дескриптора следующего за байтом, определяющим значение этого поля.
broadcast_timeline_id: 8-битовое поле, служит для уникальной идентификации вещательной временной диаграммы.
broadcast_timeline_type: 1-битовое поле, определяет тип вещательной временной диаграммы. Значение 0 соответствует прямой вещательной временной диаграмме, значение 1 соответствует смещенной вещательной временной диаграмме.
continuity_indicator: 1-битовое поле, служит для идентификации последовательности значений вещательной временной диаграммы между разрывами. Состояние данного бита должно меняться на противоположное при каждом разрыве.
prev_discontinuity_flag: 1-битовое поле, если равно 1 указывает, что поле prev_discontinuity_ticks кодировано в данном дескрипторе. Это поле должно быть равно 0, если данный дескриптор информирует о разрыве в вещательной временной диаграмме.
next_discontinuity_flag: 1-битовое поле, если равно 1 указывает, что поле next_discontinuity_ticks кодировано в данном дескрипторе.
running_status: 1-битовое поле, указывает на состояние вещательной временной диаграммы. Допустимые значения приведены в таблице 5.
Таблица 5 - Значения поля running_status
Величина | Значение | Описание |
0-2 | Зарезервировано | Не определено в настоящем стандарте |
3 | Остановлена | Вещательная временная диаграмма остановлена |
4 | Движется | Вещательная временная диаграмма движется |
5-7 | Зарезервировано | Не определено в настоящем стандарте |
tick_format: 6-битовое поле, согласно таблице 6 указывает, какой формат используется в вещательной временной диаграмме.
Таблица 6 - Кодировка поля tick_format
Величина | Описание |
0 | Закодировано согласно [4] (таблица 6-4) |
0 | 1000 отсчетов (мс) в секунду |
0 | 90000 отсчетов в секунду |
0 | Зарезервировано DVB |
0 | Определяется пользователем |
absolute_ticks: абсолютное значение времени для прямой вещательной временной диаграммы, должно быть кодировано согласно значению поля tick_format.
direct_broadcast_timeline_id: 8-битовое поле, используется для идентификации прямой вещательной временной диаграммы.
offset_ticks: 32-битовое поле, указывает на смещение, которое должно быть добавлено к абсолютному значению времени из прямой вещательной временной диаграммы с идентификатором direct_broadcast_timeline_id для получения текущего значения вещательного времени.
Поле offset_ticks должно быть кодировано согласно формату из поля tick_format.
prev_discontinuity_ticks: 32-битовое поле, должно быть закодировано значением absolute_ticks или offset_ticks (что применимо), которое применялось до предыдущего разрыва.
next_discontinuity_ticks: 32-битовое поле, должно быть закодировано значением absolute_ticks или offset_ticks (что применимо), когда ожидается, что после следующего разрыва вещательная временная диаграмма пойдет с текущей скоростью продвижения.
broadcast_timeline_info_length: 8-битовое поле, определяет длину в байтах последующего информационного поля вещательной временной диаграммы.
broadcast_timeline_info_byte: 8-битовое поле. Последовательность полей broadcast_timeline_info_byte составляет информационное поле вещательной временной диаграммы.
5.2.3 Дескриптор time_base_mapping_descriptor
5.2.3.1 Использование
Дескриптор time_base_mapping_descriptor предоставляет способ явной ассоциации внешней временной базы с вещательной временной диаграммой.
Минимальная частота повторения данного дескриптора зависит от значения поля time_base_mapping_id и должна быть не менее одного раза в 5 с.
5.2.3.2 Синтаксис
Синтаксис дескриптора time_base_mapping_descriptor приведен в таблице 7.
Таблица 7 - Синтаксис дескриптора time_base_mapping_descriptor
5.2.3.3 Семантика
descriptor_tag: 8-битовое поле, должно быть равно 0
descriptor_length: 8-битовое поле, указывает общее количество байтов для блока данных дескриптора, следующего за байтом, определяющим значение этого поля.
time_base_mapping_id: 8-битовое поле, должно использоваться для уникальной идентификации набора отображений между внешними временными базами и вещательными временными диаграммами. Границами уникальности данного идентификатора является элементарный поток, переносящий синхронизированные вспомогательные данные, в которых доставляется данный дескриптор time_base_mapping_descriptor.
num_time_bases: 7-битовое поле, содержит число временных баз, определенных для отображения на вещательные временные диаграммы. Временные базы должны быть определены в восходящем порядке нумерации полями time_base_id.
time_base_id: 8-битовое поле, определяет временную базу для отображения.
broadcast_timeline_id 8-битовое поле, идентифицирует вещательную временную диаграмму, прямую или смещенную, определенную в том же потоке синхронизированных вспомогательных данных, в котором доставляется данный дескриптор.
5.2.4 Дескриптор content_labeling_descriptor
5.2.4.1 Использование
Дескриптор content_labeling_descriptor предоставляет способ ассоциации меток в формате идентификаторов с элементами контента. Эти метки могут быть использованы метаданными как ссылки на ассоциированный с ними контент. Формат идентификаторов может меняться в зависимости от применения метаданных.
Дескриптор content_labeling_descriptor также может использоваться для ассоциации вещательной временной диаграммы с элементом контента.
Минимальная частота повторения данного дескриптора зависит от значений полей metadata_application_format и content_reference_id и должна быть не менее одного раза в 5 с.
5.2.4.2 Синтаксис
Синтаксис данного дескриптора определен в [1].
5.2.4.3 Семантика
Базовая семантика данного дескриптора определена в [1].
В пределах системы DVB должна применяться следующая дополнительная семантика.
Поле metadata_application_format должно кодироваться согласно таблице 8.
Таблица 8 - Кодировка поля metadata_application_format
Величина | Описание |
0 | Зарезервировано MPEG |
0 | Метаданные TVA согласно DVB |
0 | Зарезервировано DVB |
0 | Определяется пользователем |
0 | Определяется полем metadata_application_format_identifier |
Поле content_time_base_indicator должно кодироваться согласно таблице 9.
Таблица 9 - Кодировка поля content_time_base_indicator
Величина | Описание |
0 | В данном дескрипторе определена временная база контента |
1 | Используются часы системного времени (System Time Clock; STC) |
2 | Используется время нормального воспроизведения (Normal Play Time; NTP) |
3-7 | Зарезервировано MPEG |
8 | Используется вещательная временная диаграмма DVB |
9-11 | Зарезервировано DVB |
12-15 | Определяется пользователем |
Поле private_data_byte. Последовательность полей private_data_byte составляет поле private_data. Поле private_data должно кодироваться согласно таблице 10.
Таблица 10 - Структура поля private_data
time_base_association_data_length: 8-битовое поле, указывает общее количество байтов для блока данных структуры, следующей за байтом, определяющим значение этого поля.
time_base_mapping_flag: 1-битовое поле, указывает наличие явного отображения внешней временной базы на вещательную временную диаграмму.
Если данное поле равно 1, то явное отображение имеет место и может быть обнаружено с помощью кодированного поля time_base_mapping_id.
Если данное поле равно 0, то явное отображение отсутствует и все временные базы должны быть отображены на одну вещательную временную диаграмму, которая может быть обнаружена с помощью кодированного поля broadcast_timeline_id.
time_base_mapping_id: 8-битовое поле, должно использоваться для идентификации набора отображений между внешними временными базами и вещательными временными диаграммами, передаваемыми как порции данных дескриптора time_base_mapping_descriptor.
Соответствующий дескриптор time_base_mapping_descriptor должен передаваться в той же структуре вспомогательных данных, в которой передается данный дескриптор content_labeling_descriptor.
broadcast_timeline_id: 8-битовое поле, идентифицирует вещательную временную диаграмму, прямую или смещенную, определенную в том же потоке синхронизированных вспомогательных данных (но не обязательно в той же структуре вспомогательных данных), в котором доставляется данный дескриптор content_labeling_descriptor.
Если данный дескриптор передается в синхронизированных вспомогательных данных с полем payload_format, равным 0
5.2.4.4 Сигнализация PSI
Чтобы указать, что элементарный поток, используемый для синхронизированных вспомогательных данных, передает один или более дескрипторов content_labeling_descriptor, относящихся к отдельным приложениям метаданных (т.е. в том же формате кодированных приложений метаданных), краткая форма дескриптора content_labeling_descriptor может быть помещена в соответствующей структуре ES_info (второй дескрипторный цикл) таблицы РМТ. В этом случае должны быть использованы следующие поля:
metadata_application_format: это поле должно иметь одно значение у всех экземпляров дескрипторов content_labeling_descriptor, принадлежащих к одному потоку синхронизированных вспомогательных данных.
content_reference_id_record_flag: данное 1-битовое поле должно быть равно 0. Соответственно, в данном экземпляре дескриптора не должно быть ни одного поля content_reference_id.
content_time_base_indicator: данное 4-битовое поле должно быть равно 0. Соответственно, в данном экземпляре дескриптора не должна определяться временная база контента.
5.2.5 Дескриптор synchronised_event_descriptor
5.2.5.1 Использование
Дескриптор synchronised_event_descriptor содержит информацию, обеспечивающую передачу событий, зависящих от приложения, временные моменты которых должны быть синхронизированы с другими компонентами вещательного потока. Такие события называются синхронизированными событиями.
Каждое синхронизированное событие должно уникально идентифицироваться комбинацией трех полей: synchronised_event_context, synchronised_event_id и synchronised_event_id_instance.
5.2.5.2 Синтаксис
Синтаксис дескриптора synchronised_event_descriptor приведен в таблице 11.
Таблица 11 - Дескриптор synchronised_event_descriptor
5.2.5.3 Семантика
descriptor_tag: 8-битовое поле, должно быть равно 0
descriptor-length: 8-битовое поле, указывает общее количество байтов для блока данных дескриптора, следующего за байтом, определяющим значение этого поля.
synchronised_event_context: 8-битовое поле, должно определять зависящий от приложения контекст синхронизированного события, описываемого данным дескриптором.
synchronised_event_id: 16-битовое поле, должно определять тип синхронизированного события в составе контекста, идентифицированного полем synchronised_event_context.
Значения данного поля в диапазоне 0
synchronised_event_id_instance: 8-битовое поле, должно быть кодировано одинаковым значением для каждого экземпляра в данном дескрипторе, относящегося к отдельному синхронизированному событию. Его значение должно увеличиваться на 1 между каждым экземпляром синхронизированного события отдельного типа.
tick_format: 6-битовое поле, указывает формат поля eference_offset_ticks. Должно кодироваться согласно таблице 6 настоящего стандарта.
Для всех синхронизированных событий данного дескриптора должно использоваться единое значение tick_format.
reference_offset_ticks: 16-битовое поле, должно кодироваться согласно значению поля tick_format.
Поле reference_offset_ticks должно кодироваться с временным смещением, которое при добавлении к временному моменту по умолчанию, содержащемуся в метке PTS пакета PES, в котором доставляется данный дескриптор, определяет временной момент синхронизированного события.
Если временной момент события находится в будущем относительно метки PTS пакета PES, в котором доставляется данный дескриптор, то должно кодироваться положительное значение reference_offset_ticks.
Если временной момент события находится в прошлом относительно метки PTS пакета PES, в котором доставляется данный дескриптор, то должно кодироваться отрицательное значение reference_offset_ticks.
synchronised_event_data_length: 8-битовое поле, содержит длину в байтах поля данных синхронизированного события.
synchronised_event_data_byte: 8-битовое поле, последовательность полей synchronised_event_data_byte составляет поле данных синхронизированного события.
5.2.6 Дескриптор synchronised_event_cancel_descriptor
5.2.6.1 Использование
Дескриптор synchronised_event_cancel_descriptor предоставляет способ отменить синхронизированное событие, временной момент которого был определен (с помощью дескриптора synchronised_event_descriptor), но пока еще не достигнут. Например, дескриптор synchronised_event_cancel_descriptor может быть использован для отмены синхронизированного события, временной момент которого находится в будущем, относящегося к внезапно прерываемой программе (к примеру, срочной новостной вставкой).
5.2.6.2 Синтаксис
Синтаксис дескриптора synchronised_event_cancel_descriptor приведен в таблице 12.
Таблица 12 - Синтаксис дескриптора synchronised_event_cancel_descriptor
5.2.6.3 Семантика
descriptor_tag: 8-битовое поле, должно быть равно 0
descriptor_length: 8-битовое поле, указывает общее количество байтов для блока данных дескриптора, следующего за байтом, определяющим значение этого поля.
synchronised_event_context: 8-битовое поле, должно определять зависящий от приложения контекст синхронизированного события (событий), описываемого данным дескриптором.
synchronised_event_id: 16-битовое поле, должно определять тип синхронизированного события в составе контекста, идентифицированного полем synchronised_event_context, которое должно быть отменено.
Значения данного поля, равное 0
Приложение А
(обязательное)
Типы временных диаграмм
А.1 Временная диаграмма контента метаданных
Любой элемент линейного контента должен содержать обязательную временную диаграмму, которая продвигается синхронно с его движением. Для обеспечения управлением отображения элемента контента приложением (метаданными) данная обязательная временная диаграмма может быть представлена в виде временной диаграммы контента метаданных, определенной стандартом MPEG.
Для обеспечения уникальной идентификации каждой точки элемента контента, значение временной диаграммы контента метаданных, ассоциированной с ней, должно быть уникальным. Для выполнения этого требования применительно к временной диаграмме контента метаданных должны соблюдаться следующие правила:
- элементы контента должны быть непрерывными объектами, временная диаграмма контента метаданных должна двигаться непрерывно;
- скорость, с которой движется временная диаграмма контента метаданных, должна быть постоянной и положительной;
- какие бы единицы времени не использовались для временной диаграмма контента метаданных, они должны двигаться синхронно с потоком элементов контента, т.е. временная диаграмма контента метаданных должна быть синхронна с частотой синхронизации элемента контента;
- допускаются положительные скачки значений временной диаграммы контента метаданных.
А.2 Вещательная временная диаграмма
Вещательная временная диаграмма обеспечивает способ доставки временной диаграммы контента метаданных во время вещания элемента контента. При этом должны быть приняты во внимание следующие проблемы:
- скорость вещания ограничена, поэтому не всегда возможно передать значения временной диаграммы контента метаданных с той дискретностью, которая требуется приемнику, и вещательная система может отказывать из-за ошибок передачи. Поэтому приемник должен уметь экстраполировать принятые значения временной диаграммы контента метаданных для обеспечения нормального отображения контента;
- хотя сам элемент контента является непрерывным, вещание может идти с разрывами, например, во время вставки горячего блока новостей. При этом движение доставляемой временной диаграммы контента метаданных должно приостанавливаться синхронно с элементом контента;
- временная диаграмма контента метаданных может быть определена с использованием различных форматов времени. Чтобы снизить нагрузку на приемник, кодирование, используемое для доставки временной диаграммы контента метаданных в вещательном потоке, должно быть ограниченным и легким для управления;
- скорость движения вещательной временной диаграммы синхронна со скоростью движения временной диаграммы контента метаданных, которая в свою очередь синхронна с воспроизводимым в данный момент элементом контента. Это условие не зависит от формата кодирования вещательной временной диаграммы;
- если воспроизведение элемента контента остановлено, вещательная временная диаграмма должна отразить факт того, что движение временной диаграммы контента метаданных также остановлено.
Вещательная временная диаграмма доставляется с использованием дескриптора вещательной временной диаграммы.
А.3 Временной код IEC 60461
Временной код встроен в поток видео в формате "HH:MM:SS:FF" (часы, минуты, секунды, сотые секунд) согласно [5]. Вещательная временная диаграмма кодирована с помощью неформатированных отсчетов, поскольку это упрощает задачу обработки временных значений в приемнике, в частности, благодаря подходу с использованием смещения. Это не представляет собой особых проблем для вещателя или приемника, поскольку встроенный в поток видео временной код может быть легко сконвертирован в отсчеты временной диаграммы и обратно, например, 15260 отсчетов по 25 отсчетов в секунду могут быть представлены как "00:10:10:10".
Следует отметить, что не применяют дробные скорости и значения временного кода, так как это усложняет преобразование. Однако, правильное преобразование при этом возможно, так как пропущенные значения являются детерминированными. Например, на частоте 29,97 Гц кадры номер 0 и 1 в начале каждой минуты пропускают в счете, за исключением минут с номером 0, 10, 20, 30, 40 и 50.
Библиография
[1] | Recommendation ITU-T H.222.0 | ISO/IEC 13818-1 "Информационные технологии - Общее кодирование движущихся изображений и связанной с ними звуковой информации - Часть 1: Системы" |
[2] | ETSI EN 300 468 "Телевидение вещательное цифровое (DVB); Спецификация для служебной информации (СИ) в DVB системах" |
[3] | ETSI TS 102 323 "Телевидение вещательное цифровое (DVB); Доставка и сигнализация информации TV-Anytime в DVB транспортных потоках" |
[4] | Recommendation ITU-T H.262 | ISO/IEC 13818-2 "Информационные технологии - Общее кодирование движущихся изображений и связанной с ними звуковой информации: Видео" |
[5] | IEC 60461 "Время и управляющий код" |
УДК 621.397.132.129:006.354 | ОКС 33.170 | ОКП 657400 |
Ключевые слова: вспомогательные данные, временная диаграмма, временная база, контент, метаданные, дескриптор |
Электронный текст документа
и сверен по:
, 2016