2.0 Подробные данные
2.1 Обзор
Метаданные переносят в транспортных потоках MPEG 2, как описано в разделе 2.12 из ссылки [1]. HTTP Живые метаданные Потоковой передачи переносят в элементарном потоке (PES) вместо, например, в карусели. Поток метаданных должен быть в той же программе как основной материал программы (т.е. аудио/видеоконтент).
Метаданные ID3 самоописывают и не нуждаются ни в какой конфигурационной информации, таким образом, не используются условия для данных конфигурации декодера метаданных.
Остаток от раздела 2 из этой спецификации описывает подробные данные синтаксиса и значений полей от раздела 2 из ссылки [1] для метаданных формата ID3, используемых с HTTP Живая Потоковая передача.
В синтаксических таблицах в разделе 2.3.2 из этой спецификации структура синтаксиса (левый столбец) показана с только именами полей и частью схемы, имеющей силу для метаданных ID3, как описано в этой спецификации. Опущены условные блоки, для которых условие является ложью. Правый столбец в синтаксических таблицах указывает значение, необходимое для каждого поля в этом контексте, или содержит объяснение того поля.
Со спецификацией [1] MPEG 2 нужно консультироваться для полного синтаксиса, размеров поля и приемлемых значений.
2.2 Сводка используемых кодовых точек
ID3 определяет и формат и семантическое, и таким образом, зарегистрированное то же format_identifier
используется для обоих metadata_format_identifier
и metadata_application_format_identifier
.
Зарегистрированное значение для них, в регистрационных полномочиях (ссылка [4]), является четырьмя символьными строками ‘ID3 ’
(символы I D 3 space,
или 0x49 0x44 0x33 0x20
).
Указать, что зарегистрированное значение используется, metadata_format
и metadata_application_format
поля принимают значения 0xff
и 0xffff
соответственно.
Метаданные ID3 переносят в частном потоке, не потоке, отформатированном как Устройства доступа метаданных (MAUs), как определено в 12.4 из [1]. stream_id
значение, используемое для потока, поэтому private_stream_id_1
, 0xbd
, как указано в 2.12.3 из [1]. stream_type
установлен в 0x15
, указание каретки метаданных в потоке PES, как указано в 2.12.9.1 из [1].
Так как только один поток метаданных обычно переносят, metadata_service_id
обычно устанавливается в 0
; однако, любое подходящее значение может использоваться для различения этого потока метаданных от других потоков метаданных, если существующий.
2.3 Используемые дескрипторы
2.3.1 Введение
Формат и содержание дескрипторов метаданных документируются в разделы 2.6.58 к 2.6.61 из [1].
2.3.2 Цикл дескриптора PMT для программы
Объявить присутствие потока метаданных, a metadata_pointer_descriptor
(2.6.58 из [1]), помещается в PMT, в program_info
цикл для программы. Метаданные должны быть в той же программе как основная программа (аудио/видео) содержание; использование этого дескриптора для обращения к другой программе не поддерживается.
Синтаксис | Значение |
---|---|
| |
|
|
|
|
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
|
|
|
|
|
|
| |
|
|
| |
|
Элементарный поток, переносящий метаданные, должен быть объявлен в цикле элементарных потоков, в карте программы (разделите 2.4.4.8 из [1]):
Поле | Значение |
---|---|
|
|
|
|
|
|
|
|
|
|
2.3.3 Цикл дескриптора PMT для элементарного потока
Объявить формат потока метаданных, a metadata_descriptor
(2.6.60 из [1]), помещается в PMT, в es_info
цикл для элементарного потока.
Синтаксис | Значение |
---|---|
| |
|
|
|
|
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
|
|
|
|
|
|
2.4 Потоковый формат PES
Метаданные ID3 сохранены, поскольку полный ID3v4 структурирует в пакете PES, включая полный заголовок ID3.
Тег ID3 должен сразу запуститься после заголовка PES; этот заголовок PES должен содержать PTS (PTS_DTS_flags
набор к '10'
). PTS должен быть на той же временной шкале как аудио и видеокадры. data_alignment
бит должен быть установлен в 1
. Заголовок PES должен содержать a PES_packet_length
это является ненулевым.
Если тег ID3 более длинен, чем 65 535 байтов, он должен иметь больше чем один заголовок PES. Второе и после заголовков PES должно иметь data_alignment
набор к 0
, и должен иметь PTS_DTS_flags
набор к ‘00’
(и следовательно никакой PTS).
Заголовок PES отформатирован, как задокументировано в 2.4.3.7 из [1].
Синтаксис PES | Значение |
---|---|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
|
Поток метаданных включен в транспортный поток таким же образом как аудио, или видео. Например, в a transport_packet()
(см. 2.4.3.2 из [1]), payload_unit_start_indicator
установлен в 1
только, когда следует заголовок PES. (Заголовок PES, в свою очередь, указывает, следует ли запуск данных ID3, или было ли это разделено на многократные пакеты PES).