MPEG форматы

Реферат - Компьютеры, программирование

Другие рефераты по предмету Компьютеры, программирование

овки блока должны появляться не реже, чем через 0,7 секунды. Это связано с тем, что в заголовке содержится важная информация опорное системное время. Системный заголовок содержит информацию о характеристиках программного потока, таких, например, как максимальная скорость передачи данных, число видео и звуковых элементарных потоков. Декодер использует эту информацию, например, для того, чтобы решить, может ли он декодировать этот программный поток.

Программный поток объединяет элементарные потоки одной программы, имеющие общую временную базу. Он предназначен для использования в условиях окружения, не вносящего ошибки в цифровые данные. Причина этому сравнительно большие блоки переменной длины. Искажения из-за ошибок одного блока могут означать потерю, например, целого кадра телевизионного изображения. Поскольку длина блока переменная, то декодер не может предсказывать время конца одного блока и начало другого и вынужден полагаться только на информацию о длине, содержащуюся в заголовке. Если соответствующее поле заголовка окажется пораженным ошибками, то декодер выйдет из синхронизма и потеряет, по крайней мере, один блок. К преимуществам, получаемым при использовании программного потока, можно отнести то, что процедура демультиплексирования программного потока относительно проста.

Транспортный поток

Транспортный поток может объединять пакетные элементарные потоки, переносящие данные нескольких программ с независимыми временными базами. Он состоит из коротких пакетов фиксированной длины (188 байтов). Элементарные потоки видео, звука и дополнительный данных (например, телетекст) разбиваются на фрагменты, равные по длине полезной нагрузке транспортного пакета (184 байта) и мультиплексируются в единый поток (рис.12). Этот процесс подчиняется ряду ограничений:

  • Первый байт каждого PES-пакета элементарного потока должен быть первым байтом полеезной нагрузки транспортного пакета.
  • Каждый транспортный пакет может содержать данные лишь одного PES-пакета.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Если PES-пакет не имеет длину, кратную 184 байтам, то один из транспортных пакетов не заполняется данными PES-пакета полностью. В этом случае избыточное пространство заполняется полем адаптации (рис.12). Транспортные пакеты, переносящие разные элементарные потоки, могут появляться в произвольном порядке, но пакеты, принадлежащие одному элементарному потоку, должны следовать в транспортном потоке в хронологическом порядке, т.е. в порядке их нарезания из PES-пакетов.

Структура транспортного потока оптимизирована для условий передачи данных в каналах связи с шумами. Это проявляется, прежде всего, в небольшой длине пакетов. Типичные примеры защиты от ошибок данных транспортного потока дают системы цифрового телевизионного вещания. В системах DVB и ISDB к 188 байтам каждого транспортного пакета добавляются 16 проверочных байтов кода Рида-Соломона, что позволяет исправлять в каждом пакете до 8 пораженных шумами байтов. В ATSC к каждому пакету добавляется 20 проверочных байтов, что позволяет исправлять до 10 байтовых ошибок в одном пакете.

Транспортный пакет

Транспортный пакет начинается с 4-байтного заголовка (рис.13), первый байт которого синхронизирующий (число 47 в шестнадцатеричном коде). Это значение не является уникальным и может появляться в других полях транспортного пакета. Однако тот факт, что заголовки всегда следуют с интервалом в 188 байтов, упрощает определение начала пакета.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Транспортный поток может переносить несколько телевизионных программ, состоящих из набора элементарных потоков. Для опознавания пакетов, принадлежащих одному элементарному потоку, используется 13-битный идентификатор. Из 213 возможных значений 17 зарезервировано для специальных целей, а остальные 8175 могут использоваться для присвоения в качестве номеров элементарным потокам. Таким образом, один транспортный поток может переносить до 8175 элементарных потоков.

Важный компонент заголовка счетчик непрерывности, который инкрементируется в последовательных транспортных пакетах, принадлежащих одному и тому элементарному потоку. Это позволяет декодеру обнаруживать потерю транспортного пакета и принимать меры к маскированию ошибок, которые могут возникнуть из-за потери.

Поле адаптации не является обязательным. Оно может использоваться не только для заполнения пустот (рис.12). Это поле также переносит важную дополнительную информацию об использовании данных пакета, например, опорное время программы PCR (Program Clock Reference).

Иерархическая идентификация программ

Идентификатором принадлежности транспортного пакета к определенному элементарному потоку является значение PID (рис.13). А для распознавания элементарных потоков и объединения их в телевизионные программы служит программная информация PSI (Program Specific Information), которая должна обязательно передаваться в транспортном потоке. В системной спецификации MPEG-2 определено 4 типа таблиц с программной информацией: