Открыть сервис

H.264/AVC

H.264/AVC (также известный как MPEG-4 Part 10, Advanced Video Coding) — это стандарт сжатия видео, разработанный для эффективного кодирования, передачи и хранения цифрового видеопотока. Он был создан совместными усилиями Группы экспертов по движущемуся изображению (MPEG) и Группы экспертов по видеокодированию (VCEG) Международного союза электросвязи (ITU-T). Стандарт, впервые опубликованный в 2003 году, стал одним из наиболее широко используемых форматов сжатия видео в мире, обеспечивая значительное улучшение степени сжатия по сравнению с предшественниками (MPEG-2, H.263) при сохранении сопоставимого визуального качества.

История

Разработка H.264 началась в 1999 году, когда ITU-T VCEG приступил к созданию нового стандарта, способного предложить вдвое большую эффективность сжатия, чем существующие на тот момент решения. В 2001 году к проекту присоединилась группа MPEG, что привело к формированию Объединённой группы по видео (JVT). Результатом их работы стал стандарт, опубликованный в мае 2003 года. В 2004 году он был принят как стандарт MPEG-4 Part 10.

Первоначально H.264 был ориентирован на профессиональное применение, такое как видеовещание и хранение видео на оптических дисках (Blu-ray). Однако с развитием интернета и мобильных устройств стандарт быстро распространился на потребительский рынок, став основой для таких сервисов, как YouTube, Netflix, а также для видеозвонков (Skype, FaceTime) и потокового вещания.

Классификация и профили

Стандарт H.264 включает несколько профилей и уровней, которые определяют набор поддерживаемых функций и ограничений на параметры сжатия. Это позволяет адаптировать кодек под различные устройства и сценарии использования — от маломощных мобильных телефонов до мощных видеоредакторов.

Профили

Профили (Profiles) задают набор алгоритмов и инструментов кодирования, доступных для использования. Наиболее распространённые:

  • Baseline Profile (BP): Ориентирован на приложения с низкой задержкой и ограниченными вычислительными ресурсами, такие как видеоконференции и мобильные устройства. Поддерживает I- и P-кадры, кодирование с использованием контекстно-адаптивного энтропийного кодирования (CAVLC). Не поддерживает B-кадры, взвешенное предсказание и кодирование с полями.
  • Main Profile (MP): Предназначен для стандартного телевидения и хранения видео. Включает поддержку B-кадров, взвешенного предсказания и контекстно-адаптивного арифметического кодирования (CABAC). Используется в стандартном цифровом телевидении (DVB).
  • High Profile (HiP): Основной профиль для вещания и хранения видео высокой чёткости (HD). Добавляет поддержку 8x8 дискретного косинусного преобразования (DCT), квантования с настраиваемыми матрицами и кодирования с полями. Является стандартом для Blu-ray Disc и большинства современных видеосервисов.
  • High 10 Profile (Hi10P): Расширяет High Profile поддержкой глубины цвета до 10 бит на выборку, что улучшает качество изображения и снижает артефакты сжатия.
  • High 4:2:2 Profile (Hi422P): Поддерживает цветовую субдискретизацию 4:2:2, что важно для профессионального видеопроизводства и постпродакшна.
  • High 4:4:4 Predictive Profile (Hi444PP): Обеспечивает поддержку цветовой субдискретизации 4:4:4 (без потери цветности) и дополнительных инструментов для кодирования без потерь.

Уровни

Уровни (Levels) определяют максимальные значения таких параметров, как разрешение, частота кадров, битрейт и размер буфера. Например, уровень 3.0 поддерживает видео до 720x576 при 25 кадрах/с, а уровень 5.1 — до 4K (4096x2304) при 30 кадрах/с.

Устройство и принципы работы

H.264 использует гибридный подход к сжатию, сочетающий методы пространственного и временного предсказания с энтропийным кодированием.

