H.264/MPEG-4 AVC


H.264/MPEG-4 AVC

H.264, MPEG-4 Part 10, или AVC ( "Advanced Video Coding ") — стандарт сжатия видео, предназначенный для достижения высокой степени сжатия видеопотока при сохранении высокого качества. Он был создан ITU-T Video Coding Experts Group (VCEG) совместно с ISO / IEC Moving Picture Experts Group (MPEG) в рамках совместной программы Joint Video Team (JVT).ITU-T H.264 стандарт и ISO/IEC MPEG-4 Part 10 стандарт (формально, ISO/IEC 14496-10) технически полностью идентичны. Финальный черновой вариант первой версии стандарта был закончен в мае 2003 года.

Используется в цифровом телевидении высокого разрешения (HDTV); как основной кодек для видеозаписей Министерством обороны США, компанией Apple (в том числе видеоролики для плееров iPod) и многих других областях цифрового видео.

Возможности

Стандарт H.264/AVC/MPEG-4 Part 10 содержит ряд новых возможностей, позволяющих значительно повысить эффективность сжатия видео по сравнению с предыдущими (такими, как ASP) стандартами, обеспечивая также большую гибкость применения в разнообразных сетевых средах. Основные из них:

* Многокадровое предсказание кадров:
** Использование сжатых ранее кадров в качестве опорных (то есть с заимствованием части материала из них) куда более гибко, чем в предыдущих стандартах. Позволяется использование до 32 ссылок на другие кадры, тогда как в ASP и более ранних число ссылок ограничено одним или, в случае B-кадров, двумя кадрами. Это поднимает эффективность кодирования, так как позволяет кодеру выбирать для компенсации движения между большим количеством изображений. Данная функция обеспечивает небольшое улучшение в качестве и экономию битрейта в большинстве сцен. Однако для некоторых сцен, например с частыми повторяющимися участками, возвратно-поступательным движением и т. п. подобный подход при сохранении качества позволяет очень сильно снизить затраты битрейта.
** Независимость порядка воспроизведения изображений и порядка опорных изображений. В предшествующих стандартах устанавливалась жесткая зависимость между порядком следования изображений для использования при компенсации движения и порядком следования изображений при воспроизведении. В новом стандарте эти ограничения в значительной мере устранены, что позволяет кодеру выбирать порядок изображений для компенсации движения и для воспроизведения с высокой степенью гибкости, которая ограничена только объемом памяти, который гарантирует возможность декодирования. Устранение ограничения также позволяет в ряде случаев устранить дополнительную задержку, ранее связанную с двунаправленным предсказанием.
** Независимость методов обработки изображений и возможности их использования для предсказания движения. В предшествующих стандартах изображения, закодированные с использованием некоторых методов (например, двунаправленного предсказания), не могли использоваться в качестве опорных для предсказания движения других изображений видеопоследовательности. Устраняя это ограничение, новый стандарт обеспечивает кодеру большую гибкость и, во многих случаях, возможность использовать для предсказания движения изображение, более близкое по содержанию к кодируемому.
** Компенсация движения с переменным размером блока (от 16x16 до 4x4 пикселя) позволяет крайне точно выделять области движения.
** Вектора движения, выводящие за границы изображения. В MPEG-2 и предшествовавших ему стандартах вектора движения могли указывать только на пикселы, находящиеся в границах декодированного опорного изображения. Методика экстраполяции за границы изображения, появившаяся как опция в H.263, включена в новый стандарт.
** Шеститочечная фильтрация компонента яркости для полупиксельного предсказания с целью уменьшения зубчатости краев и, в конечном счете, обеспечения большей четкости изображения.
** Точность до четверти пиксела (Qpel) при компенсации движения обеспечивает очень высокую точность описания движущихся областей (что особенно актуально для медленного движения). Цветность, как правило, хранится с разрешением, уменьшенным вдвое по вертикали и горизонтали (прореживание цвета), поэтому компенсация движения для компонента цветности использует точность в одну восьмую пиксела цветности.
** Взвешенное предсказание, позволяющее использовать масштабирование и сдвиг после компенсации движения на величины, указанные кодером. Такая методика может чрезвычайно сильно поднять эффективность кодирования для сцен с изменением освещенности, например при эффектах затемнения, постепенного появления изображения.
* Пространственное предсказание от краев соседних блоков для I-кадров (в отличие от предсказания только коэффициента трансформации в H.263+ и MPEG-4 Part 2, и дискретно-косинусного коэффициента в MPEG-2 Part 2). Новая методика экстраполяции краев ранее декодированных частей текущего изображения повышает качество сигнала, используемого для предсказания.
* Сжатие макроблоков без потерь:
** Метод представления макроблоков без потерь в PCM, при котором видеоданные представлены непосредственно, позволяющий точно описывать определенные области и допускающий строгое ограничение на количество закодированных данных для каждого макроблока.
** Улучшенный метод беспотерьного представления макроблоков, позволяющий точно описывать определенные области, при этом обычно затрачивая существенно меньше битов, чем PCM (поддерживается не во всех профилях).
* Гибкие функции чересстрочного сжатия (поддерживается не во всех профилях):
** Адаптивное к изображению кодирование полей (PAFF), позволяющее кодировать каждый кадр как кадр или как пару полей (полукадров) — в зависимости от отсутствияналичия движения.
** Адаптивное к макроблокам кодирование полей (MBAFF), позволяющее независимо кодировать каждую вертикальную пару макроблоков (блок 16x32) как прогрессивные или чересстрочные. Позволяет использовать макроблоки 16x16 в режиме разбиения на поля (сравните с 16x8 полумакроблоками в MPEG-2). Почти всегда эффективнее PAFF.
* Новые функции преобразования:
** Точное целочисленное преобразование пространственных блоков 4x4 (концептуально подобное широко известному DCT, но упрощенное и способное обеспечить точное декодирование [В предшествующих стандартах преобразование оговаривалось только в рамках допустимых ошибок из-за практической нереализуемости точного обратного преобразования. В итоге, каждая реализация декодера могла давать слегка различное декодированное видео (что обуславливалось несовпадением представления декодированного видео на кодере и декодере), что приводит к снижению эффективного качества видео.] ), позволяющее точное размещение разностных сигналов с минимумом шума, часто возникающего в предыдущих кодеках.
** Точное целочисленное преобразование пространственных блоков 8x8 (концептуально подобное широко известному DCT, но упрощенное и способное обеспечить точное декодирование; поддерживается не во всех профилях), обеспечивающее большую эффективность сжатия схожих областей, чем 4x4.
** Адаптивный выбор кодеком между размерами блока 4x4 и 8x8 (поддерживается не во всех профилях).
** Дополнительное преобразование Адамара, применяемое к дискретно-косинусным коэффициентам основного пространственного преобразования (к коэффициентов яркости, и, в особом случае, цветности) для достижения большей степени сжатия в однородных областях.
* Квантование:
** Логарифмическое управление длиной шага для упрощения распределения битрейта кодером и упрощенного вычисления обратной длины квантования.
** Частотно-оптимизированные матрицы масштабирования квантования, выбираемые кодером для оптимизации квантования на основе человеческих особенностей восприятия (поддерживается не во всех профилях).
* Внутренний фильтр деблокинга в цикле кодирования, устраняющий артефакты блочности, часто возникающие при использовании основанных на DCT техниках сжатия изображений.
* Энтропийное кодирование квантованных коэффициентов трансформации:
** Context-adaptive binary arithmetic coding (CABAC) — Контекстнозависимое Адаптивное Бинарное Арифметическое кодирование — алгоритм беспотерьного сжатия синтаксических элементов видеопотока на основе вероятности их появления. Поддерживается только в Main Profile и выше. Обеспечивает более эффективное сжатие, чем CAVLC, но требует значительно больше времени на расшифровку.
** Context-adaptive variable-length coding (CAVLC) — Контекстнозависимое Адаптивное Кодирование с Переменной Длиной Кодового Слова — альтернатива CABAC меньшей сложности. Тем не менее, оно сложнее и эффективнее, чем алгоритмы, применяемые для тех же целей в более ранних технологиях сжатия видео (как правило это алгоритм Хаффмана).
** Часто используемое, простое и высоко структурированное кодирование словами переменной длины многих элементов синтаксиса, не закодированных CABAC или CAVLC, известное как Exp-Golomb (экспоненциальное кодирование Голомба).
* Функции устойчивости к ошибкам:
** Определение уровня сетевой абстракции (NAL), позволяющее использовать один и тот же синтаксис видео в различных сетевых окружениях, включая наборы параметров последовательности (sequence parameter sets, SPSs) и наборы параметров изображения (picture parameter sets, PPSs), которые обеспечивают большую надежность и гибкость, чем предыдущие технологии.
** Гибкое упорядочивание макроблоков (FMO), также известное как группы частей (поддерживается не во всех профилях) и произвольное упорядочивание частей (ASO) — методы реструктурирования порядка представления фундаментальных областей (макроблоков) в изображениях. При эффективном использовании гибкое упорядочивание макроблоков может существенно повысить устойчивость к потере данных.Благодаря ASO, так как каждая часть изображения может быть декодирована независимо от других (при определенных ограничениях кодирования), новый стандарт позволяет посылать и получать их в произвольном порядке друг относительно друга. Это может снизить задержку в приложениях реального времени, особенно при использовании на сетях, имеющих режим работы доставка вне очередиЭти функции могут также использоваться для множества других целей помимо восстановления ошибок.
** Разбиение данных — функция, обеспечивающая разделение данных разной важности (например, вектора движения и другая информация предсказания имеет большую значимость для представления видеоконтента) по разным пакетам данных с разными уровнями защиты от ошибок (поддерживается не во всех профилях).
** Избыточные части. Возможность посылки кодером избыточного представления областей изображений, позволяя воспроизвести области изображений (обычно с некоторой потерей качества), данные о которых были потеряны в процессе передачи (поддерживается не во всех профилях).
** Нумерация кадров, позволяющая создание «подпоследовательностей» (включая временно́е масштабирование включением дополнительных кадров между другими) а также обнаружение (и скрытие) потерь целых кадров при сбоях канала или пропаже пакетов.

