Advanced Video Coding
Advanced Video Coding (AVC) — это стандарт сжатия цифрового видео, также известный как H.264 или MPEG-4 Part 10. Он был разработан совместными усилиями Международного союза электросвязи (ITU-T) и Международной организации по стандартизации (ISO/IEC) в рамках Группы экспертов по кодированию видео (VCEG) и Группы экспертов по движущимся изображениям (MPEG). Стандарт был впервые опубликован в 2003 году и на протяжении более десяти лет оставался наиболее широко используемым форматом для хранения, передачи и распространения видео высокой чёткости (HD) и сверхвысокой чёткости (UHD/4K) в интернете, на оптических носителях (Blu-ray) и в цифровом телевидении.
История
Разработка AVC началась в 1999 году, когда ITU-T VCEG приступила к созданию нового стандарта, способного обеспечить значительно более высокую степень сжатия по сравнению с предшественниками — MPEG-2 (H.262) и MPEG-4 Part 2 (H.263). В 2001 году к проекту присоединилась ISO/IEC MPEG, образовав Объединённую группу по видео (JVT). Первая версия стандарта была одобрена в мае 2003 года. В 2004 году были добавлены расширения для профессионального применения (Fidelity Range Extensions, FRExt), включающие поддержку 10-битного цвета и цветовых пространств RGB и YCbCr 4:4:4. В 2007–2009 годах вышли масштабируемые расширения (Scalable Video Coding, SVC) и многовидовые расширения (Multiview Video Coding, MVC), используемые, в частности, для 3D-видео на Blu-ray.
Ключевым фактором успеха AVC стала его высокая эффективность сжатия: при одинаковом битрейте он обеспечивал вдвое меньшее количество артефактов по сравнению с MPEG-2, что позволило передавать видео HD-качества по каналам с пропускной способностью 3–5 Мбит/с. В 2010-х годах AVC постепенно уступил позиции более современному стандарту HEVC (H.265), но остаётся доминирующим форматом для онлайн-видео (YouTube, Vimeo), видеоконференций (Zoom, Skype) и вещательного телевидения (DVB-T2, ATSC).
Технические характеристики
Принцип сжатия
AVC, как и предыдущие стандарты MPEG, основан на гибридном блочном кодировании с компенсацией движения. Основные этапы:
- Разбиение на макроблоки: кадр делится на блоки размером 16×16 пикселей (макроблоки), которые могут дополнительно разбиваться на субблоки (4×4, 8×8, 16×8 и т.д.).
- Компенсация движения: для каждого макроблока или субблока ищется наиболее похожий блок в одном или нескольких опорных кадрах (I-кадры, P-кадры, B-кадры). Вектор движения кодируется с высокой точностью (до 1/4 пикселя).
- Внутреннее предсказание: для I-кадров (ключевых кадров) используется предсказание пикселей на основе уже закодированных соседних блоков в том же кадре, что повышает эффективность сжатия статических сцен.
- Дискретное косинусное преобразование (DCT): остаточные данные (разница между исходным и предсказанным блоком) преобразуются в частотную область с помощью целочисленного DCT 4×4 или 8×8.
- Квантование: частотные коэффициенты округляются с потерей точности, что является основным источником потерь качества.
- Энтропийное кодирование: сжатие без потерь с использованием контекстно-адаптивного двоичного арифметического кодирования (CABAC) или контекстно-адаптивного кодирования переменной длины (CAVLC).
Профили и уровни
Стандарт AVC определяет набор профилей (profiles) и уровней (levels), которые ограничивают параметры кодирования для обеспечения совместимости декодеров.
- Профили определяют набор инструментов сжатия:
- Baseline Profile (BP): минимальный набор, без B-кадров, с CAVLC, используется для видеоконференций и мобильных устройств.
- Main Profile (MP): включает B-кадры и CABAC, используется в цифровом телевидении и DVD.
- High Profile (HiP): добавляет 8×8 DCT, адаптивное квантование, поддержку 8-битного цвета, используется в Blu-ray и HDTV.
- High 10 Profile (Hi10P): поддержка 10-битного цвета, применяется в профессиональном видео.
- High 4:4:4 Profile (Hi444PP): поддержка цветового пространства 4:4:4 без потери цветности, используется в архивации и постпродакшене.
- Уровни (Level 1–5.2) ограничивают разрешение, битрейт и размер буфера. Например, Level 4.0 поддерживает 1920×1080 при 30 кадрах/с с битрейтом до 20 Мбит/с, Level 5.1 — 4096×2304 при 30 кадрах/с с битрейтом до 160 Мбит/с.
Битрейт и качество
Эффективность AVC позволяет достигать «прозрачного» качества (неотличимого от оригинала) при битрейтах:
- 480p (SD): 1–2 Мбит/с
- 720p (HD): 3–5 Мбит/с
- 1080p (Full HD): 5–10 Мбит/с
- 4K (UHD): 20–40 Мбит/с
При низких битрейтах (ниже 1 Мбит/с для SD) AVC демонстрирует меньшую блочность и размытие по сравнению с MPEG-4 Part 2, но уступает HEVC.
Применение
Цифровое телевидение
AVC является обязательным стандартом для большинства систем цифрового телевидения:
- DVB-T2 (европейский стандарт): используется для эфирного телевидения высокой чёткости.
- ATSC (американский стандарт): применяется в кабельном и спутниковом телевидении.
- ISDB (японский/бразильский стандарт): поддерживает HDTV и мобильное телевидение.
Онлайн-видео
Платформы YouTube, Vimeo, Twitch и Netflix используют AVC как основной формат для потоковой передачи. В 2023 году, по данным YouTube, более 80% видео на платформе кодируется в H.264, хотя постепенно внедряется HEVC и AV1. Для адаптивного битрейта (HLS, MPEG-DASH) AVC остаётся предпочтительным из-за широкой поддержки во всех браузерах и устройствах.
Оптические носители
Blu-ray Disc использует AVC (High Profile) для кодирования видео. Фильмы в формате Blu-ray кодируются с битрейтом 15–30 Мбит/с, что обеспечивает качество, близкое к мастер-ленте. Формат AVCHD, предназначенный для любительских видеокамер, также основан на AVC.
Видеоконференции и видеонаблюдение
Сервисы видеоконференций (Zoom, Microsoft Teams, Skype) используют AVC для обеспечения совместимости. Системы видеонаблюдения (IP-камеры, видеорегистраторы) применяют AVC для сжатия видеопотока с разрешением до 4K при битрейтах 2–8 Мбит/с.
Сравнение с другими стандартами
| Стандарт | Год | Эффективность сжатия (относительно MPEG-2) | Поддержка 4K | Лицензирование |
|---|---|---|---|---|
| MPEG-2 (H.262) | 1995 | 1x | Нет | Патентный пул MPEG LA |
| AVC (H.264) | 2003 | 2x | Да (до 4K) | Патентные пулы MPEG LA, Via Licensing |
| HEVC (H.265) | 2013 | 3–4x | Да (до 8K) | Патентные пулы MPEG LA, HEVC Advance |
| AV1 | 2018 | 4–5x | Да (до 8K) | Бесплатно (Alliance for Open Media) |
AVC уступает HEVC и AV1 по степени сжатия, но превосходит их по аппаратной поддержке: практически все устройства, выпущенные после 2010 года, имеют аппаратный декодер AVC, в то время как декодеры HEVC и AV1 появились только в 2015–2020 годах.
Лицензирование и патенты
AVC защищён сотнями патентов, принадлежащих различным компаниям (Panasonic, Samsung, Sony, Qualcomm, Microsoft, Dolby и др.). Основные лицензионные организации:
- MPEG LA (основной пул): лицензирует патенты для производителей кодеков и устройств. Роялти для бесплатных декодеров (например, в браузерах) не взимается, для платных продуктов — до 0,20 доллара за единицу.
- Via Licensing (дочерняя компания Dolby): альтернативный пул, взимающий роялти с производителей контента (например, с платных стриминговых сервисов).
В 2010-х годах лицензионные сборы AVC вызвали критику, особенно со стороны разработчиков свободного программного обеспечения (например, проект x264, который распространяется по лицензии GPL, но не может быть использован в коммерческих продуктах без лицензионных отчислений). В 2023 году срок действия большинства патентов AVC истёк, что сделало стандарт практически свободным для использования.
Критика
Основные претензии к AVC связаны с:
- Высокой вычислительной сложностью кодирования по сравнению с MPEG-4 Part 2, что требовало мощных процессоров для кодирования в реальном времени.
- Недостаточной эффективностью для сверхнизких битрейтов (ниже 500 кбит/с для SD), где HEVC и AV1 дают заметно лучшее качество.
- Патентными ограничениями, которые препятствовали широкому внедрению открытых кодеков.
Интересные факты
- AVC стал первым стандартом, который поддерживал кодирование видео с разрешением 4K в потребительском сегменте (Blu-ray 4K, выпущенный в 2016 году, использует HEVC, но AVC-совместимые плееры могут воспроизводить 4K-контент с низким битрейтом).
- Кодек x264, реализующий AVC, является одним из самых популярных открытых кодеков в мире и используется в таких проектах, как FFmpeg, HandBrake и VLC.
- В 2014 году AVC был включён в стандарт HTML5 как обязательный формат для видеоэлемента
<video>в браузерах, что обеспечило его повсеместное распространение.
Источники
- ITU-T Recommendation H.264: Advanced video coding for generic audiovisual services (2021)
- ISO/IEC 14496-10: Information technology — Coding of audio-visual objects — Part 10: Advanced Video Coding
- Wiegand, T.; Sullivan, G.J.; Bjontegaard, G.; Luthra, A. (2003). "Overview of the H.264/AVC video coding standard". IEEE Transactions on Circuits and Systems for Video Technology.
- Sullivan, G.J.; Ohm, J.-R.; Han, W.-J.; Wiegand, T. (2012). "Overview of the High Efficiency Video Coding (HEVC) Standard". IEEE Transactions on Circuits and Systems for Video Technology.
- MPEG LA — AVC Patent Portfolio License Brief (2023)
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →