4.4. Обзор MPEG-4 Visual (Part2)MPEG-4 Visual (Part 2 ISO/IEC 14496, «кодирование аудиовизуальных объектов») представляет собой объемный документ, описывающий довольно широкий класс функций, относящихся к кодированию и представлению визуальной информации. Стандарт имеет дело со следующими типами данных: - движущиеся изображения (прямоугольные кадры): - видеообъекты (области произвольной формы с движущимися предметами); - двухмерные и трехмерные сеточные объекты (представляющие деформируемые объекты); - анимированные лица и фигуры людей; - статические текстуры (неподвижные изображения). Стандарт описывает множество «инструментов» кодирования, которые разработаны для представления этих типов данных в сжатом (кодированном) виде. Имея разнообразные семейства инструментов, стандарт MPEG-4 Visual может поддерживать различные приложения, включая следующие (но не ограничиваясь только ими): - «наследие» основных видеоприложений, таких как цифровое телевещание, видеоконференции и хранение видео; - видеоприложения на основе объектов, в которых видеосцена может быть скомпонована различными видеообъектами, закодированными независимо друг от друга; - представление компьютерной графики с использованием двухмерной и трехмерной деформируемой сеточной геометрии и анимированных лиц и фигур людей; - «гибридные" видеоприложения, в которых комбинируются естественные видеосцены, неподвижные изображения и графика, сгенерированная компьютером; - потоковое видео, передаваемое через Интернет и каналы мобильной связи: - высококачественная видеопродукция, изготовленная и распространяемая для студийного употребления. Несмотря на поражающее многообразие инструментов, задаваемых стандартом, в сердцевине MPEG-4 Visual находится довольно простой механизм видеокодирования, использующий кодек на основе блоков с компенсацией движения и с последующим преобразованием DCT, квантованием и энтропийным кодированием (по существу, это модель DPCM/DCT, описанная в гл. 3). Синтаксис этого стержневого кодека (при некоторых ограничениях) идентичен ядру Н.263. Большинство остальных функций и инструментов, поддерживаемых стандартом, получаются добавлением некоторых деталей, за исключением инструментария кодирования сеток, неподвижных изображений и параметров анимации лиц и фигур, которые разрабатываются отдельно. Технические детали стандарта подробно разбираются в гл. 5. В качестве первого ознакомления со стандартом имеет смысл взглянуть на основные разделы этого документа и узнать, к чему они относятся. Введение дает обзор целевых приложений, подходов и типов данных с особым акцентом на двухмерные и трехмерные сеточные объекты (причина этого внимания не вполне понятна). Разделы с 1-го по 5-ый являются преамбулой к описанию технических деталей стандарта. Раздел 1 описывает рамки и границы стандарта, раздел 2 содержит ссылки на другие документы стандарта, раздел 3 состоит из полезного (но не полного) списка терминологии и определений, раздел 4 перечисляет символы и сокращения, используемые в стандарте, а раздел 5 объясняет основные соглашения для описания синтаксиса стандарта. Раздел 6 описывает синтаксис и семантику стандарта MPEG-4 Visual. Здесь определены различные структуры элементов битового потока вместе с предполагаемыми форматами несжатого видео. Описан синтаксис «правильного» битового потока, определено, какие синтаксические элементы являются частью стандарта и в каких последовательностях они могут встречаться. Там, где это необходимо, приводится семантика (смысл и допустимые значения) всех синтаксических элементов. Раздел 6 определяет допустимые параметры битового потока MPEG-4 Visual, и «правильный» кодер должен производить битовые потоки, отвечающие этим правилам. Раздел 7 посвящен описанию процесса декодирования битовых потоков MPEG-4 Visual. Этот раздел определяет последовательность шагов, требуемых для декодирования правильного потока и для его преобразования в визуальные сцены или в визуальные объекты. Прежде всего описывается основные шаги декодирования остаточных данных («текстур»), параметров форм и компенсации движения. Затем рассматриваются специальные инструменты, необходимые для кодирования других объектов (чересстрочное видеокодирование, кодирование неподвижных изображений, «спрайтов» и масштабируемых объектов и т.п.). Далее в разделе 7 определяется, как следует декодировать битовый поток MPEG-4 Visual. «Правильный» декодер должен выполнять все эти или эквивалентные им процедуры. В разделе 8 обсуждаются методы композиции объектов, закодированных независимо друг от друга, при создании синтетических видеосцен. В разделе 9 дается определение важных понятий стандарта — профиль и уровень. Это специфические подмножества инструментов кодирования (профили) и рабочие характеристики (уровни), которые кодек может выбирать и использовать. Эти точки соответствия особенно важны для разработчиков и производителей, поскольку представляется маловероятным, что конкретному приложению потребуется все разнообразие инструментов, обеспечиваемых стандартом. Оставшаяся часть документации (около 200 страниц) состоит из 15 приложений (от приложения А до приложения О). Некоторые носят нормативный характер, т.е. являются важными частями стандарта. Прежде всего это DCT и дискретное вейвлетное преобразование, используемое стандартом, таблицы кодов переменной длины, применяемых в битовых потоках MPEG-4 Visual, а также буферная проверка видео VBV (Video Buffering Verifier), которая накладывает ограничения на рабочие параметры кодека. Остальные приложения являются информационными. В них разъясняются некоторые детали стандарта, но они не содержат новых определений. В виде примеров выделены описания методов устойчивости против ошибок, предложения по предварительной и последующей видеообработке, указания по организации алгоритмов контроля битовой скорости, а также список компаний, обладающих полезными патентами, на основе которых можно реализовывать некоторые функции стандарта.
|