Реферат: Система сжатия подвижных изображений MPEG-2
Low
Отсч. в стр.
Стр. в кадре
Кадров в сек
Vmax , Мбит/с
–
352
288
30
4
352
288
30
4
–
–
–
Например, профиль SNR, как и Spatial, поддерживают все типы изображений, используя обычное кодирование на основе предсказания с компенсацией движения; 422 обеспечивает полное разрешение, соответствующее рекомендации ITU-R 601, монтаж с точностью до кадра, допускает многократную перезапись.
2.4 Особенности стандарта MPEG-2
Стандарт MPEG-2 не определяет защиту от ошибок, но предусматривает такую возможность. Важной особенностью стандарта является масштабируемость, которая определяется как возможность получения изображения из части полного потока данных. Предусмотрены следующие виды масштабируемости [1]:
· масштабируемость по пространственному разрешению заключается в получении от одного источника видеоинформации двух телевизионных сигналов с разными параметрами по разрешающей способности. Базовый слой содержит достаточно информации для воспроизведения обычной четкости, а дополнительный слой содержит данные для воспроизведения изображения в высокой четкости;
· масштабируемость по отношению сигнал/шум дает возможность получить от одного источника информации изображения с двумя уровнями отношения сигнал/шум, фактически с двумя уровнями качества, как это было рассмотрено в 2.2;
· масштабируемость по времени позволяет получать от одного источника видеоинформации с двумя уровнями разрешающей способности по времени – чересстрочной разверткой 25 Гц, или прогрессивной 50 Гц;
· масштабируемость по разделению данных позволяет использовать для передачи два канала связи. По одному из них (более помехозащищенному) передается базовый слой, по другому (соответственно, менее защищенному) менее критичные к ошибкам данные.
Стоит отметить, что в данный момент на практике, к сожалению, масштабируемость практически не используется.
3. Поток видеоданных MPEG-2.
3.1 Общие сведения о потоке данных. Программный поток
Упрощенная структура потока данных на выходе кодера MPEG-2 показана на
Рис 3.1.
Рис 3.1 Структура потока данных
Регламентированы две возможные формы единого потока – программный и транспортный.
Первый шаг на пути получения единого потока – формирование пакетного элементарного PES-потока. PES-пакеты состоят из заголовка и данных пользователя. Можно установить фиксированную длину всех пакетов, а можно согласовать начало проекта с началом блока доступа.
В начале заголовка идет 32 битный код старта, состоящий из стартового префикса и идентификатора. Спецификация определяет разрешенные значения чисел в поле идентификатора для 32 элементов потока звука и 16 элементов потока видеоданных. Особую значимость имеют биты Р и D флага 2, указывающие на наличие полей с метками времени представления и времени декодирования, обеспечивающие синхронизацию данных в декодере.
Для программного потока характерно все выше сказанное, только с условием, что заголовки блока должны появляться не реже, чем через 0,7 сек. Это связано с тем, что заголовки содержат опорное системное время, а также информацию о характере потока для декодера. Он предназначен для использования в условиях окружения, не вносящего ошибки. Искажения могут означать потерю целого кадра, т.к. длина блоков переменна и ошибка в определении его длины (длины PES-пакета) приведет к потере синхронизации. Преимущество в том, что при отсутствии ошибок, процедура демультиплексирования проста.
3.2 Транспортный поток
Этот поток может объединять пакетные элементарные потоки, переносящие данные нескольких программ с независимыми временными базами. Один транспортный поток может переносить до 8175 элементарных потоков. Он состоит из коротких пакетов фиксированной длины. Процесс объединения подчиняется ряду ограничений:
· первый байт каждого PES-пакета должен быть первым байтом полезной нагрузки;
· каждый транспортный пакет может содержать данные лишь одного PES-пакета;
· если PES-пакет не имеет длину, кратную 184 байтам, то один из транспортных пакетов не заполняется полностью, а оставляет место для адаптации.
Структура транспортного потока оптимизирована для условий передачи данных в каналах связи с шумами: для разрешения проблем, связанных с действием шума, добавляются 16 проверочных байтов кода Рида–Соломона, что позволяет исправить 8 битов. Пакет начинается 4байтного заголовка, который не является уникальным, однако в купе с определенной длиной пакета 188 байт, упрощает определение. Для опознавания пакетов, принадлежащих одному элементарному потоку, используется 13 битный идентификатор. Важный компонент структуры – счетчик непрерывности, который инкрементирует последовательности элементарных пакетов, принадлежащих одному потоку. Это позволяет определить потерю одного из пакетов и маскировать ошибки
Идентификатором принадлежности транспортного пакета к определенному потоку является значение PID, а для распознавания элементарных потоков и объединения их в телевизионную программу служит PSI, который должен передаваться в потоке. Определено четыре вида таблиц с программной информацией:
· таблица соединения программ PAT (сообщает список номеров всех программ);
· таблица плана программ PMT (сведения о программе и её элементарные потоки);
· таблица условного доступа CAT.
Все вместе таблицы образуют иерархический индексный механизм. Принципы мультиплексирования элементарного и транспортного потоков, из которых складывается телевизионная программа, указаны в приложении А. Благодаря небольшой длине пакета транспортный поток может переносить несколько телевизионных программ с разными временными базисами, но за это приходится платить более сложной схемой мультиплексирования.
Кадры телевизионного изображения поступают на вход кодера MPEG-2 с постоянной частотой, точно с такой же частотой они должны воспроизводится. Это означает, что общая задержка в системе должна быть постоянной. Энтропийное кодирование формирует слова с разной длиной, проблема решается за счет использования буфера.
Компенсацию задержек и синхронизацию обеспечивают метки времени, которые ставятся в соответствии каждому блоку доступа и сообщается декодеру точное время извлечения блока. Текущее системное время обеспечивается опорным генератором, однако, должен быть некоторый сдвиг, т.к. метка сообщает время в будущем. Сдвиг должен быть достаточно большим, чтобы блок доступа прошел буфер. Для синхронизации времени текущее время кодера регулярно передается декодеру (в единицу периода частоты 27 МГц). Метки программного времени должны появляться не реже, чем раз в 0,1 сек. Метки не должны сопровождать каждый блок доступа, они переносятся в заголовках PES-пакетов.