Основные этапы кодирования

  1. Разбиение на макроблоки: Кадр делится на макроблоки размером 16x16 пикселей. Каждый макроблок может быть дополнительно разбит на более мелкие блоки (от 4x4 до 16x16) для более точного предсказания.
  2. Внутрикадровое предсказание (Intra Prediction): Для I-кадров (ключевых кадров) предсказание выполняется на основе уже закодированных пикселей внутри того же кадра. Алгоритм анализирует соседние блоки и выбирает наиболее вероятное направление для экстраполяции.
  3. Межкадровое предсказание (Inter Prediction): Для P- и B-кадров предсказание выполняется на основе одного или нескольких предыдущих (или будущих) кадров. Кодек ищет наиболее похожий блок в референтных кадрах и кодирует разницу (вектор движения) между текущим блоком и найденным.
  4. Преобразование и квантование: Разница между исходным и предсказанным блоком подвергается дискретному косинусному преобразованию (DCT) или его модификации (8x8 DCT для High Profile). Затем коэффициенты преобразования квантуются — округляются с потерей точности, что обеспечивает основное сжатие.
  5. Энтропийное кодирование: Квантованные коэффициенты и векторы движения сжимаются с использованием статистических методов — CAVLC (контекстно-адаптивное кодирование с переменной длиной) или CABAC (контекстно-адаптивное арифметическое кодирование). CABAC обеспечивает на 10-15% более высокую степень сжатия, но требует больше вычислительных ресурсов.

Типы кадров

  • I-кадр (Intra-coded frame): Полностью самодостаточный кадр, не зависящий от других. Используется как опорная точка для декодирования.
  • P-кадр (Predicted frame): Кодируется с использованием предсказания от одного предыдущего I- или P-кадра.
  • B-кадр (Bi-predictive frame): Кодируется с использованием предсказания от двух референтных кадров (один прошлый, один будущий). Обеспечивает наибольшую степень сжатия, но требует больше вычислительных ресурсов и памяти.

Применение

H.264 стал универсальным стандартом для множества областей:

  • Видеовещание: Цифровое телевидение (DVB-T, DVB-S, DVB-C), спутниковое и кабельное телевидение.
  • Потоковое видео: YouTube, Netflix, Vimeo, Twitch и другие платформы используют H.264 как основной кодек для доставки видео.
  • Видеоконференции: Skype, Zoom, FaceTime, WebRTC — все они базируются на H.264 для обеспечения низкой задержки и эффективного сжатия.
  • Хранение видео: Blu-ray Disc, видеорегистраторы, камеры видеонаблюдения, цифровые фотоаппараты и смартфоны.
  • Мобильные устройства: Благодаря поддержке Baseline Profile, H.264 широко используется в мобильных телефонах и планшетах для записи и воспроизведения видео.

Критика и ограничения

Несмотря на широкое распространение, H.264 имеет ряд недостатков:

  • Патентные ограничения: Стандарт защищён большим количеством патентов, что приводит к лицензионным отчислениям для производителей оборудования и программного обеспечения. Это создаёт барьеры для открытого программного обеспечения и небольших разработчиков.
  • Вычислительная сложность: Кодирование с использованием H.264, особенно в профилях High и с использованием CABAC, требует значительных вычислительных ресурсов, что может быть проблемой для маломощных устройств.
  • Устаревание: С появлением более современных стандартов, таких как H.265/HEVC (2013) и AV1 (2018), H.264 постепенно уступает им в эффективности сжатия. Новые кодеки позволяют достичь аналогичного качества при вдвое меньшем битрейте.

Преемники

Основными преемниками H.264 являются:

  • H.265/HEVC (High Efficiency Video Coding): Стандарт, обеспечивающий вдвое лучшее сжатие по сравнению с H.264 при том же визуальном качестве. Широко используется для 4K и 8K видео.
  • AV1 (AOMedia Video 1): Открытый и бесплатный кодек, разработанный Альянсом за открытые медиа (AOMedia). Обеспечивает ещё более высокую степень сжатия, чем HEVC, и не требует лицензионных отчислений.
  • VVC (Versatile Video Coding): Стандарт, разработанный ITU-T и MPEG, ориентированный на сжатие видео сверхвысокой чёткости (8K) и виртуальной реальности.

Источники

  1. ITU-T Recommendation H.264: Advanced video coding for generic audiovisual services.
  2. ISO/IEC 14496-10: Information technology — Coding of audio-visual objects — Part 10: Advanced Video Coding.
  3. Richardson, Iain E. G. H.264 and MPEG-4 Video Compression: Video Coding for Next-generation Multimedia. Wiley, 2003.
  4. Wiegand, Thomas, et al. "Overview of the H.264/AVC video coding standard." IEEE Transactions on Circuits and Systems for Video Technology, vol. 13, no. 7, 2003.
  5. Sullivan, Gary J., et al. "The H.264/AVC Advanced Video Coding Standard: Overview and Introduction to the Fidelity Range Extensions." SPIE Conference on Applications of Digital Image Processing, 2004.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →