Стандарт MPEG-4 (часть 1)
MPEG-4 – это стандарт ISO/IEC, разработанный группой экспертов MPEG (Moving Picture Experts Group). Этот комитет также разработал такие известные стандарты как MPEG-1 и MPEG-2, которые сделали возможным интерактивное видео на CD-ROM и цифровое телевидение. MPEG-4 стал результатом совместной работы многих исследователей и разработчиков по всему миру. Разработка MPEG-4 завершилась в октябре 1998 года и стала международным стандартом в начале 1999 года. Расширенный вариант MPEG-4 версия 2 был разработан к концу 1999 года и стал международным стандартом в начале 2000 года. Работы над этим стандартом продолжаются. MPEG-4 был разработан для решения следующих задач:
- Цифровое телевидение;
- Интерактивные графические приложения;
- Интерактивное мультимедиа в интернете.
Особенности стандарта MPEG-4
Стандарт MPEG-4 предоставляет технологии для разработчиков, сервис-провайдеров и пользователей.
- Для разработчиков, MPEG-4 позволяет создавать объекты с большой адаптивностью и гибкостью. Стандарт также предоставляет инструменты для защиты авторских прав.
- Для сетевых провайдеров, MPEG-4 предлагает прозрачную передачу данных и оптимизацию транспортировки данных в разных сетевых условиях.
- Для конечных пользователей, MPEG-4 предоставляет возможности для интерактивного взаимодействия с мультимедийным контентом.
Что определяет стандарт MPEG-4?
- Представление звуковой, визуальной и аудиовизуальной информации в виде "медийных объектов".
- Описание композиции этих объектов для создания медийных сцен.
- Мультиплексирование и синхронизация данных медийных объектов.
- Взаимодействие с аудиовизуальной сценой на принимающем устройстве.
Кодированное представление медийных объектов
Аудиовизуальные сцены MPEG-4 состоят из различных медийных объектов, организованных иерархически. Эти объекты включают:
- Статические изображения;
- Видео-объекты;
- Аудио-объекты и многие другие.
MPEG-4 стандартизует ряд примитивных медиа-объектов, которые могут представлять как естественное, так и синтетическое содержимое, будь то 2D или 3D. Помимо упомянутых медиа-объектов, MPEG-4 определяет кодовое представление таких объектов, как:
- Текст и графика;
- Синтезированные говорящие головы и связанный с ними текст для синтеза речи и анимации;
- Синтезированный звук.
Каждый медиа-объект в его закодированной форме содержит описательные элементы, которые позволяют его обработку в аудиовизуальной сцене, а также, при необходимости, ассоциированный с ним поток данных. Важно подчеркнуть, что закодированная форма каждого медиа-объекта может быть представлена независимо от его контекста или фона. Кодовое представление медиа-объектов оптимизировано для обеспечения необходимой функциональности, такой как надежная обработка ошибок, удобное извлечение и редактирование объектов, а также масштабируемое представление объектов.
Состав медийных объектов
Рис. 1 иллюстрирует метод описания аудиовизуальных сцен в MPEG-4, состоящих из отдельных объектов. На рисунке представлены составные медиа-объекты, которые объединяют примитивные медиа-объекты. Примитивные медиа-объекты находятся на периферии описательного дерева, в то время как составные медиа-объекты представляют собой поддеревья. Например, визуальные объекты, соответствующие говорящему человеку, и его голос могут быть объединены в один составной медиа-объект.
Такой подход к группировке позволяет разработчикам создавать сложные сцены и дает пользователям возможность манипулировать отдельными объектами или их группами.
MPEG-4 предоставляет стандартный способ описания сцен, позволяющий:
- Размещать медиа-объекты в любом месте заданной координатной системы;
- Применять преобразования для изменения геометрического или акустического характера медиа-объекта;
- Группировать примитивные медиа-объекты для создания составных;
- Использовать потоки данных для модификации атрибутов медиа-объектов, таких как звук или движущаяся текстура;
- Интерактивно изменять позицию пользователя на сцене.
Метод описания сцены во многом напоминает язык моделирования виртуальной реальности VRML (Virtual Reality Modeling Language).
Рис. 1. Пример сцены MPEG-4
Описание и синхронизация потоков данных для медийных объектов
Медиа-объекты могут требовать поток данных, который может быть разделен на один или несколько элементарных потоков. Дескриптор объекта помогает идентифицировать все ассоциированные с объектом потоки. Это дает возможность иерархически обработать кодированные данные и связанную с ними информацию о содержимом (называемую "информацией содержимого объекта").
Каждый поток описывается через набор дескрипторов, которые содержат информацию для его конфигурации. Например, они могут указывать на необходимые ресурсы устройства записи и точность временной информации, предоставляемой потоком. Кроме того, дескрипторы могут предоставить подсказки относительно качества обслуживания (QoS), таких как максимальный битрейт, BER (коэффициент ошибок бит) и приоритеты.
Для обеспечения синхронизации элементарных потоков используются временные метки блоков данных. Уровень синхронизации управляет определением этих блоков данных и их временными метками. Независимо от типа среды, этот уровень позволяет определять тип данных в элементарных потоках (например, видеокадры или аудиокадры), восстанавливать временную базу для медиа-объекта или описания сцены и синхронизировать их. Синтаксис этого уровня может быть настроен различными способами, чтобы соответствовать разнообразным системам.
Доставка потоков данных
Для обеспечения синхронизованной передачи потоков данных от отправителя к получателю с учетом различных QoS, доступных в сети, используется система, основанная на слоях синхронизации и доставки. Эта система включает в себя двухуровневый мультиплексор, как показано на рис. 2.
Первый слой мультиплексирования работает согласно спецификации DMIF (Delivery Multimedia Integration Framework). Для мультиплексирования может использоваться мультиплексор FlexMux, разработанный в рамках стандарта MPEG. Он позволяет группировать элементарные потоки (ES - Elementary Streams) с минимальной избыточностью. Мультиплексирование на этом уровне может применяться, например, для объединения потоков с похожими требованиями к QoS, с целью сокращения количества сетевых соединений или времени задержки.
Слой "TransMux" (Transport Multiplexing) на рис. 2 представляет собой уровень, который предоставляет транспортные услуги, соответствующие требованиям QoS. MPEG-4 определяет только интерфейс этого слоя, в то время как спецификации для данных в пакетах будут зависеть от выбранного транспортного протокола. Все существующие стеки транспортных протоколов, такие как (RTP)/UDP/IP, (AAL5)/ATM или MPEG-2 Transport Stream, могут служить примерами TransMux. Этот выбор оставлен на усмотрение конечного пользователя или сервис-провайдера, что позволяет интегрировать MPEG-4 в различные операционные среды.
Рис. 2. Модель системного слоя MPEG-4
Использование мультиплексора FlexMux не является обязательным. Как показано на рис. 2, этот слой может отсутствовать, если нижний слой TransMux предоставляет все необходимые функции. Однако слой синхронизации всегда присутствует. Учитывая это, следующие возможности становятся доступными:
- Идентификация модулей доступа, временных меток и эталонной временной информации, а также отслеживание потерь данных.
- Опциональное распределение данных из различных элементарных потоков в потоки FlexMux.
- Передача управляющей информации.
- Индикация необходимого уровня QoS для каждого элементарного потока и потока FlexMux.
- Преобразование данных требований QoS в реальные сетевые ресурсы.
- Ассоциация элементарных потоков с медиа-объектами.
- Указание связи элементарных потоков с каналами FlexMux и TransMux.
Взаимодействие с медийными объектами
Пользователь наблюдает сцену, созданную согласно дизайну разработчика. В зависимости от предоставленных разработчиком возможностей, пользователь может взаимодействовать с данной сценой. Возможны следующие действия со стороны пользователя:
- Изменение точки наблюдения или слушания на сцене.
- Перемещение объектов внутри сцены.
- Инициирование ряда событий, таких как нажатие кнопки мыши на конкретных объектах, что может запустить или остановить поток данных.
- Выбор предпочитаемого языка, если такая возможность предоставлена.
Управление и идентификация интеллектуальной собственности
Для MPEG-4 медиа-объектов критично важно уметь идентифицировать интеллектуальную собственность. Подробный список требований к идентификации интеллектуальной собственности доступен на официальной странице MPEG в разделе "Управление и защита интеллектуальной собственности".
MPEG-4 предоставляет возможность идентификации интеллектуальной собственности через сохранение уникальных идентификаторов, выданных международными системами нумерации (например, ISAN, ISRC). Эти идентификаторы могут применяться для определения текущего владельца прав на медиа-объект. Поскольку не все содержимое может быть определено таким образом, MPEG-4 версия 1 также предоставляет механизм идентификации с использованием пары ключ/значение (например, "композитор"/"Джон Смит"). Кроме того, в MPEG-4 представлен стандартизованный интерфейс для интеграции с системами контроля прав интеллектуальной собственности.
Ключевые возможности в MPEG-4 версия 1
DMIF включает в себя следующие функции:
- Независимый от типа среды прозрачный интерфейс MPEG-4 DMIF-приложения.
- Управление установкой каналов FlexMux.
- Поддержка различных типов сетей для связи между интерактивными участниками: IP, ATM, мобильные сети, PSTN, узкополосные ISDN.
Системы
MPEG-4 представляет собой набор алгоритмов для усовершенствованного сжатия аудио и видео данных. После процесса кодирования полученные потоки данных (Elementary Streams, ES) могут быть переданы или сохранены отдельно. Однако для корректного воспроизведения на стороне получателя, эти потоки необходимо правильно скомбинировать для создания полноценной мультимедийной презентации.
Системные аспекты MPEG-4 регулируют взаимодействия между аудио и видео компонентами сцены. Эти взаимодействия разделены на два уровня:
- BIFS (Binary Format for Scenes) определяет пространственные и временные отношения объектов на сцене. Этот формат дает возможность пользователю взаимодействовать с объектами, перемещая их или меняя свою точку просмотра в 3D-пространстве. Описания сцен включают в себя обширный набор узлов для 2D и 3D композиционных операций и графических примитивов.
- На более низком уровне, OD (Object Descriptors) определяют связи между элементарными потоками, связанными с определенным объектом (например, аудио и видео потоками участника видеоконференции). OD также предоставляет дополнительную информацию, например, URL для доступа к потокам, характеристики декодеров и информацию об авторских правах.
Другие характеристики системы MPEG-4:
- Интерактивность, включая клиент-серверное взаимодействие, универсальную модель событий, отслеживание действий пользователя, а также обработку событий и отслеживание взаимодействия объектов на сцене.
- Объединение множества потоков в один с использованием временной информации через мультиплексор FlexMux.
- Возможность сохранения данных MPEG-4 в файловом формате ‘MP4’.
- Поддержка интерфейсов для различных терминалов и сетей через Java API (MPEG-J).
- Независимость от транспортного уровня.
- Текстовые презентации с многоязычной поддержкой, выбором шрифта, стиля, и синхронизацией.
- Инициализация и управление буферами приемных терминалов, синхронизация и механизмы восстановления.
- Данные, связанные с идентификацией прав интеллектуальной собственности для медиа-объектов.
Аудио-система
MPEG-4 аудио предлагает широкий диапазон приложений, охватывающих область от четкой речи до высококачественного многоканального аудио, и от натуральных до синтетических звуков. В частности, он поддерживает высокоэффективное представление аудио объектов, состоящих из:
- Речи: Кодирование речи может производиться при скоростях обмена от 2 кбит/с до 24 кбит/с. Низкие скорости передачи, такие как 1.2 кбит/с, также возможны, когда разрешена переменная скорость кодирования.
- Синтезированной речи: TTS-кодировщики с масштабируемой скоростью в диапазоне от 200 бит/с до 1.2 кбит/с.
- Синтез речи с использованием интонации оригинальной речи.
- Управление синхронизацией губ и фонемной информации.
- Трюковые возможности: пауза, возобновление, переход вперед/назад.
- Международный язык и поддержка диалектов для текста.
- Поддержка интернациональных символов для фонем.
- Поддержка спецификации возраста, пола, темпа речи говорящего.
- Поддержка передачи меток анимационных параметров лица FAP (facial animation parameter).
- Общих аудио сигналов: Поддержка общей кодировки аудио потоков от низких скоростей до высококачественных.
- Синтезированного звука: Поддержка синтезированного звука осуществляется декодером структурированного звука.
- Синтетического звука с ограниченной сложностью: Реализуется структурированным аудио декодером.
Дополнительные функции включают управление скоростью передачи данных, масштабируемость относительно потоков данных, полосы пропускания, ошибок, сложности и других параметров:
- Регулировка скорости передачи позволяет изменять временной масштаб без изменения частоты при декодировании. Это может применяться, например, при функции "быстрого просмотра" или для подгонки длины аудиозаписи.
- Функция изменения частоты позволяет корректировать частоту без изменения временного масштаба. Это может быть применено для коррекции голоса или в караоке. Такой подход используется в методах параметрического кодирования звука.
- Изменение скорости передачи позволяет разбивать поток данных на субпотоки меньшей скорости для последующего декодирования.
- Масштабируемость полосы пропускания позволяет адаптировать часть потока данных, представляющую определенный частотный диапазон.
- Масштабируемость сложности кодирования обеспечивает генерацию потоков данных кодировщиками разной сложности.
- Масштабируемость сложности декодирования позволяет разным декодерам обрабатывать поток данных одной и той же скорости.
- Аудиоэффекты предоставляют возможность обработки декодированных аудиосигналов для достижения различных эффектов, таких как реверберация, объемное звучание и другие.
Видео-система
Стандарт MPEG-4 Видео позволяет кодировать как естественные (пиксельные) изображения и видео, так и синтезированные сцены (созданные на компьютере). Это предоставляет возможность виртуального участия в видеоконференциях. Видеостандарт включает в себя инструменты и алгоритмы для кодирования естественных (пиксельных) статических изображений и видеопоследовательностей, а также инструменты для сжатия синтетических 2-D и 3-D графических параметров.
Поддерживаемые форматы
MPEG-4 версия 1 будет поддерживать следующие форматы и скорости передачи:
- Скорости передачи данных обычно варьируются от 5 кбит/с до 10 Мбит/с.
- Поддерживаемые форматы: как progressive, так и interlaced видео.
- Разрешение: от sub-QCIF до HDTV.
Эффективность сжатия
Эффективность сжатия является одним из ключевых аспектов стандарта MPEG-4. В этом контексте учитываются следующие особенности:
- Все скорости передачи данных поддерживают эффективное сжатие видео. Возможно компактное кодирование текстур с регулируемым качеством от "приемлемого" (при высоком уровне сжатия) до "почти без потерь".
- Предусмотрено эффективное сжатие текстур для 2-D и 3-D графических сеток.
- Видео поддерживает произвольный доступ, что позволяет реализовать функции паузы, быстрого просмотра вперед или назад в записанных видеосеквенциях.
Функции, зависящие от содержимого (Content-Based)
Одной из особенностей стандарта MPEG-4 является его способность предоставлять функции, которые учитывают содержимое медиа:
- Кодирование, основанное на содержимом изображения и видео, позволяет разделить кодовое преобразование и реконструкцию видео-объектов произвольной формы.
- Произвольный доступ к содержимому видео последовательности позволяет реализовать функции паузы, быстрого перехода вперед или назад для определенных видео-объектов.
- Расширенное манипулирование видеосеквенциями дает возможность наложения на видео естественных или синтетических текстов, текстур, изображений. Например, текст может быть наложен на движущийся видео объект так, что он будет двигаться вместе с объектом.
Масштабируемость текстур изображений и видео
Одной из ключевых особенностей стандарта MPEG-4 является его способность масштабировать различные аспекты текстур, изображений и видео. Давайте рассмотрим эту функциональность более подробно:
- Масштабируемость сложности в кодировщике: Кодировщики различной сложности могут создавать правильные и содержательные потоки данных. Это гарантирует, что различные кодировщики могут генерировать данные для одной и той же текстуры или видео.
- Масштабируемость сложности в декодере: Это дает возможность декодировать данные различными декодерами, имеющими разную сложность. В зависимости от сложности декодера, качество воспроизведения может варьироваться.
- Пространственная масштабируемость: Декодеры могут обрабатывать часть информационного потока, чтобы воспроизвести текстуры или видео с нижним пространственным разрешением. Например, для текстур может быть до 11 уровней масштабирования, а для видео - до трех уровней.
- Временная масштабируемость: Это позволяет декодерам обрабатывать только часть данных для воспроизведения видео с пониженной частотой кадров. Таким образом, декодеры могут адаптировать воспроизведение под различные скорости.
- Масштабируемость качества: Поток данных может быть разделен на разные компоненты, каждая из которых может влиять на качество изображения или видео. В зависимости от того, сколько компонентов используется при декодировании, качество может изменяться.
Кодирование формы и Alpha-представление
В современных системах кодирования, таких как MPEG-4, реализованы методы для более сложного и детального представления изображений и видео. Особенное внимание уделяется кодированию формы и alpha-представлению.
- Кодирование формы: Данная функция позволяет описывать и компоновать изображения, видео и видео-объекты нестандартных форм. Применение двоичных побитовых карт изображения актуально для презентаций баз данных изображений, интерактивных игр, систем наблюдения и анимаций. Используются методы, которые эффективно кодируют двоичные формы. В этом контексте двоичная альфа-маска помогает определить, принадлежит ли пиксель конкретному объекту, и может быть активирована или деактивирована.
- Кодирование на основе 'серой шкалы' или 'альфа' формы: Alpha-плоскость используется для определения уровня прозрачности объекта. Данный уровень может быть не однородным, что позволяет создавать более сложные и детализированные изображения. Многомерные alpha-карты активно используются для создания эффектов затенения в различных слоях изображений. Такие техники, как двоичные alpha-маски и маски с серой шкалой, широко применяются в различных приложениях, включая презентации, игры и анимации. Они обеспечивают высокую точность в определении прозрачности каждого пикселя.
Надежность в средах, подверженных ошибкам
Одной из ключевых особенностей стандарта MPEG-4 является устойчивость к ошибкам, что позволяет обеспечить стабильный доступ к изображениям и видео в различных системах памяти и трансляции. Особое внимание уделяется обеспечению надежности в условиях, когда система подвержена ошибкам, особенно при низких скоростях передачи данных (например, менее 64 Кбит/с).
Анимация лица
В рамках стандарта MPEG-4 предусмотрена возможность анимации лица. Это позволяет передавать параметры, которые способствуют спецификации и анимации синтезированных лиц. Сама модель лица не стандартизирована, только параметры. К основным функциям относятся:
- Определение и кодирование анимационных параметров лица, включая позиции и ориентацию характерных деталей.
- Визуальные конфигурации губ, соответствующие различным фонемам речи.
- Определение и кодирование параметров описания лица, таких как 3D позиции, калибровочные сетки, текстурные карты и личные характеристики.
- Кодирование текстур лица.
Кодирование 2-D сеток с нечетко выраженной структурой
Для кодирования 2-D сеток стандарт предлагает ряд методов и подходов:
- Предсказание, основанное на сетке, и трансформация анимационных текстур.
- 2-D форматирование с регулярной сеткой для отслеживания перемещений анимированных объектов.
- Предсказание перемещений и последующая передача текстуры с динамическими сетками.
- Геометрическое сжатие для векторов перемещения и 2-D сжатие сетки с неявной структурой.
Главные функции в MPEG-4 версия 2
В декабре 1999 года была утверждена версия 2 стандарта MPEG-4. Она не предполагает замены инструментов и профилей из версии 1, но вводит ряд новых возможностей в форме дополнительных профилей. Отметим, что системный слой версии 2 сохраняет обратную совместимость с первой версией.
Вторая версия системы MPEG-4 дополняет и расширяет первую, добавляя такие функции, как расширенные возможности BIFS и поддержка Java (MPEG-J). Также в версии 2 представлен формат файлов для сохранения контента MPEG-4.
Натуральное видео
Версия 2 видеостандарта MPEG-4 вводит ряд новых возможностей в области видеокодирования:
- Повышенная гибкость объектно-ориентированного масштабируемого кодирования.
- Улучшенная производительность кодирования.
- Большая стабильность временного разрешения при минимальной задержке буферизации.
- Повышенная устойчивость к ошибкам.
- Кодирование нескольких изображений: поддержка промежуточных или стереоскопических изображений на основе оптимизированного кодирования нескольких изображений или видео. Например, это может включать в себя кодирование стереоскопического изображения путем уменьшения избыточности между двумя изображениями в стереопаре.
Анимация тела
К уже существующей в версии 1 функции анимации лица в версии 2 была добавлена возможность анимации тела.
Кодирование 3-D полигональных сеток
Версия 2 стандарта MPEG-4 предлагает инструменты для кодирования трехмерных многогранных сеток. Эти сети находят широкое применение при создании 3D-моделей объектов.
Звук
Аудиостандарт MPEG-4 версии 2 является дополнением к версии 1. В нем сохранены все ранее существующие функции, и добавлены новые инструменты и возможности. В частности, версия 2 предлагает:
- Повышенную устойчивость к ошибкам.
- Кодирование аудио с высоким качеством и минимальной задержкой.
- Масштабируемость качества аудио, позволяющая изменять разрешение до 1 кбит/с на канал.
- Параметрическое кодирование аудио для манипуляций со звуком при низкой скорости передачи данных.
- Сжатие пауз в речи (CELP) для дополнительного уменьшения битрейта при кодировании голоса.
- Параметрическое кодирование речи с учетом возможных ошибок.
- Способность воссоздавать звуковое пространство с использованием методов моделирования.
- Обратный канал, полезный для настройки кодирования или масштабирования воспроизведения в реальном времени.
- Сокращенное избыточное кодирование для звуковых данных в транспортном механизме MPEG-4.
DMIF
Одним из ключевых инструментов, введенных в DMIF версии 2, является поддержка (хоть и ограниченная) мобильных сетей и мониторинга качества обслуживания (QoS).
Поддержка мобильных сетей
Стандарт H.245 был дополнен (версия H.245v6) для интеграции с системами MPEG-4; DMIF теперь может обрабатывать сигналы H.245. Это означает, что мобильные устройства теперь могут быть интегрированы с функционалом MPEG-4, например, с использованием BIFS и OD-потоков.
Мониторирование QoS
В DMIF версии 2 представлена концепция мониторинга качества обслуживания (QoS) в сети. Интерфейс DMIF был расширен для поддержки этой функции. Существуют три различных режима мониторинга QoS: непрерывное наблюдение, контроль конкретных очередей и контроль за нарушениями в QoS.
Пользовательские команды с подтверждением
Модель DMIF позволяет партнерским приложениям обмениваться пользовательскими сообщениями. В версии DMIF V2 была добавлена функция подтверждения приема сообщений.
Управление информацией уровня Sync MPEG-4
Версия DMIF V.2 была доработана, чтобы позволить приложениям обмениваться данными с уровнем DMIF. Эта функция была добавлена, чтобы в рамках модели DMIF осуществлять обмен блоками данных протокола уровня Sync. Это сочетание медиаданных и логической информации уровня Sync. Модель предполагает, что внутри текущего транспортного стека есть функции, которые дублируют функции уровня Sync системы MPEG-4. Например, это относится к RTP, MPEG-2 PES и MP4 в файловом формате. Во всех этих случаях реализация DMIF включает преобразование информации уровня Sync в унифицированное логическое представление. В результате были добавлены соответствующие параметры для DAI.
DAI-синтаксис на языке СИ
В DMIF версии 2 представлено информативное дополнение, которое описывает синтаксис C/C++ для прикладного интерфейса DMIF, соответствующего рекомендуемому API-синтаксису.
Расширения MPEG-4 за пределы версии 2
На данный момент, MPEG активно работает над расширением версии 2 в визуальной и системной областях. Дополнительные работы по расширению MPEG-4 DMIF или аудио за рамками версии 2 не проводились.
Визуальная область системы
В рамках визуальной области планируется внедрение следующих методик:
- Масштабирование пространственного разрешения (Fine Grain) находится на стадии утверждения, с предложенными профилями поточного видео, такими как ‘Advanced Simple’ и ‘Fine Grain Scalability’. Данный метод позволяет производить небольшие коррекции качества путем добавления или исключения дополнительных слоев информации. Это может быть полезно в различных ситуациях, включая управление потоками и мультиплексирование предварительно закодированных данных в среде трансляции.
- Средства для работы с MPEG-4 на студийном оборудовании. В этом контексте предприняты шаги к обеспечению совместимости с профилями MPEG-2. В настоящее время, простой студийный профиль проходит этап голосования. Этот профиль предоставляет кодирование только I-кадров на высоких битрейтах и использует форму кодирования изображений. Ожидается добавление основного студийного профиля.
- Также ведется исследование в области цифровых камер. Это направление требует абсолютно безпотерьного кодирования, в отличие от визуально безпотерьного, предоставленного MPEG-4 до сих пор. Первый запрос на предложения был выпущен в октябре 2000 года.
Advanced BIFS
Продвинутый BIFS вводит дополнительные узлы, которые можно использовать в структуре сцены для мониторинга и управления средой. Это включает в себя отправку команд на сервер, расширенное управление воспроизведением и узел EXTERNPROTO, который обеспечивает дополнительную совместимость с VRML и позволяет создание макросов для определения поведения объектов. Также предусмотрено улучшенное сжатие данных для BIFS, особенно для сеток и массивов данных.
Текстуальный формат
Расширенный текстовый формат MPEG-4, известный как XMT, служит основой для представления описаний сцен MPEG-4 с использованием текстового синтаксиса. XMT обеспечивает обмен содержимым между авторами. Средства для обеспечения совместимости с X3D (Extensible 3D) и SMIL (Synchronized Multimedia Integration Language) разработаны соответствующими консорциумами Web3D и W3C.
XMT может быть модифицирован участниками SMIL, VRML и MPEG-4. Этот формат может быть прочитан и воспроизведен напрямую участниками W3C SMIL, конвертирован в Web3D X3D и вновь воспроизведен участниками VRML, или скомпилирован в презентацию MPEG-4, которая может быть затем воспроизведена участниками MPEG-4. Далее описано взаимодействие с XMT, включая MPEG-4, большую часть SMIL, Scalable Vector Graphics, X3D и текстовое представление описания MPEG-7.
XMT предлагает два уровня текстового синтаксиса и семантики: форматы XMT-A и XMT-U. XMT-A является версией MPEG-4 на основе XML и содержит подмножество X3D. XMT-A также включает расширение MPEG-4 для X3D. XMT-U представляет собой абстракцию инструментов высокого уровня MPEG-4 на основе W3C SMIL.
Улучшенная модель синхронизации
Продвинутая модель синхронизации, часто называемая "FlexTime", предоставляет механизм для синхронизации объектов разного происхождения, которые могут иметь различные временные шкалы. FlexTime устанавливает временные связи, используя гибкую модель с временными ограничениями. В рамках этой модели, медиа-объекты могут быть связаны во временной структуре с использованием ограничений, таких как "CoStart", "CoEnd" или "Meet". Кроме того, каждый объект может иметь адаптивную продолжительность с возможностью растяжения или сжатия в зависимости от установленных ограничений.
Основная идея модели FlexTime заключается в метафоре "пружины". Каждая пружина имеет минимальную длину, при которой она не может сжиматься дальше, максимальную длину, при которой она может растягиваться до порыва, и оптимальную длину, при которой она остается в невозмущенном состоянии. Аналогично, временные медиа-объекты могут рассматриваться как такие пружины, с длительностью воспроизведения, соответствующей этим трем ограничениям. Оптимальная длительность воспроизведения представляет собой предпочтительное значение, заданное автором, но воспроизводящий объект может выбрать любую длительность между минимальной и максимальной, в зависимости от контекста презентации. Стоит отметить, что в то время как растяжение или сжатие длительности в непрерывных медиа, таких как видео, влечет за собой изменение скорости воспроизведения, в дискретных медиа, например, статических изображениях, это связано с изменением частоты отображения.
Профайлы в MPEG-4
MPEG-4 предлагает обширный набор инструментов для кодирования аудио и визуальных объектов. Чтобы обеспечить эффективное применение стандарта, определены специальные подмножества инструментов MPEG-4, видео и аудио, предназначенные для конкретных приложений. Эти подмножества, которые называются "профайлами", определяют набор инструментов, который может использовать декодер. Для каждого профайла устанавливается один или несколько уровней, которые определяют вычислительные ограничения. Этот подход аналогичен тому, что использовался в MPEG-2, где наиболее известные комбинации профайл/уровень представлены в виде "главный_профайл@главный_уровень". Комбинация профайл@уровень обеспечивает:
- возможность для разработчика кодека реализовывать только необходимый поднабор стандарта,
- проверку соответствия устройств MPEG-4 стандартам.
Профайлы существуют для разных типов медиаконтента, таких как аудио, видео и графика, а также для описания сцен. Хотя MPEG не предписывает конкретные комбинации этих профайлов, организация стремится обеспечить их гармоничное взаимодействие в различных областях.
Визуальные профайлы
Визуальная составляющая стандарта включает профайлы для кодирования естественных, синтетических и гибридных изображений. Есть пять основных профайлов для кодирования естественного видео:
- Простой визуальный профайл: Предоставляет надежное и эффективное кодирование прямоугольных видео объектов, оптимизированных для мобильных приложений, например, PCS и IMT2000.
- Простой масштабируемый визуальный профайл: Дополняет "простой" профайл возможностью кодирования временно и пространственно масштабируемых объектов. Это идеально подходит для приложений, предоставляющих разные уровни качества в зависимости от ограничений пропускной способности или ресурсов декодера, например, Интернет-приложений или программного декодирования.
- Центральный визуальный профайл: Расширяет "простой" профайл, добавляя поддержку кодирования объектов произвольной формы, что может быть полезно для приложений с базовой интерактивностью, таких как интернет-мультимедиа.
- Главный визуальный профайл: Обогащает центральный профайл возможностями кодирования интерлейсинговых, полупрозрачных и виртуальных объектов. Этот профайл оптимален для интерактивного широковещательного телевидения высокого качества и для DVD-приложений.
- N-битный визуальный профайл: Добавляет к "главному" профайлу возможность кодирования видео объектов с глубиной пикселя от 4 до 12 бит. Применяется в системах видеонаблюдения и других специализированных приложениях.
Для синтетических и гибридных визуальных материалов существуют специальные профили:
- Простой визуальный профиль для анимации лица (Simple Facial Animation) предоставляет базовые инструменты для анимирования модели лица, что особенно полезно в аудио/видео презентациях для людей с нарушениями слуха.
- Масштабируемый визуальный профиль для текстур (Scalable Texture Visual) позволяет выполнить пространственное масштабирование статических изображений (текстур). Это полезно для приложений, которым требуются различные уровни масштабирования, например, при сопоставлении текстуры с объектами игр или при работе с цифровыми фотокамерами высокого разрешения.
- Базовый визуальный профиль для анимированных 2-D текстур (Basic Animated 2-D Texture) предлагает пространственное масштабирование, масштабирование по SNR и анимацию на основе сеток для статических изображений (текстур), а также базовую анимацию лицевых объектов.
- Гибридный визуальный профиль сочетает в себе декодирование масштабируемых объектов натурального видео произвольной формы (как в главном визуальном профиле) и декодирование различных синтетических и гибридных объектов, включая анимированные статические изображения. Это идеально подходит для сложных мультимедийных приложений.
Версия 2 вводит дополнительные профили для натурального видео:
- ARTS (Advanced Real-Time Simple) профиль предлагает продвинутый метод кодирования прямоугольных видео объектов, который устойчив к ошибкам, использует обратный канал и обеспечивает улучшенную стабильность временного разрешения при минимизированной задержке буферизации. Этот профиль особенно подходит для реальных временных приложений, таких как видеотелефония, видеоконференции и дистанционное наблюдение.
- Центральный масштабируемый профиль расширяет возможности кодирования объектов произвольной формы с пространственным и временным масштабированием в базовый профиль. Его ключевая особенность - SNR, пространственное и временное масштабирование для выбранных областей и объектов. Профиль идеально подходит для таких приложений как Интернет, мобильные сети и трансляции.
- ACE (Advanced Coding Efficiency) профиль усиливает эффективность кодирования как для прямоугольных объектов, так и для объектов произвольной формы. Это наилучший выбор для приложений, таких как мобильное телевидение и другие ситуации, где требуется высокая эффективность кодирования.
Профили версии 2 для искусственного и синтетического/натурального гибридного визуального материала:
- Продвинутый масштабируемый профайл текстур обеспечивает декодирование текстур произвольной формы и статических изображений. Он включает в себя масштабируемое кодирование формы, мозаичное заполнение и защиту от ошибок. Этот профайл идеально подходит для приложений, требующих быстрого произвольного доступа, различные уровни масштабируемости и кодирования статических объектов произвольной формы, таких как просмотр изображений в интернете или изображений высокого разрешения с цифровых камер.
- Продвинутый центральный профайл сочетает в себе возможности декодирования видео объектов произвольной формы (как в центральном профайле) и масштабируемых статических объектов (как в продвинутом масштабируемом профайле текстур). Он особенно полезен для разнообразных мультимедийных приложений, например, для интерактивного потокового воспроизведения мультимедиа через Интернет.
- Профайл простой анимации лица и тела расширяет возможности профайла простой анимации лица, добавляя функционал анимации тела.
В последующих версиях будут добавлены следующие профили:
- Продвинутый простой профайл аналогичен простому профайлу, но содержит только прямоугольные объекты. Однако у него есть дополнительные функции, такие как B-кадры, компенсация перемещения на уровне пикселя и общая компенсация перемещения, делая его более эффективным.
- Масштабируемый профайл тонкой гранулярности предоставляет возможность использовать до 8 масштабных уровней, что позволяет адаптировать качество доставки к условиям передачи и декодирования. Этот профайл может работать с простым или продвинутым простым профайлом в качестве базового уровня.
- Простой студийный профайл предназначен для высококачественных студийных приложений. Он работает только с I-кадрами, но поддерживает произвольные формы и множество alpha-каналов. Максимальная скорость передачи может достигать 2 Гбит/с.
- Центральный студийный профайл добавляет к профайлу "Простой студийный" P-кадры, что делает его более эффективным, но при этом требует более сложной реализации.
Аудио профили
В MPEG-4 V.1 определены следующие четыре аудио-профайла:
- Разговорный профайл использует HVXC, параметрический кодер голоса для очень низких скоростей передачи, CELP узкополосный/широкополосный кодер голоса или интерфейс текст-голос.
- Профайл синтеза использует SAOL, волновые таблицы и интерфейс текст-голос для создания звука и речи при минимальных скоростях передачи.
- Масштабируемый профайл, являясь расширением профайла речи, подходит для масштабируемого кодирования речи и музыки в сетях типа Интернет и NADIB (Narrow band Audio DIgital Broadcasting). Скорость передачи варьируется от 6 кбит/с до 24 кбит/с при полосе пропускания 3.5 и 9 кГц.
- Главный профайл объединяет функции всех других профайлов и содержит инструменты для синтетического и натурального аудио.
В MPEG-4 V.2 были добавлены следующие четыре аудио-профайла:
- Профайл высококачественного аудио включает в себя кодировщик голоса CELP и простой кодировщик AAC с системой долгосрочного предсказания. Масштабируемое кодирование может осуществляться при помощи масштабируемого объектного типа AAC. Опционально может быть использован синтаксис потока, устойчивый к ошибкам (ER).
- Профайл аудио с низкой задержкой содержит кодировщики голоса HVXC и CELP (опционально с использованием синтаксиса ER), AAC-кодеры с низкой задержкой и интерфейс текст-голос TTSI.
- Профайл натурального аудио включает все доступные в MPEG-4 средства кодирования натурального аудио.
- Профайл межсетевого мобильного аудио включает AAC масштабируемые объектные типы с низкой задержкой, такие как TwinVQ и BSAC. Этот профайл ориентирован на расширение телекоммуникационных приложений с использованием не-MPEG алгоритмов кодирования речи и возможностей высококачественного аудио кодирования.
Профайлы графики
Профайлы графики определяют возможные графические и текстовые элементы для использования в сцене. Эти профайлы задаются в системной части стандарта:
- Простой 2-D графический профайл ориентирован на использование графических элементов BIFS для размещения одного или нескольких визуальных объектов в сцене.
- Полный 2-D графический профайл предоставляет функции двухмерной графики, включая произвольную 2D графику и текст, которые можно комбинировать с визуальными объектами.
- Полный графический профайл обеспечивает доступ к продвинутым графическим элементам, таким как сетки и экструзии, и поддерживает создание содержимого с сложным освещением. Этот профайл идеален для создания реалистичных виртуальных миров.
- 3D аудио графический профайл, несмотря на своё название, не связан с визуальным рендерингом. Вместо этого он предоставляет графические инструменты для определения акустических характеристик сцены, таких как геометрия, акустическое поглощение и свойства материалов. Профайл применяется в приложениях, где требуется пространственное моделирование аудиосигналов в контексте сцены.
Графические профайлы сцены
Графические профайлы сцены, определенные в системной части стандарта, позволяют создавать аудио-визуальные сцены, используя только аудио, 2D, 3D или комбинированное 2D/3D содержание.
- Аудио графический профайл сцены предназначен для использования графических элементов BIFS исключительно в аудио приложениях, таких как широковещательное аудио.
- Простой 2D графический профайл сцены позволяет разместить один или несколько аудио-визуальных объектов в сцене, предоставляя презентации материала с возможностью коррекции, но без интерактивных функций, например, для телевизионного вещания.
- Полный 2D графический профайл сцены включает все элементы для описания 2D сцены с помощью BIFS и поддерживает функции, такие как 2D преобразования и alpha-сглаживание. Этот профайл идеален для интерактивных 2D приложений.
- Полный графический профайл сцены предоставляет расширенный набор графических элементов BIFS для создания динамических 3D миров и игр.
- 3D аудио графический профайл сцены позволяет работать с трехмерным позиционированием звука, учитывая акустические характеристики сцены. Пользователь может взаимодействовать со сценой, изменяя позицию источника звука, свойства помещения или местоположение слушателя. Профайл предназначен исключительно для аудио-приложений.
Профайлы MPEG-J
В стандарте MPEG-J представлены два профайла: персональный и главный:
- Персональный профайл предназначен для персональных устройств, таких как мобильные и портативные аппараты. К ним относятся видео микрофоны, PDA, персональные игровые устройства. Пакеты MPEG-J API, включенные в этот профайл:
- Сеть
- Сцена
- Ресурс
- Главный профайл охватывает широкий спектр устройств, включая развлекательную аппаратуру, например, акустические системы и мультимедийные компьютерные системы. Он расширяет функциональность персонального профайла, дополняя его дополнительными пакетами MPEG-J API:
- Декодер
- Функции декодера
- Секционный фильтр и сервисная информация
Профайл дескриптора объекта
Профайл описания объекта предоставляет набор средств для описания и управления различными аспектами мультимедийных объектов. Эти средства включают:
- Средство описания объекта (OD)
- Средство слоя синхронизации (SL)
- Средство информационного содержимого объекта (OCI)
- Средство управления и защиты интеллектуальной собственности (IPMP)
На данный момент существует только один профайл, который объединяет все вышеупомянутые средства. В рамках этого профайла могут быть установлены определенные ограничения, такие как разрешение только одной временной шкалы.