5.2.2. Инструменты, объекты, профили и уровниMPEG-4 Visual обеспечивает функции кодирования с помощью комбинирования инструментов, объектов и профилей. Инструмент - это подмножество функций кодирования для поддержки специфических действий (например, базовое видеокодирование, чересстрочное видео, форма кодируемого объекта и т.д.). Объект - это элемент видео (например, последовательность прямоугольных кадров, областей произвольной формы или неподвижное изображение), который кодируется с помощью одного или нескольких инструментов. Например, простой видеообъект кодируется с применением ограниченного подмножества функций (инструментов), обеспечивающего обработку прямоугольных кадров, базовый видеообъект кодируется инструментами для работы с областями неправильной формы и т.д. Профиль — это множество типов объектов, которые предположительно будет обрабатывать данный кодек. Таблица 5.1. Профили MPEG-4 Visual для кодирования обычного видео.
В табл. 5.1 перечислены все профили для работы с «естественными» видеосценами, начиная с простого профиля (кодирование прямоугольных кадров), за которым следуют профили для обработки видеообластей любой формы и для масштабируемого кодирования, и заканчивая профилями для кодирования видео студийного качества. В табл. 5.2 дан список профилей для кодирования «синтетического" видео (анимированные сеточные объекты и модели лиц и фигур людей), а также гибридный профиль (в который встроены функциональные модули для обработки и синтетических, и натуральных видеосцен). Эти профили не используются (на текущий момент) для сжатия естественного видео, и поэтому они описаны менее подробно в данной книге. Таблица 5.2. Профили MPEG-4 Visual для кодирования синтетического и гибридного видео.
На рис. 5.1 приведены все профили (левый столбец) и все типы объектов (верхняя строка) стандарта MPEG-4 Visual. Галочками отмечены типы объектов, используемые в данном профиле. Например, кодек, совместимый с простым профилем, должен уметь кодировать и декодировать простые объекты, а кодек основного профиля должен работать и с простыми, и с основными объектами. Профили представляют собой удобный механизм для организации взаимодействия между кодеками от разных производителей. В стандарте MPEG-4 Visual описано чрезвычайно широкое семейство инструментов, и, по всей видимости, в конкретном коммерческом кодеке не придется реализовывать все эти инструменты. Вместо этого разработчики кодека могут выбрать некоторый профиль, содержащий необходимый им набор инструментов, для выполнения поставленной задачи. Например, относительно простой кодек для работы на маломощном процессоре может использовать простой профиль, а при разработке кодека для работы с потоковым видео можно выбрать простой расширенный профиль в реальном времени и т.п. При этом разные профили будут использоваться с разной частотой, и приложения на их основе будут иметь разный вес на рынке соответствующего программного обеспечения. Простой и простой расширенный профили особенно популярны у производителей, в то время как профили для кодирования объектов произвольной формы менее востребованы (см. гл. 8, где продолжается дискуссия коммерческого влияния профилей MPEG-4). Рис. 5.1. Профили и объекты MPEG-4 Visual. Профили состоят из инструментов кодирования, а уровни задают ограничения на параметры битовых потоков. В табл. 5.3 перечислены уровни популярных профилей на основе простого профиля (простой, расширенный простой и простой расширенный в реальном времени). Каждый уровень устанавливает ограничения на максимальную производительность, требуемую при декодировании битового потока в стандарте MPEG-4. Например, мультимедийный терминал с маломощным процессором и ограниченной памятью сможет обеспечить работу кодека простого профиля с уровнем битового потока L0. Уровень определяет ограничения на объем буфера памяти, размер видеокадра, скорость обработки потока (в макроблоках за секунду) и число видеообъектов (в нашем случае это один прямоугольный кадр). Терминал, способный работать с таким набором параметров, будет гарантированно декодировать любой «правильный» битовый поток, сгенерированный кодеком с простым профилем и уровнем L0. Более высокие уровни простого профиля должны справляться с четырьмя объектами этого профиля (например, с четырьмя прямоугольными кадрами формата QCIF или CIF). Таблица 5.3. Уровни профилей на основе простого.
|