Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовые / Курсовой Проект по ЦОС Истомин Е.С. ИМЭ-36.doc
Скачиваний:
82
Добавлен:
17.04.2013
Размер:
917.5 Кб
Скачать

9.6 Проблемы.

Есть три причины, налагающие ограничения на коммутацию потоков данных MPEG-2:

- P и B кадры не могут быть восстановлены без опорных изображений, которые использовались для предсказания в процессе кодирования. Коммутация может оставить P и B изображения без опорных.

- компрессированные изображения требуют для передачи разных интервалов времени (I - больше, P и B - меньше), причем эти интервалы зависят от детальности и динамичности сюжета. Поэтому синхронизация и выравнивание границ кадров коммутируемых потоков - проблема, которая должна решаться в момент склейки.

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

Решение этой проблемы требует наличия буфера декодера, в который блоки доступа загружаются за разное время, а выгружаются через равные интервалы. Буфер не должен ни переполняться, ни опустошаться полностью. Опустошение означает отсутствие данных для декодирования, что может быть преодолено замораживанием последнего декодированного кадра. Переполнение приводит к худшим последствиям, поскольку оно означает потерю данных, из-за чего воспроизводимое изображение может быть искажено до пор, пока не придет новый I-кадр. Стандартные кодеры MPEG работают таким образом, что исключается и переполнение, и опустошение буфера. Однако в момент коммутации параметры потока данных меняются скачком, что может привести к нарушению нормальной работы буфера, при которой его емкость заполняется в среднем на 50%.

9.7 Возможности mpeg.

Перечисленные проблемы приводят к тому, что лишь отдельные точки потока данных подходят для склейки без изменения кодированных данных объектов доступа (рис.25). В спецификации MPEG эти точки и

Рис. 25. Точки склейки транспортных потоков называются точками склейки.

Коммутация двух потоков и переход от старого потока к новому возможны лишь в том случае, если точки склейки двух потоков совпадают во времени.

Синтаксис MPEG-2 предусматривает средства для обеспечения склейки даже на уровне транспортного потока, отличающиеся высокой фрагментацией. Среди этих средств первое место

Рис. 26. Принципы вставки в транспортный поток принадлежит счетчику

пакетов до точки склейки.

Счетчик представляет собой 8-разрядный счетчик, который декрементируется с каждым пакетом и состояние которого становится равным нулю в ближайшей потенциальной точке склейки. Счетчик располагается в поле адаптации транспортного пакета. Его назначение - сообщить коммутационному оборудованию о возможной склейке и указать ее точное положение.

10. Буфер, бесшовная склейка и стандартизация.

Спецификация MPEG-2 определяет вычислите-льную модель буфераVBV (Video Buffering Verifier), позволяющую оценить степень заполнения буфера декодера в процессе кодирования. Рис.27 иллюстрирует работу модели при декоди-

Рис. 27. Заполнение буфера декодера при декодировании ровании группы изобра-

группы изображений из 12 кадров жений из 12 кадров.

Блоки доступа поступают

в буфер непрерывно, причем скорость заполнения буфера пропорциональна скорости кодированного потока. Блоки доступа загружаются в буфер за разное время, поскольку кодированные изображения имеют разный объем данных. Выгружаются данные из буфера через одинаковые интервалы, равные частоте кадров воспроизводимого изображения, причем выгружаются целиком и моментально (это ведь модель, точные параметры этого процесса зависят от конкретной реализации буфера и декодера, поэтому детали процесса выгрузки данных из буфера декодер должен "продумать" самостоятельно). Требуется некоторое время (стартовая задержка), чтобы декодер смог декодировать и воспроизвести первое изображение, а после этого допустить выгрузку из буфера первого блока доступа. Спустя некоторое время после загрузки последнего блок доступа декодер сможет воспроизвести последнее декодированное изображение (финишная задержка). В этот момент буфер полностью опустошается.

Желательно, чтобы линия, показывающая заполнение буфера, колебалась вокруг значения в 50% и не подходила к предельным значениям 0 и 100%. Есть и другие соображения, которые надо учитывать при склейке. Если, например, стартовая задержка нового потока значительно больше финишной задержки старого, то после того, как будет воспроизведено и выгружено из буфера последнее изображение старого потока, то придется долго ждать декодирования и воспроизведения первого изображения нового потока (рис.28).

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

Рис. 28. Склейка транспортных потоков Рис. 29. Склейка транспортных потоков

с заметным переходом с заметным переходом

(стартовая задержка нового потока из-за переполнения буфера декодера

значительно больше финишной (скорость нового потока

задержки старого потока) больше скорости старого потока)

Означает ли это, что в общем случае бесшовная и незаметная склейка потоков MPEG-2 невозможна? Конечно, нет. Бесшовная склейка не требует внесения принципиальных измене-ний в стандарт, она может быть достигнута за счет внесения определенных ограничений в параметры склеиваемых потоков (Рис.30). Бесшовная склейка потоков является предметом исследований и стандартизации (см. стандарт SMPTE 312M), причем учет ограничений, связанных с буфером декодера, является одним из главных факторов.

Рис. 30. Бесшовная склейка транспортных потоков