Примечания

См. также

* Видео
* Кодек
* H.263
* x264
* MPEG-4
* DRM
* 3GP
* SIF1

Ссылки

* [http://compression.ru/video/codec_comparison/mpeg-4_avc_h264_2006.html Сравнение кодеков стандарта MPEG-4 AVC/H.264]
* [http://www.compression-links.info/MPEG-4_AVC_H264 Список ресурсов и кодеков H.264/AVC ]
* [http://truehd.ru Телевидение высокой чёткости в стандарте H.264 HD]
* [http://getonebyone.googlepages.com/media_h264 All Papers MPEG4/AVC H.264]


Wikimedia Foundation. 2010.

Смотреть что такое "H.264/MPEG-4 AVC" в других словарях:

  • H.264/MPEG-4 AVC — H.264 is a standard for video compression. It is also known as MPEG 4 Part 10, or MPEG 4 AVC (for Advanced Video Coding). As of 2008, it is the latest block oriented motion compensation based codec standard developed by the ITU T Video Coding… …   Wikipedia

  • H.264/MPEG-4 AVC — H.264 o MPEG 4 parte 10 es una norma que define un códec de vídeo de alta compresión, desarrollada conjuntamente por el ITU T Video Coding Experts Group (VCEG) y el ISO/IEC Moving Picture Experts Group (MPEG). La intención del proyecto H.264/AVC… …   Wikipedia Español

  • H.264/MPEG-4 AVC — ist ein Standard zur hocheffizienten Videokompression. Er wurde zunächst von der ITU (Study Group 16, Video Coding Experts Group) unter dem Namen H.26L entwickelt. Im Jahre 2001 schloss sich die ITU Gruppe mit MPEG Visual zusammen und führte die… …   Deutsch Wikipedia

  • H.264/MPEG-4 AVC — H.264, o MPEG 4 parte 10, es un códec digital de alta compresión estándar escrito por el ITU T Video Coding Experts Group (VCEG) junto con el ISO/IEC Moving Picture Experts Group (MPEG) como producto del esfuerzo de colaboración colectivo… …   Enciclopedia Universal

  • H.264/MPEG-4 AVC products and implementations — Prominent software implementations*Adobe Systems supports the playback of H.264 in Adobe Flash 9.x. They also support export and output of H.264 in Premiere Pro version CS2 (shipped in 2005). In latest version, Premiere Pro CS3 (shipped in 2007) …   Wikipedia

  • List of devices that support H.264/MPEG-4 AVC — Devices listed by manufacturer A *Aiptek ** GO HD *Apple ** iPod classic (5th/6th Generation Only) ** iPod nano (3rd Generation Only) ** iPod touch ** Apple TV ** iPhone * ADB [http://en.wikipedia.org/wiki/Advanced Digital Broadcast/website]… …   Wikipedia

  • MPEG-4 AVC — H.264 Pour les articles homonymes, voir AVC. H.264, ou MPEG 4 AVC (Advanced Video Coding), est une norme de codage vidéo développée conjointement par l UIT T Q.6/SG16 Video Coding Experts Group (VCEG) ainsi que l ISO/CEI Moving Picture Experts… …   Wikipédia en Français

  • MPEG-4/AVC — H.264/MPEG 4 AVC ist ein Standard zur hocheffizienten Videokompression. Er wurde zunächst von der ITU (Study Group 16, Video Coding Experts Group) unter dem Namen H.26L entwickelt. Im Jahre 2001 schloss sich die ITU Gruppe mit MPEG Visual… …   Deutsch Wikipedia

  • MPEG-4 AVC — H.264/MPEG 4 AVC ist ein Standard zur hocheffizienten Videokompression. Er wurde zunächst von der ITU (Study Group 16, Video Coding Experts Group) unter dem Namen H.26L entwickelt. Im Jahre 2001 schloss sich die ITU Gruppe mit MPEG Visual… …   Deutsch Wikipedia

  • MPEG-4 AVC — H.264 …   Universal-Lexikon