Структура пакетов транспортного потока MPEG-2 TS

 


Эти пакеты имеют фиксированную длину 188 байт. При наложения помехозащитного кода Рида-Соломона длина пакета увеличивается до 204 байт. Структура пакета транспортного потока показана на рис. 2. Он состоит из заголовка, занимающего 32 байта, поля адаптации и поля передачи аудио- и видеоданных. В поле адаптации передаются временные метки (синхросигналы), служебные таблицы или данные пользователя.

 

Рис. 2 Структура заголовка пакета транспортного потока MPEG-2

Заголовок начинается с синхропакета (0х47), позволяющего декодеру выявить его начало. После синхропакета передаются три однобитовых флага. Флаг ошибки (Transport Error Indicator) устанавливается в 1 при наличии в пакете некорректируемых ошибок. Флаг начала полезных данных (Payload start indicator) устанавливается в 1, если в пакете передается начало PES с видео- или аудиоданными или начало служебной таблицы. Флаг приоритетной передачи устанавливается в 1, если пакет имеет большую важность, нежели другие с аналогичным PID-ом.

После флагов идет 13-битный PID идентификатор пакета. Следующие два бита указывают на наличие и тип скремблирования – 00 соответствует отсутствию скремблирования, а значение остальных комбинаций определяется в рамках системы доступа. Следующие два бита Adaptation Field Control индицируют состав поля с полезной нагрузкой. 0х1 индицирует отсутствие поля адаптации. В этом случае вся область полезных данных занята компрессированными видео или аудио. 0х2 соответствует пакету, в котором эта область отдана под поле адаптации, а оставшееся место заполнено стаффинговыми битами. 0х3 указывает на наличие как поля адаптации, так и видео-, и аудиоданных. 4-битный счетчик непрерывности Continuity Counter циклически отсчитывает пакеты с одинаковыми PID-ами. То есть в каждом следующем пакете значение счетчика увеличивается на 1. Он позволят декодеру обнаруживать потери пакетов.

Поле адаптации тоже имеет регламентированную структуру.