- •Понятие и область применения мультимедиа.
- •Мультимедиа в деловой сфере
- •Мультимедиа в сфере развлечения и образования
- •Мультимедийное оборудование.
- •Программные средства.
- •3.3.2.Классификация авторских систем.
- •Создание Web-страницы.
- •Графика.
- •Компьютерная анимация.
- •3.6.Звук
- •3.6.1.Основные понятия.
- •3.6.3.Способы получения цифрового звука на ibm pc.
Компьютерная анимация.
О б щ и е п о л о ж е н и я.
Быстрое изменение видимого изображения является основным принципом анимации. Для создания объекта, движущегося через экран с одновременным изменением формы, нужно в каждом кадре изменить форму объекта и сдвинуть его на несколько пикселов в заданном направлении. При быстром воспроизведении отдельные изменения сливаются, и вы видите движение.
Компьютер не только упростил создание традиционной анимации, но и привнес новые элементы: объем и глубину. Появились трехмерные изображения (ЗD-изображения) и объемная анимация, которая нашла широкое применение в видео и кинопроизводстве.
Различают две основных области компьютерной анимации; 2D-анимация (традиционная двухмерная анимация) и 3D-анимация (основанная на трехмерном компьютерном моделировании объектов). Рассмотрим их более подробно.
В 2D-анимации используются традиционные методы покадровой (или се1-анимации). Термин cel соответствует в традиционной мультипликации отдельному изображению (например, отдельной фазе движения персонажа), нарисованному на прозрачной пленке. Каждое новое cel-изображение содержит изменение по сравнению с предыдущим, что собственно, и воспринимается как движение. Когда множество cel-изображений следуют одно за другим с определенной скоростью, то создается анимационное перемещение объекта. Cel-изображения могут перемешаться над фоном по пути, определенному пользователем. Для некоторых случаев можно генерировать кадры между определенными начальной и конечной точками. Этот процесс называется твинингом (tweening) или созданием промежуточных кадров. Можно применять к компьютерным изображениям морфинг, деформирование, разнообразные оптические эффекты и циклическое изменение света.
Морфинг - прием, получивший широкое распространение несколько лет назад. Он заключается в плавном преобразовании одного объекта в другой, причем, чем незаметнее процесс этого преобразования и чем необычнее взятые объекты, тем сильнее данный прием срабатывает. Сейчас функция морфинга есть почти во всех программах.
3D-анимация начинается с создания трехмерных компьютерных моделей объектов. Этот процесс больше похож на работу скульптора, нежели художника. В типичном трехмерном пространстве объекты существуют как геометрические объекты, у которых составляющие их линии имеют привязку к координатам X, Y, Z. В общем случае создается сцена из геометрических объектов, имеющих грани. Каждая грань представляет собой плоский объект с бесконечно малой толщиной. В распоряжении пользователя имеется также набор типовых трехмерных тел (шар, конус, пирамида и т. д.), возможность придать объем плоским изображениям с помощью разнообразных приемов, а также дополнительные библиотеки, содержащие детально проработанные объекты реального мира. Так создается каркасная модель будущей сцены.
После этого наступает очередь поверхностного описания объекта. Кроме обычной раскраски, поверхность может быть покрыта двумерными изображениями (текстурами), соответствующими внешнему виду того или иного материала. В дополнение к этому, существует возможность добавить и другие свойства поверхности, такие как глянец (glossing), прозрачность (transparency), отражение (reflectivity). Можно просто выбрать характеристики поверхности из библиотек материалов, или создать материалы, не существующие в обычном физическом мире.
После этого наступает черед расстановки источников света и камер в трехмерном мире. С помощью правильной расстановки источников света можно добиться более реалистичного вида объектов трехмерной сцены. Здесь также можно задать траектории перемещения объектов, входящих в сцену, или их составных частей.
Далее производится визуализация или рендеринг (rendering) получившейся сцены. Компьютер анализирует весь объем информации для каждого кадра, определяет видимость объектов, учитывает характеристики материалов и влияние источников освещения на вид поверхности, и все это - для каждой грани изображения. В результате получается последовательность статических растровых картинок, которая при проигрывании с определенной скоростью создает очень сложную анимацию.
Процесс создания трехмерных объектов трудоемок, но получающиеся результаты вызывают заслуженное восхищение. Особенно ярко компьютерная анимация проявила себя в сфере современного кинопроизводства.
Ф о р м а т ы ф а й л о в.
AVI - формат записи аудио-видео информации, разработанный корпорацией Microsoft для операционной системы Windows. Использует от 8 до 24 бит для кодирования цветовой информации. Скорость компрессии может изменяться. Применяется для записи компьютерной анимации.
FLI - формат записи компьютерной анимации, разработанный для программы Autodesk Animator. Поддерживается многими программами для анимации. Позволяет записывать информацию с разрешением 320х200 и 8-битным цветом. Сжатия нет, основан на внешней шифрации/дешифрации, такой как RLE.
FLC - дальнейшее развитие формата FLI. Разработан для записи компьютерной анимации в программе Autodesk Animator Pro. Поддерживается многими программами для анимации. Позволяет записывать информацию с разрешением 1280х1024 и 8-битным цветом. Сжатия нет, основан на внешней шифрации/дешифрации, такой как RLE.
MPEG (.mpg) - формат записи видеоинформации с цветовым разрешением от 8 до 24 бит, может использоваться для записи анимационных файлов. Для воспроизведения может потребоваться поддержка аппаратной декомпрессии из-за большого объема обработки.
GIF (.gif) - формат графических файлов. Его спецификация GIF89a предусматривает возможность записи анимации. Записывая GIF-файл в виде серии кодов, и последовательно отображая их с запрограммированными интервалами (сотые доли секунды) можно создавать простые анимационные изображения. Применяется в Internet для анимации небольших изображений.
ShockWave (.dcr) - формат программного модуля Macromedia Shockwave, предназначенного для использования с программами фирмы Macromedia (Director, Authorware). Предназначен для распространения мультимедиа-проектов, созданных в программах Director и Authorware в Internet. Применяется для создания и распространения анимации. Получает все большую популярность.
ВИДЕО.
О б щ и е п о л о ж е н и я.
Цифровое видео - изображение или серия изображений, информация в которых хранится в цифровом виде. Оно использует цифровые сигналы и стандарты, отличные от международных стандартов для телевещания и вывода изображений на экран, используемых в аналоговом видео.
В последнее время наметилась тенденция к слиянию телевизионного и компьютерного видео. При этом с помощью специальных плат происходит преобразование аналогового видеоизображения в цифровую форму. Дальнейшее сближение цифрового и аналогового видео привело к вытеснению аналогового сигнала с мультимедиа-компьютера. Видео сначала преобразуется из аналогового в цифровой формат и записывается на одном из запоминающих устройств компьютера. Это может быть жесткий диск, CD-ROM или любое другое устройство. При этом видео уже можно воспроизвести на компьютере программным способом.
Последний шаг к цифровому видео будет сделан, только когда создание и запись видео будут выполняться в цифровой форме, а аналоговое видео будет полностью вытеснено из этого процесса. Это произойдет после повсеместного введения стандартов DVD-Video и HDTV.
В 1995 году консорциум ведущих международных производителей электроники принял новый цифровой формат записи на магнитную ленту - DVC (Digital Video Cassette) или DV (Digital Video). Это компонентный (YUC) формат представления сигнала, который обеспечивает разрешение по горизонтали 500 линий. DV - это цифровой формат записи, что само по себе гарантирует идентичность каждой копии оригиналу и возможность цифрового редактирования видео (вплоть до отдельных кадров) без потери качества. Оцифровка осуществляется с разрешением 720х576 согласно схеме 4:2:0.
Фактически единственный параметр, по которому DV уступает формату Betacam SP - это разрешение. Другие параметры (отношение сигнал/шум, полоса частот сигнала цветности) сравнимы с соответствующими параметрами Betacam SP. Благодаря раздельной записи видео, и звука формат DV позволяет добавлять звуковое сопровождение после завершения записи/редактирования видео, а также перезаписывать звук. Предусматривается специальная схема исправления и маскирования ошибок, позволяющая воспроизводить чистую картинку даже в случае полной потери двух из 12 дорожек кадра.
Формат DV обеспечивает высокое выходное качество изображения при небольших размерах и значительно меньшей стоимости, чем Betacam SP. В соответствии со стандартом IEEE 1394 (Fire Wire), цифровое видео может переноситься с видеокамеры на жесткий диск компьютера и обратно без оцифровки и других преобразований. Благодаря этому не происходит потери качества изображения при использовании компьютерного видеомонтажа.
Цифровое видео с профессиональным качеством постепенно становится реальностью для широкого круга потребителей. Пока еще аппаратуру формата DV нельзя назвать массовой, но это лишь вопрос совсем небольшого времени.
Ф о р м а т ы ц и ф р о в о г о в и д е о.
AVI (Audio Video Interleaved) - формат, разработанный Microsoft для записи видео и воспроизведения видео в операционной системе Windows. Почти вытеснен новыми форматами AVI: ASF (Advanced Streaming Format - усовершенствованный потоковый формат) и AAF (Advanced Authoring Format),но при этом старый формат AVI еще будет применяется; планируется разработка средств для преобразования между форматами AVI, ASF и AAF;
Quick Time Movie (.qt, .mov) - наиболее распространенный формат для записи и воспроизведения видео, разработанный фирмой Apple для компьтеров Macintosh. В рамках технологии поддерживает несколько форматов сжатия видео, в том числе MPEG и Indeo, а также свой собственный метод компрессии. До недавнего времени фильмы в формате MOV можно было записывать только на платформе Маc, а воспроизводить - на платформах Маc и Wintel. Сейчас такого ограничения нет. В новой версии добавились также и различные методы компрессии звука и видеоизображения.
Digital Video (.DV) - формат, разработанный для цифровых видеокамер и видеомагнитофонов. Кодер-декодер (кодек) определен консорциумом ведущих мировых производителей электроники и выпущен в различных вариантах, чтобы его смогли поддержать независимые производители в своих платах с интерфейсом FireWire и комплексных решениях для редактирования цифрового видео. DV не является компактным форматом, на нашем компакт-диске вы найдете пример изображения в этом формате, который занимает 14 Мб в несжатом виде. Для его воспроизведения можно использовать программное обеспечение QuickTime 3.0 или DirectX Media 5.1.
Compression Engine Movie (.cem) - формат для сжатия цифрового видео, основанный на технологии волнового преобразования (как и формат для сжатия статических изображений WIF). Вы можете просмотреть небольшие видеофрагменты в этом формате с использованием специального подключаемого модуля для программного обеспечения Active Movie, входящего в состав Windows 95. Формат обеспечивает высокую степень сжатия, но не является общепризнанным.
MPEG (.mpg, .mpeg, .dat) - формат для записи и воспроизведения видео, разработанный группой экспертов по движущимся изображениям (MPEG). Имеет собственный алгоритм компрессии. В настоящее время самый распространенный формат для записи цифрового видео.Далее формат MPEG рассматривается более подробно.
Кратко о сжатии видеоинформации.
Оно нужно для уменьшения объема цифровых видеофайлов, предназначенных для хранения, при этом, конечно, хочется максимально сохранить качество оригинала. Различают сжатие обычное, в режиме реального времени; симметричное или асимметричное, с потерей качества или без потери; сжатие видеопотока или покадровое сжатие.
Сжатие обычное (в режиме реального времени). Многие системы оцифровывают видео и одновременно сжимают его, иногда параллельно совершая обратный процесс декомпрессии и воспроизведения. Для качественного выполнения этих операций требуются очень мощные специальные процессоры, поэтому большинство плат ввода/вывода видео для персональных компьютеров не способны оперировать с полнометражным видео и часто пропускают кадры.
Пропущенные кадры нарушают плавность видеоизображения, что приводит к дискомфорту в восприятии. Кроме того, пропуск кадров может привести к рассинхронизации звука и изображения. Поэтому видеоплата для оцифровки должна обеспечивать производительность не ниже 24 кадров/с без пропуска кадров. Это не позволит нарушить плавность изображения.
Симметричное и асимметричное сжатие. Отличия связаны с соотношением способов сжатия и декомпрессии видео. Симметричное сжатие предполагает возможность проиграть видеофрагмент с разрешением 640х480 при скорости в 30 кадров/с, если оцифровка и запись его выполнялись с теми же параметрами. Асимметричное сжатие - это процесс обработки одной секунды видео за значительно большее время. Степень асимметричности сжатия обычно задается в виде отношения. Так, цифры 150:1 означают, что одна минута сжатого видео соответствует примерно 150 минутам реального времени.
Асимметричное сжатие обычно более удобно и эффективно для достижения качественного видео и оптимизации скорости его воспроизведения. К сожалению, при этом кодирование полнометражного ролика может занять слишком много времени, вот почему подобный процесс выполняют специализированные компании, куда отсылают на кодирование исходный материал (что увеличивает материальные и временные расходы на проект).
Сжатие с потерей или без потери качества. Чем выше коэффициент сжатия, тем больше страдает качество видео. Все методы сжатия приводят к некоторой потере качества. Даже если это незаметно на глаз, всегда есть разница между исходным и сжатым материалом. Есть только один алгоритм (разновидность Motion-JPEG для формата Kodak Photo CD), который выполняет сжатие без потерь, однако он оптимизирован только для фотоизображении и работает с коэффициентом 2:1.
При работе с цифровым видео профессионалы обращают особое внимание на коэффициент сжатия. Его ни в коем случае нельзя путать с коэффициентом асимметричности сжатия. Коэффициент сжатия - это цифровое выражение соотношения между объемами сжатого и исходного видеоматериала. Например, коэффициент 181:1 означает, что если принять объем полученного после сжатия видеоизображения за единицу, то оригинал занимал объем в 181 раз больше.
При сжатии качество видео зависит от используемого алгоритма. Для MPEG сейчас стандартом считается соотношение 200:1, при этом сохраняется неплохое качество видео. Различные варианты Motion-JPEG работают с коэффициентами от 5:1 до 100:1, хотя даже при уровне в 20:1 уже трудно добиться нормального качества изображения. Кроме того, качество видео зависит не только от алгоритма сжатия (MPEG или Motion-JPEG), но и от параметров цифровой видеоплаты, конфигурации компьютера и даже от программного обеспечения.
Методы сжатия данных используют математические алгоритмы для устранения, группировки и/или усреднения схожих данных, присутствующих в видеосигнале. Выбор конкретного алгоритма зависит от цели. Существует большое разнообразие алгоритмов сжатия, включая Compact Video, Indeo и целый ряд других, но только Motion JPEG, MPEG-1 и MPEG-2 признаны международными стандартами для сжатия видео. В последнее время широкое распространение получило цифровое видео, сжатое по стандарту MPEG.
Технология MPEG использует поточное сжатие видео, при котором обрабатывается не каждый кадр по отдельности (как это происходит при сжатии видео с помощью алгоритмов Motion-JPEG), а анализируется динамика изменении видеофрагментов и происходит устранение избытрчных данных. В большинстве фрагментов фон изображения остается достаточно стабильным, а действие происходит только на переднем плане. Поэтому алгоритм MPEG начинает сжатие с создания исходного (ключевого) кадра. Играя роль опорных при восстановлении остальных изображений, они размещаются последовательно через каждые 10-15 кадров. Только некоторые фрагменты изображении, которые находятся между ними, претерпевают изменения. И именно эта разница сохраняется при сжатии. В результате при использовании MPEG-технологии можно добиться рабочего коэффициента сжатия более чем 200:1, хотя это приводит к некоторой потере качества.
Формат Video-CD был разработан для записи MPEG-видео на компакт-диск и воспроизведения его в дальнейшем на любом оборудовании, поддерживающем данный формат. Возможно не только аппаратное, но и программное воспроизведение MPEG и Video-CD на компьютере с процессором Pentium. При этом можно добиться вполне приличного качества. Только следует принять во внимание, что на качество воспроизведения влияют три основных фактора:
1.Производительность процессора.
2.Производительность графической видеоплаты.
3.Скорость дисковода CD-ROM.
Сейчас на смену Video-CD приходит формат DVD-Video, обеспечивающий поддержку формата MPEG-2 и более высокое качество видео и звука. DVD-фильмы на русском языке уже начали появляться в продаже, и их число быстро растет. Формат MPEG-2 поддерживает более высокие разрешения, чем MPEG-1 (в том числе 720х480). Это позволяет записывать с помощью формата MPEG-2 полноэкранные фильмы "вещательного" (Betacam) качества. Как мы уже говорили, данный формат избран для использования в новом поколении видеодисков на основе технологии DVD, и через некоторое время станет ведущим и для персонального компьютера. Одной из особенностей формата MPEG-2 является присутствие в нем расширений, которые позволяют при записи разделить видеосигнал на два (или более) независимо кодируемых потока данных, представляющих видео в различных разрешениях, т. е. с лучшим или худшим качеством изображения. Это делается для создания независимых потоков данных определенной интенсивности в рамках одного видеосигнала. Такая функция важна, если необходимо одновременно транслировать телевидение высокой четкости и стандартный телевизионный сигнал.
Постепенно MPEG становится основным стандартом для полнометражного цифрового видео, пока за исключением нелинейного цифрового монтажа, где еще крайне недолго будет более распространен Motion-JPEG. Однако по мере того, как на рынке будет появляться все большее количество кодирующих MPEG-систем, MPEG-2 и DV станут определяющими и в этой области.
Рассмотрим формат MPEG более подробно.
Структура элементарного потока видеоданных.
Поток видеоданных, определяемый спецификацией, представляет собой иерархическую структуру, элементы которой строятся и объединяются друг с другом в соответствии с определенными синтаксическими и семантическими правилами. Существует шесть типов элементов этой иерархической структуры:
- видеопоследовательность;
- группа изображений;
- изображение;
- срез;
- макроблок;
- блок.
Видеопоследовательность - элемент потока видеоданных высшего уровня. Она представляет собой серию последовательных кадров телевизионного изображения. MPEG-2 допускает как построчные, так и чересстрочные последовательности. Чересстрочная последовательность - это серия телевизионных полей. В процессе компрессии поля могут кодироваться раздельно. Это дает изображения типа "поле". Два поля, кодируемые как телевизионный кадр, образуют изображение типа "кадр". В одной чересстрочной последовательности могут пользоваться изображения-поля, и изображения-кадры. В последовательностях с построчным разложением каждое изображение представляет собой кадр.
В соответствии с используемыми методами дифференциального кодирования различают три типа изображений:
I (Intra-codеd picture) - изображение кодируется с использованием только той информации, которая содержится в нем самом. В нем устраняется только пространственная избыточность;
Р (Predictive-coded picture) - изображение, при кодировании которого формируется разность между исходным изображением и предсказанием, полученным на основе предшествующего или последующего изображения типа I;
В (Bidirectionally-predicted-coded. picture) - изображение, при кодировании которого используется предсказание, сформированное на основе предшествующего и последующего изображений типа I или Р.
При кодировании Р и В изображений используется межкадровое кодирование. В них устраняется и пространственная, и временная избыточность.
Серия изображений, содержащих одно I-изображение, называется группой изображений. Пример видеопоследовательности с различными типами изображений показан на рисунке 1 (стрелками показаны направления предсказания в пределах одной группы изображений). Чем больше группа изображений, тем большая степень компрессии может быть достигнута.
Рисунок 3.1 – Видеопоследовательность и группа изображений
С информационной точки зрения каждое изображение представляет собой три прямоугольных матрицы отчётов изображения: яркостную Y и две матрицы цветности СВ и СR. Стандарт MPEG-2 допускает различные структуры матриц. Соотношение между количеством отчетов яркости и цветности определяется форматом дискретизации. В случае формата 4:2:0 размеры матриц СВ и СR в два раза меньше, чем Y, и в горизонтальном, и в вертикальном направлениях (рисунок.2).
Рисунок 3.2 – Структуры отсчетов яркости и цветности формата 4:2:0
Формат 4:2:2 отличается тем, что все три матрицы имеют одинаковые размеры по вертикали, но в горизонтальном направлении матрицы цветности имеют в два раза меньшее количество элементов (рисунок.3).В формате 4:4:4 все матрицы одинаковы (рисунок.3).
Рисунок 3.3 – Структуры отсчетов яркости и цветности форматов 4:2:2 и 4:4:4
Каждое изображение делится на срезы, которые состоят из макроблоков (рисунок.4). Макроблок складывается из блоков размером 8x8 элементов изображения (пикселов). Каждый макроблок содержит группу из четырех блоков с отчетами яркости (из области изображения с размерами 1616 пикселов) и грум ну блоков с отчетами цветности, взятых из той же области изображения, что и отчеты блоков яркости.
Рисунок 3.4 – Изображение со срезами и макроблоками
Число блоков с отсчетами цветности зависит от формата дискретизации: по одному блоку СВ и СR в формате 4:2:0, по два - в формате 4:2:2, по четыре - в формате 4:4:4 (рисунок.5).
Рисунок 3.5. – Структура макроблоков.
В изображениях типа "кадр", в которых может использоваться и кадровое, и полевое кодирование, возможны дна варианта внутренней организации макроблока (рисунок,6). В случае кадрового кодирования каждый блок яркости Y образуется из чередующихся строк двух полей (рисунок,6а). При поленом кодировании каждый блок Y образован из строк только одного из двух полей (рисунок,6б). Блоки цветности образуются по таким же правилам в случае форматов дискретизации 4:2:2 и 4:4:4. Однако при использовании формата 4:2:0 блоки цветности организуются для выполнения дискретного косинусного преобразования в рамках кадровой структуры (рисунок.6а).
Рисунок 3.6 – Структура макроблока Y при кадровом (а) и полевом кодировании (б)
Все структурные элементы потока видеоданных, полученного в результате внутри кадрового и межкадрового кодирования (кроме макроблока и блока), дополняются специальными и уникальными стартовыми кодами. Каждый элемент содержит заголовок, за которым следуют данные элементов более низкого уровня. В заголовке видеопоследовательности (как элемента высшего уровня) приводится разнообразная дополнительная информация: размеры и соотношение изображения, частота кадров, скорость потока данных, матрица квантования, формат дискретизации цветности изображения, координаты основных цветов, параметры матрицы для формировании яркостного и цветоразностных сигналов, параметры передаточной характеристики (гамма).
П р и н ц и п ы в и д е о к о м п р е с с и и.
Сокращение пространственной избыточности выполняется в изображениях типа I и достигается на уровне блока. Набор операций такого кодирования дискретное косинусное преобразование; взвешенное квантование, определяемое элементами матрицы квантования; энтропийное кодирование серии коэффициентов косинусного преобразования, полученной в результате диагонального сканирования матрицы коэффициентов. Для повышения точности предсказания и сокращения объема необходимых данных для представлении изображения, используется компенсация движения. Оценивается скорость перемещения движущихся объектов от кадра к кадру и при определении предсказания производится соответствующая коррекция в положении опорного изображения , по отношению к которому находится ошибка предсказания. Определение величины и направления смещения движущихся объектов от кадра к кадру, называемого вектором движения, производится на уровне макроблока. Оценка вектора движения - сложная процедура, требующая больших вычислительных мощностей. Именно она определяет асимметрию кодека MPEG-2. Однако стандарт не регламентирует процедуру оценки век-юра движения, поэтому в этой области ведутся серьезные работы, благодаря использованию результатов которых практическая асимметрия кодека в будущем будет минимизироваться.
Стандарт MPEG-2 (в отличие ОTJPHG и DV) предполагает устранение не только пространственной, но и временной избыточности. Представим себе группу из двенадцати изображений со структурой I-B-B-P-B-B-P-R-B-P-B-B, После компрессии объем изображений типа Р для типичных сюжетов вещательного телевидения составляет примерно 35% объема изображения типа I, а В-изображения - 25%. Если бы не было сокращения временной избыточности, то необходимый объем данных был бы в три раза больше (12/4=3). Таким образом, в три раза уменьшается скорость потока данных при приблизительно такой же заметности искажений компрессии. Чем больше труппы изображений, тем больше выигрыш, обеспечиваемый за счет устранения временной избыточности. Правда, надо отметить, что в случае применения систем компрессии типа JPEG или DV нет артефактов, связанных с движущимися объектами, однако и глаз замечает такие искажения тем меньше, чем быстрее движутся объекты в поле изображения, так, что эти два фактора в какой-то мере компенсируют друг друга. Можно по равному оценивать величину выигрыша, но то, что этот выигрыш значителен, не подлежит сомнению, поэтому применение компрессии MPEG-2 с устранением временной избыточности, целесообразно во всех звеньях тракта, где желательно уменьшение скорости потока данных.
Р е ж и м ы к о д е р а.
Возможны два основных режима работы кодера компрессии - с постоянной скоростью потока данных и с постоянным уровнем качества декодированного изображения. Управление степенью компрессии и скоростью потока данных возможно изменением параметров матрицы квантовании; чем более грубое квантование, тем больше нулевых значений в матрице коэффициентов и тем меньше объем данных, необходимых для передачи информации об изображении. Однако с увеличением степени компрессии растут и необратимые искажения изображения из-за шумов квантования.
В режиме с постоянным качеством используется фиксированная матрица квантования. Но при этом скорость потока компрессированных данных является переменной. Чем больше детальность изображения, чем быстрее перемещается объект в поле изображения, тем больше количество ненулевых коэффициентов в матрице коэффициентом косинусного преобразования, тем больше объем данных и тем больше скорость потока. Такой режим можно использовать при записи компрессированных потоков видеоданных па дисковые накопители в условиях отсутствия ограничений па объем записанных данных. Однако при этом возможны ограничения на скорость записываемого потока, ведь она не может быть произвольно большой.
В режиме с постоянной скоростью потока данных в кодере осуществляется непрерывное изменение коэффициентов матрицы квантовании. Чем мельче детали, чем более динамично изображение, то 1 более грубое квантование вводится в кодере для того, чтобы привести к заданной величине скорость потока. Поэтому в декодированных изображениях с большим количеством быстро движущихся мелких деталей будет больше искажений и артефактов из-за шумов квантования, чем в статичных изображениях с крупными структурными элементами. Такой режим используется в системах передачи компрессированных изображений по каналам связи с фиксированной пропускной способностью, в системах цифрового спутникового, кабельного и наземного телевизионного вещания.
Если запись компрессированного потока видеоданных производится не в условиях реального времени, то можно использовать и другие варианты управления скоростью потока данных. Например, выполнять компрессию в два прохода. На первом проходе находятся параметры компрессии, обеспечивающие максимальное качество при фиксированном объеме дискового пространства. На втором - производится компрессия с найденными параметрами. Есть еще од-па возможность улучшения качества при записи фрагментов программы с быстро перемещающимися объектами. На стадии предварительного просмотра оператор может найти такие интервалы и пометить их для принудительного кодирования типа I, что позволяем улучшить качество. Эти методы используются при записи программ и фильмов на диски DVD.
Порядок передачи изображений в элементарном потоке
Но стандарт MPEG-2 не регламентирует сам процесс кодирования, поэтому изображения (блоки представления) в нем рассматриваются как результат декодирования компрессированных изображения - блоков доступа (рисунок.7).
Рисунок 3.7 – Преобразование блоков представления в блоки доступа в процессе компрессии
Использование
двунаправленного предсказания
приводит к тому, что декодер может
приступить к декодированию изображения
типа В только после того, когда уже
получены и декодированы и предшествующее,
и последующее опорные изображения, с
помощью которых вычислялось
предсказание. Дня того, чтобы не
устанавливать в декодере огромные
буферные массивы, в потоке данных на
выходе кодера (этот поток называется
элементарным потоком видеоданных)
кодированные изображения следуют в
порядке декодирования. Например,
вместо последовательности I-B-B-P формируется
серия I-P-B-B (рисунок.3.8).
Рисунок 3.8 – Формирование элементарного потока видеоданных
Профили и уровни MPEG-2.
Стандарт МРЕG-2 определяет кодирование, охватывающее требования широкого круга приложений сферы производства и распределения телевизионных программ. Обобщение требований типичных и наиболее важных приложений и определило синтаксис и семантику потока видеоданных. Для наиболее эффективного применения па практике и обеспечения высокой степени эксплуатационной совместимости устройств, работающих в рамках стандарта MPEG-2, но разработанных и изготовленных различными производителями, в рамках синтаксиса MPЕG-2 выделено несколько подмножеств, называемых профилями. В каждом профиле выделено несколько уровней, определяемых совокупностью ограничений, наложенных на параметры цифровою потока, подчиняющегося синтаксису профиля. Другими словами, профиль - это подмножество стандарта для специализированного применения, падающее алгоритмы и средства компрессии. Уровни внутри каждого профиля связаны главным образом с параметрами компрессируемого изображения.
Профили MPEG-2: Simple - простой профиль; Main -основной профиль; SNR (Signal-to-Noise-Ratio) - профиль с масштабируемым квантованием; Spatial (пространственный) - профиль с масштабируемым пространственным разрешением; High - высокий профиль; -122 - студийный профиль. Профиль с масштабируемым квантованием SNR поддерживает все типы изображений. На базовом уровне кодера используется обычное кодирование на основе предсказания с компенсацией движения, дискретного косинусного преобразовании и квантования ошибки предсказания. Выходные данные этого кодера образуют нижний, или базовый слой цифрового потока данных. Ошибка квантования, обусловленная квантователем, кодируется (с использованием второго квантователя и кодера с переменной длиной слова) и передается в качестве верхнего слоя цифрового потока. На приемной стороне производится либо декодирование одного базового слоя, что обеспечивает приемлемое качество, либо обоих слоев, что позволяет уменьшить шумы квантования.
Профиль с масштабируемым пространственным разрешением Spatial также использует все виды изображений. Цифровой поток структурирован и имеет базовый и дополнительные слои. Профиль позволяет иметь наряду с базовым пространственным разрешением и более высокие значения, если декодировать все слои цифрового потока.
Студийный профиль 422 обеспечивает полное разрешение, соответствующее рекомендации ITU-K 601, монтаж с точностью до кадра, допускает многократные перезаписи.
П а к е т н ы й э л е м е н т а р н ы й п о т о к.
Системная спецификации MPEG-2 (ISO/ШС 1 3818-1) описывает объединение элементарных потоков одной или нескольких телевизионных программ в единый поток данных, удобный для записи или передачи по каналу цифровой связи. Стандарт MPEG-2 не определяет защиту от ошибок, возможных при записи или передаче, хотя он, конечно, предусматривает такую возможность. MPEG-2 регламентирует две возможных формы единого потока; данных - это программный и транспортный потоки. Первый шаг на пути получения единого потока - формирование пакетного элементарного потока PES (Packetised Elementary Stream), представляющего собой последовательность PES-пакетов (рисунок.3.9).
Рисунок 3.9 – Формирование пакетного элементарного потока
Каждый пакет состоит из заголовка и данных пользователя, или полезной нагрузки, которая представляет собой фрагменты исходной: элементарного потока. Нет никаких требований по согласованию начала полезных данных пакета и начала блока доступа, поэтому начало блока доступа может быть в любой точке PЕS-пакета, а несколько малых блоков доступа могут попасть в один PЕS-пакет. PЕS-пакеты могут быть переменной длины. Таким образом, можно установить фиксированную длину всех пакетов, а можно согласовывать начало пакета с началом блока доступа.
В начале заголовка PЕS-пакета (рис.10), идет 32-битный код старта, состоящий из стартового префикса и идентификатора потока. Идентификатор потока позволяет выделить PES-пакеты, принадлежащие одному элементарному потоку телевизионной программы. Спецификация определяет разрешенные значения чисел в поле идентификатора для 32 элементарных потоков звука и 16 элементарных потоков видеоданных. Флаги 1 и 2 - биты, указывающие на наличие или отсутствие в заголовке дополнительных полей, которые не являются обязательными. Эти поля служат для переноса дополнительной информации, такой, например, как авторские права, скремблирование, приоритет. Особую значимость имеют биты Р и Р флага 2, указывающие на наличие полей с метками времени представления PST (Presentation Time Stamps) и декодирования DTS (Decoding Time Stamps), обеспечивающие синхронизацию потоков данных в декодере.
Рисунок 3.10 – Заголовок RES-пакета
П р о г р а м м н ы й п о т о к.
Программный поток объединяет элементарные потоки, образующие телевизионную программу (рис.11). При формировании программного потока образуются блоки из PES-пакетов. Блок содержит заголовок блока, системный заголовок (необязательный), за которым следует некоторое количество PES-пакетов. Длина блока программного потока может быть произвольной, единственное ограничение - заголовки блока должны появляться не реже, чем через 0,7 секунды. Эти связано с тем, что в заголовке содержится важная информация - опорное системное время. Системный заголовок содержит информацию о характеристиках программного потока, например, максимальная скорость передачи данных, число видео и звуковых элементарных потоков. Декодер использует эту информацию, для того, чтобы решить, может ли он декодировать этот программный поток.
Рисунок 3.11 – Формирование программного потока
Программный поток объединяет элементарные патоки одной программы, имеющие общую временную базу. Он предназначен для использования в условиях окружения, не вносящего ошибки в цифровые данные. Причина этому - сравнительно большие блоки переменной длины. Искажения из-за ошибок одного блока могут означать потерю, например, целого кадра телевизионного изображения. Поскольку длина блока переменная, то декодер не может предсказывать время конца одного блока и начало другого и вынужден полагаться только па информацию о длине, содержащуюся в заголовке. Если соответствующее поле заголовка окажется пораженным ошибками, то декодер выйдет из синхронизации и потеряет, по крайней мере, один блок. К преимуществам, получаемым при использовании программного потока, можно отнести то, что процедура демультиплексирования программного потока относительно проста.
Т р а н с п о р т н ы й п о т о к..
Транспортный поток может объединять пакетные элементарные потоки, переносящие данные нескольких программ с независимыми временными базами. Он состоит из коротких пакетов фиксированной длины (188 байтов). Элементарные потоки видео, звука и дополнительный данных (например, телетекст) разбиваются на фрагменты, равные по длине полезной нагрузке транспортного пакета (184 байта) и мультиплексируются в единый поток (рис.12).
Рисунок 3.12 – Формирование транспортного потока
Этот процесс подчиняется ряду ограничений:
- первый байт каждого PES-пакета элементарного потока должен быть первым байтом полезной нагрузки транспортного пакета;
- каждый транспортный пакет может содержать данные лишь одного PES-пакета;
- если PES-пакет не имеет длину, кратную 184 байтам, то один из транспортных пакетов не заполняется данными PES-пакета полностью. В этом случае избыточное пространство заполняется полем адаптации. Транспортные пакеты, переносящие разные элементарные потоки, могут появляться в произвольном порядке, но пакеты, принадлежащие одному элементарному потоку, должны следовать в транспортном потоке в хронологическом порядке, т.е. в порядке их нарезания из PES-пакетов.
Структура транспортного потока оптимизирована для условий передачи данных в каналах связи с шумами. Это проявляется, прежде всего, в небольшой длине пакетов. Типичные примеры защиты от ошибок данных транспортного потока, дают системы цифрового телевизионною вещания. В системах DVB и ISDB к 188 байтам каждого транспортного пакета добавляются 16 проверочных байтов кода Рида-Соломона, что позволяет исправлять в каждом пакете до 8 пораженных шумами байтов. В ATSC к каждому пакету добавляется 20 проверочных байтов, что позволяет исправлять до 10 байтовых ошибок в одном пакете.
Т р а н с п о р т н ы й п а к е т.
Транспортный пакет начинается с 4-байтного заголовка (рисунок.13), первый байт которого - синхронизирующий (число 47 в шестнадцатеричном коде). Это значение не является уникальным и может появляться в других полях транспортного пакета. Однако тот факт, что заголовки всегда следуют с интервалом в 188 байтов, упрощает определение начала пакета.
Рисунок 3.13 – Структура транспортного пакета
Транспортный поток может переносить несколько телевизионных программ, состоящих из набора элементарных потоков. Для опознавания пакетов, принадлежащих одному элементарному потоку, используется 13-битный идентификатор. Из двух возможных значений 17 зарезервировано для специальных целей, а остальные 8175 могут использоваться для присвоения в качестве номеров элементарным потокам. Таким образом, один транспортный поток может переносить до 8175 элементарных потоков.
Важный компонент заголовка - счетчик непрерывности, который инкрементируется в последовательных транспортных пакетах, принадлежащих одному и тому же элементарному потоку. Это позволяет декодеру обнаруживать потерю транспортного пакета и принимать меры к маскированию ошибок, которые могут возникнуть из-за потери,
Поле адаптации (рисунок 12) не является обязательным. Оно может использоваться не только для заполнения "пустот". Это поле также переносит важную дополнительную информацию об использовании данных пакета, например, опорное время программы PCR (Program Clock Reference).
Иерархическая идентификация программ.
Идентификатором принадлежности транспортного пакета к определенному элементарному потоку является значение PTD (рисунок 13). А для распознавания элементарных потоков и объединения их в телевизионные программы служит программная информация PSI (Program Specific Information), которая должна обязательно передаваться в транспортном потоке. В системной спецификации MPEG-2 определено четыре типа таблиц с программной информацией;
- таблица соединения программ PAT (Program Association Table);
- таблица плана программы РМТ (Program Map Table);
- таблица сетевой информации NIT (Network Information Table);
- таблица условного доступа CAT (Conditional Access Table).
Каждая из этих таблиц передается в виде полезной нагрузки одного или нескольких транспортных пакетов. Таблица соединения программ PAT всегда переносится транспортными пакетами с PID=0. Эта таблица (рисунок.14) сообщает список номеров всех программ, которые содержатся в транспортном потоке, и указывает идентификаторы пакетов, в которых находятся РМТ-таблицы с информацией о программах и элементарных потоках, из которых они складываются. Номер программы зарезервирован, он используется для указания на PID пакета с сетевой информацией NIT о сетях передачи транспортного потока, частотах каналов, характеристиках модуляции и т.п.
Рисунок 3.14 – Представление таблицы соединения программ
В таблице РМТ (рисунок.15) указываются сведении о программе и тех элементарных потоках, ил которых они складывается. Из примера на рисунке 15 следует, что элементарный поток видеоданных этой программы переносится пакетами с РID=50, поток звука - пакетами с PID=51, дополнительных данных - пакетами с PID=52. В таблице также указывается PID транспортных пакетов, переносящих метки опорного времени данной программы (обычно эти пакеты имеют тот же РID, что и элементарный поток видео).
Рисунок 3.15 – Представление плана программ
Все вместе таблицы с программной информацией образуют иерархический индексный механизм. Рисунок 16 показывает принцип мультиплексирования элементарных и транспортных потоков в процессе получения многопрограммного транспортного потока, а рисунок 17 иллюстрирует демультиплексирование транспортного потока с целью извлечения элементарных потоков, из которых складывается телевизионная программа 1.
Благодаря небольшой длине пакета транспортный поток может легко переносить несколько телевизионных программ с разными временными базами, но за это приходится платить более сложной, чем и случае программного потока схемой мультиплексирования и демультиплексирования.
С и н х р о н и з а ц и я.
Принцип постоянной задержки.
Кадры телевизионного изображения поступают на вход кодера MPEG-2 с постоянной частотой, точно с такой же частотой должны воспроизводиться кадры телевизионного изображения на выходе декодера. Это означает, что общая задержка в системе, представляющая собой сумму задержек в отдельных элементах схемы, должна быть постоянной (рисунок 18).
Рисунок 3.16 – Принцип компрессии с постоянной задержкой
Объем данных, необходимый для представления кодированных изображений, не является постоянной величиной. Он зависит от детальности изображения, от наличия быстро перемещающихся объектов, от способа кодирования (I, Р и В изображения характеризуются разными объемами данных). Энтропийное кодирование формирует слова с переменной длиной. А для равномерной загрузки канала связи, данные должны следовать с постоянной скоростью. Проблема решается за счет использования буфера кодера, (данные поступают в буфер с переменной скоростью, а выходят - с постоянной).
Кодированные изображения (блоки доступа), в силу отмеченных особенностей кодирования, поступают в декодер с переменной частотой, но воспроизводится должны с постоянной частотой, равной частоте кадров. Проблема решается за счет буфера в декодере.
М е т к и в р е м е н и.
Компенсацию задержек и синхронизацию обеспечивают метки времени, которые ставятся в соответствие каждому блоку доступа (рисунок 19) и сообщают декодеру точное время, когда блок доступа должен быть извлечен из буфера декодера и декодирован.
Рисунок 3.17 – Использование меток времени при формировании программного и транспортного потоков
Для того, чтобы придавать блокам доступа метки времени, кодер должен знать текущее системное время, обеспечиваемое генератором опорного времени. Метка времени указывает время, когда декодер будет декодировать данный блок доступа, что должно произойти в будущем. Поэтому должен быть некоторый сдвиг между текущим временем и меткой. Насколько велик должен этот сдвиг, зависит от многих факторов, среди которых размеры буферов кодера и декодера, скорость, с которой элементарный поток поступает в мультиплексор, Сдвиг должен быть достаточно большим, чтобы блок доступа прошел через буфер кодера, мультиплексор и был полностью записан в буфер декодера. При расчете сдвига надо также предотвратить возможное переполнение или полное опустошение буфера декодера (ведь и в том. и в другом случае возникает сбой в непрерывном воспроизведении декодированных изображений). Для этого в кодере используется гипотетический декодер, который подключен к выходу кодера. Конечно, это не настоящий декодер, а вычислительная модель, сопровождаемая определителем степени заполнения буфера декодера. Назначение ее - наложить ограничения на процесс кодирования с целью обеспечения отсутствия переполнения или полного освобождения емкости буфера декодера. Данные о степени заполнения буфера сообщаются реальному декодеру, чтобы он мог сопоставить вычисленные значения с текущими значениями аналогичных параметров в процессе настоящего декодирования.
П о д с т р о й к а с и с т е м н ы х ч а с о в.
Для правильной интерпретации меток времени декодер должен иметь собственное системное время, причем должна быть обеспечена подстройка "часов" декодера под время "часов" кодера. Для этого текущее время кодера регулярно передается декодеру. Принцип синхронизации декодера с кодером путем использования отсчетом программного времени иллюстрирует рисунок 20.
Рисунок 3.18 – Синхронизация декодера с кодером
Системное время каждой программы отсчитывается в единицах периода колебаний с частотой 27 МГц. Отсчеты этого времени передаются в программном потоке в одном из полей заголовка блока (они называются SCR - System Clock Reference) не реже, чем через 0,7 секунды. В транспортном потоке могут переноситься данные нескольких телевизионных программ, каждая из которых может иметь свое независимое время, называемое программным. Отсчет программного времени PCR (Program Clock Reference) переносятся в поле адаптации транспортного пакета с соответствующим идентификатором PID (обычно он совпадает с идентификатором элементарного потока видеоданных, рисунок 15). Метки PCR должны появляться не реже, чем раз в 0,1 секунды. Несмотря на разницу в названиях, основные функции PCR и SCR совпадают.
В р е м я д е к о д и р о в а т ь и в р е м я п р е д ъ я в л я т ь.
Метки времени, ассоциируемые с блоками доступа, выражаются r единицах времени периода колебаний с частотой 90 кГц, полученных путем деления частоты 27 МГц. Эти метки бывают двух типов: метки времени представления PTS и метки времени декодирования DTS. Метки PTS определяют момент времени, в который декодированный блок доступа (кодированное изображение или фрагмент звукового сопровождения) должен быть предъявлен зрителю. Для всех элементарных потоков, кроме видео, PTS - это единственные метки, которые необходимы. Для потока видеоданных необходимы метки времени декодирования DTS, определяющие моменты времени, в которые блоки доступа извлекаются из буфера и декодируются, но не предъявляются зрителю. Декодированные изображения временно хранятся и предъявляются в более позднее время, назначаемое метками PТS. Метки DTS необходимы изображениям типа I и Р, которые должны декодироваться раньше, чем В-изображения. для кодирования которых Т и Р изображения использовались н качестве опорных. Метки DTS не появляются в одиночку, а должны сопровождаться метками PTS.
Метки не должны сопровождать каждый блок доступа. Они переносятся в заголовках PES-пакетов (рисунок 10). Если метка сопровождает блок доступа, то она появляется в заголовке PES-пакета, в котором этот блок доступа начинается.
М о н т а ж.
Иногда считается, что монтаж программ, закодированных в соответствии со стандартом MPЕG-2, невозможен. Кажется, что единственно возможный способ монтажа требует декодирования, т.е. преобразования компрессированных потоков в исходную форму, после которого можно выполнить монтажную операцию и повторное кодирование смонтированной программы. Однако возможен и монтаж видеопотоком, компрессированный по стандарту MPEG-2. хотя, конечно, система компрессии накладывает значительные ограничения на методы монтажа.
Все изображения связаны и образуют цепь с взаимозависимыми элементами только в случае использования открытых групп изображения. Кадры изображения в пределах закрытой группы (они заканчивается изображением типа Р) не зависят от кадров других групп (предсказание выполняется строго в пределах одной группы). Поэтому видеопотоки из закрытых групп легко могут коммутироваться и монтироваться на границах групп. Однако и потоки, основанные на открытых группах изображений, могут монтироваться в компрессированной форме. Для этого надо разорвать цепь непрерывности в выбранной точке монтажного перехода. Однако смонтированная программа должна обладать всеми свойствами потока данных MPEG-2.
Перемаркирование кадров в области монтажного перехода.
Один из вариантов коммутации элементарных потоков иллюстрирует рисунок 21.
Рисунок 3.19 – Коммутация элементарных потоков с выравниванием групп изображений
Он основан на перемаркировании кадров - изображений типа В, которые связаны в результате предсказания и с предыдущими и с последующими кадрами типа I и Р, в изображения типа Р без изменения соответствующего блока доступа (кадры В и В) элементарного потока 1 переименованы в кадры В и B'). Непрерывная цепь предсказаний разрывается (при декодировании В и В' в качестве опорного будет использоваться изображение Р4), и коммутация с целью монтажа оказывается возможной.
Таким образом, что стратегия декодирования трансформируется без изменения закодированной ошибки предсказания, не связано с высокой заметностью потенциальных искажений благодаря кратковременности монтажного перехода. Более серьезным является то, что такая коммутация может привести к потенциальному переполнению или опорожнению буфера декодера, что связано с большими искажениями. Возможное решение этой проблемы - вставка предварительно кодированного черного потока данных, который может быть вставлен между первым и вторым потоками для нормализации состояния буфера. То, что метод требует временного выравнивания групп изображений коммутируемых потоков, не является серьезным усложнением. Метод может быть рекомендован для использования в системах распределения телевизионных программ, например, для вставки местных рекламных клипов.
Перекодирование кадров в области монтажного перехода.
Другой и, вероятно, лучший с точки зрения качеств изображения метод, связан с перекодированием коммутируемых элементарных потоков в окрестности монтажного перехода (рисунок 22). Такой вариант может быть рекомендован для дисковых систем, в которых телевизионные программы хранятся и компрессированном виде.
Рисунок 3.20 – Коммутация элементарных потоков с выравниванием групп изображений и перекодированием области перехода
Монтажные магнитофоны MPEG.
Возможности монтажа телевизионных программ в компрессированном виде в условиях студийного производства предоставляет студийный профиль 422 стандарта MPFG-2, уже реализованный в формате видеозаписи Betacam SXВ нем используются открытые группы изображений из двух кадров (I и В). Данный профиль позволяет, например, выполнять монтаж путем дописывания нового потока данных без нарушения непрерывности смонтированного потока в точках монтажа (рисунок 23).
Рисунок 3.21 – Монтаж компрессированных потоков на магнитной ленте с использованием опережающего считывания
Если точка монтажного перехода выбрана на границе кадров В15 и I16, то после монтажа будет невозможно использовать кадр I16, а его наличие при обычном декодировании было бы необходимо, поскольку для декодирования В, в качестве опорной информации должны использоваться кадры 114 и 1, в процессе монтажа кадр В, не просто перемаркируется, как показано на рисунке 21, а перекодируется кадр типа В, но с предсказанием только на основе предшествующего кадра в результате чего образуется кадр В, (правила профиля 422 разрешают такую операцию). Это достигается за счет опережающего считывания, достигаемого с помощью специальной вращающейся головки, позволяющей считывать данные о предшествующих кадрах, которые после перекодирования записываются головками записи на место прежних кадров.
Совершенно очевидно, что такой способ, основанный на перекодировании кадров с двунаправленным предсказанием в сочетании с опережающим считыванием, позволяет выбирать точку монтажного перехода в любом месте и выполнить монтаж с кадровой точностью. Еще более высокого качества монтажных операций позволяет достичь реализация профиля 422 стандарта MPEG, основанная на однокадровых группах изображений. Казалось бы, зачем в таком случае MPEG. Однако MPEG - это не только кодирование с целью сокращения временной избыточности, но и гибка универсальная форма представления кодированных изображений и виде потоков данных, достоинства которой сохраняются при любых группах изображений.
Монтаж с перекодированием и транскодированием.
Монтаж с перекодированием также может быть усовершенствован с учетом специфики компрессии Известно, что в общем случае перекодирование связано с искажениями и артефактами. Но если закодировать, декодировать, а затем закодировать повтори с сохранением всех параметров первоначального кодирования (матрицы квантования, вектор движения и т.п.), то перекодирование не приводит к искажениям (рисунок 24).
Рисунок 3.22 – Перекодирование и транскодирование MPEG
Примером, когда такое перекодирование дает эффективное решение ладами, является вставка логотипа. Декодирование компрессированного потока, микширование с сигналом логотипа и последующее повторное кодирование с сохранением параметров первоначального кодирования делает такую систему прозрачной для исходного изображения для всей картинки, кроме зоны логотипа, но ведь логотип - это уже новое изображение, которое и должно кодироваться заново. Также можно использовать перекодирование с использованием параметров первоначального кодирования для выполнения монтажных переходов со специальными эффектами, например, шторками.
Транскодирование, т.е. изменение скорости потока с использованием параметров первоначального кодирования, также позволяет минимизировать искажения этого процесса. Перекодирование и транскодирование не связаны с необходимостью изменения структуры потока данных MPEG-2: вся информация о процессе и параметрах кодирования всегда сообщается декодеру. Дело лишь за регламентацией и стандартизацией способов передачи параметров первоначального кодирования от декодера ко второму кодеру.
С к л е й к а п о т о к о в.
Широкое распространение видеокомпрессии делает все более необходимым объединение кодированных программ не только без декодирования, но и без изменения содержания блоков доступа. Пример дают серверные технологии, предполагающие широкое использование фрагментов программ, клипов, рекламных вставок, записанных на дисках сервера в компрессированной форме. Сетевые технологии производства программ предполагают широкое использование для доставки программ спутниковых, кабельных и микроволновых наземных линий связи, по которым данные должны передаваться в компрессированной форме, что диктует экономика. Для малых телевизионных станций коммутация в компрессированной форме представляет на ранних стадиях внедрения цифрового телевидения экономичный, единственный способ работы в цифровом окружении. Головные станции в какой-то мере подобны серверам, им также будет требоваться коммутировать потоки компрессированных данных и вставлять рекламные вставки. Видеосерверы в системах типа видео-по-запросу будут, конечно, хранить программы в компрессированном виде, ведь архивы должны быть огромными. В серверной системе с тысячами выходов коммутация потоков, конечно, должна быть в компрессированной форме.
Коммутация потоков данных должна быть похожа на смену сюжета в рамках одной программы. По своей внутренней сути это, конечно, не просто коммутация, а сращивание потоков данных, при котором полученный поток будет соответствовать синтаксису и семантике MPEG-2. В стандарте такое сращивание называется склейкой потоков (splicing).
Есть три причины, налагающие ограничения на коммутацию потоков данных MPEG-2:
1) Р- и R-кадры не могут быть восстановлены без опорных изображений, которые использовались для предсказания в процессе кодирования. Коммутация может оставить Р- и В-изображения без опорных.
2) Компрессированные изображения требуют для передачи разных интервалов времени (I - больше, Р и В -меньше), причем эти интервалы зависят от детальности и динамичности сюжета. Поэтому синхронизация и выравнивание границ кадров коммутируемых потоков - проблема, которая должна решаться в момент склейки.
3) Изображения, занимающие разные интервалы времени в компрессированной форме, после декодирования должны воспроизводиться через равные промежутки времени. Решение этой проблемы требует наличия буфера декодера, в который блоки доступа загружаются за разное время, а выгружаются через равные интервалы. Буфер не должен ни переполняться, ни опустошаться полностью. Опустошение означает отсутствие данных для декодирования, что может быть преодолено замораживанием последнего декодированного кадра. Переполнение приводит к худшим последствиям, поскольку, оно означает потерю данных, из-за чего воспроизводимое изображение может быть искажено до тех пор. пока не придет новый Т-кадр. Стандартные кодеры MPHG работают так, что исключается и переполнение, и опустошение буфера. Но в момент коммутации параметры поток; данных меняются скачком, что может привести к нарушению работы буфера, емкость которого заполняется в среднем на 50%.
В о з м о ж н о с т и M P E G - 2.
Перечисленные проблемы приводят к тому, что лишь отдельные точки потока данных подходят для склейки без изменения кодированных данных объектов доступа (рисунок 25).
Рисунок 3.23 – Точки склейки транспортных потоков
В спецификации MPEG эти точки и называются точками склейки. Коммутация двух потоков и переход от старого потока к новому возможны лишь в том случае, если точки склейки двух потоков совпадают во времени.
Синтаксис MPEG-2 предусматривает средства обеспечения склейки даже на уровне транспортного потока, отличающиеся высокой фрагментацией. Среди этих средств первое место принадлежит счетчику пакетов до точки склейки. Счетчик представлю собой 8-разрядный счетчик, который декрементируется с каждым пакетом и состояние которого становится равным нулю в ближайшей потенциальной точке склейки (рисунок 26).
Рисунок 3.24 – Принципы вставки в транспортный поток
Счетчик располагается в поле адаптации транспортного пакета. Его назначение - сообщить коммутационному оборудованию о возможной склейке и указать ее точное положение.
Буфер, бесшовная склейка и стандартизация.
Спецификация MPEG-2 определяет вычислительную модель буфера VBV (Video Buffering Verifier), позволяющую оценить степень заполнения буферу декодера в процессе кодирования. Рисунок 27 иллюстрирует; работу модели при декодировании группы изображений из 12 кадров.
Рисунок 3.25 – Заполнение буфера декодера при декодировании группы изображений из 12 кадров
Блоки доступа поступаю в буфер непрерывно, причем скорость заполнения буфера пропорциональна скорости кодированного потока. Блоки доступа загружаются в буфер за разное время, поскольку кодированные изображения имеют разный объем данных. Выгружаются данные из буфера через одинаковые интервалы, равные час тоге кадров воспроизводимого изображения, при чем выгружаются целиком и моментально (это ведь модель, точные параметры этого процесса зависят от конкретной реализации буфера и декодера, поэтому детали процесса выгрузки данных из буфера декодер должен "продумать" самостоятельно). Требуется некоторое время (стартовая задержка), чтобы декодер смог декодировать и воспроизвести первое изображение, а после этого допустить выгрузку и буфера первого блока доступа. Спустя некоторое время после загрузки последнего блока доступ: декодер сможет воспроизвести последнее декодированное изображение (финишная задержка). В это момент буфер полностью опустошается.
Желательно, чтобы линия, показывающая заполнение буфера, колебалась вокруг значения в 50% и не подходила к предельным значениям 0 и 100%. Ест и другие соображения, которые надо учитывать при склейке. Если, например, стартовая задержка нового потока значительно больше финишной задержи старого, то после того, как будет воспроизведен и выгружено из буфера последнее изображение старого потока, то придется долго ждать декодирования и воспроизведения первого изображения нового потока (рисунок 28).
Рисунок 3.26 – Склейка транспортных потоков с заметным переходом
Это приведет, например, к замораживанию последнего изображения старого потока и заметной склейке. Если, например, скорость нового потока значительно больше скорости старого, то склейка будет еще более заметной (рисунок 29), поскольку при этом буфер переполняется, и часть данных теряется.
Рисунок 3.27 – Склейка транспортных потоков с заметным переходом из-за переполнения буфера декодера
Означает ли это,
что в общем случае бесшовная и незаметная
склейка потоков MPEG-2 невозможна? Конечно,
нет. Бесшовная склейки не требует
внесения принципиальных изменений в
стандарт, она может быть достигнута за
счет внесения определенных ограничений
в параметры склеиваемых потоков (рисунок
30).
Рисунок 3.28 – Бесшовная склейка транспортных потоков
Бесшовная склейка потоков является предметом исследований и стандартизации, причем учет ограничений, связанных с буфером декодера, являются одним из главных факторов. Несомненно, проблема бесшовной склейки в почти произвольной точке потока будет решена, поскольку после введения ограничений на параметры потоков оставшиеся вопросы будут носить вычислительный характер.
M P E G в т е л е в и д е н и и б у д у щ е г о.
Телевидение находится сейчас на этапе кардинальных перемен, обусловленных слиянием телевизионных, компьютерных и телекоммуникационных технологий. Совокупность локальных и глобальных информационных сетей станет естественной составной частью инфраструктуры производства телевизионных программ и телевизионного вещания уже в ближайшем будущем.
MPEG-2 изначально задумывался как система компрессии для телевизионного вещания при сравнительно небольших скоростях потоков данных. По возможности алгоритмов, заложенных н его основу; оказались столь значительными, что MPEG-2 поглотил сферу телевидения высокой четкости, первоначально отводившуюся проекту MPEG-3. Способности стандарта MPEG-2 приспосабливать к разным скоростям потока данных, уровням качества и сферам применения чрезвычайно велики. Основной уровень основного профиля уже используется для вещания в цифровом телевидении стандартной четкости, высокий уровень основного профиля в цифровом телевидении высокой четкости. Возникла потребность в студийном применении - и в рамках MPEG-2 был выделен профиль 422. И уже есть практические приложении этого профиля с группами изображений из двух и одного кадра, реализованные в промышленной аппаратуре. В соответствии с пазовым алгоритмом собственно компрессии MPEG-2 с одними 1-кадрами - это то же, что и компрессия типа DV, ведь обе схемы основаны на дискретном косинусном преобразовании. Поэтому MPEG-2 в большей мере, чем другие системы компрессии, достоин того, чтобы стать универсальным стандартом обмена компрессированными потоками данных в инфраструктуре телевидения будущего.
