Универсальное видеокодирование (VVC / H.266)
По мере того как потребление цифровых медиа растёт и переходит к ультра‑высокому разрешению 4K, 8K и погружающей 360‑градусной виртуальной реальности, требования к пропускной способности заставляют существующие стандарты сжатия работать на пределе. Versatile Video Coding (VVC), также официально обозначенный как ITU-T H.266 и ISO/IEC 23090-3 (MPEG-I Part 3), представляет собой последний эволюционный скачок в технологии видеосжатия. Разработанный совместно командой Joint Video Experts Team (JVET) — сотрудничеством между ITU‑T SG 16 WP 3 и ISO/IEC JTC 1/SC 29/WG 11 — VVC был завершён в июле 2020 года с одной, чёткой целью: снизить битрейт данных примерно на 50% по сравнению с предшественником, HEVC (H.265), при сохранении одинакового визуального качества.
1. Что такое VVC (Versatile Video Coding)?
Versatile Video Coding — это блочно‑ориентированный гибридный видеокодек, разработанный для охвата полного спектра видеоприложений. В отличие от более старых кодеков, оптимизированных в основном для традиционного вещания и потоковой передачи, VVC был спроектирован с нуля, чтобы поддерживать:
- Видео с высокой частотой кадров (HFR) (до 120 fps и выше)
- Высокий динамический диапазон (HDR) и широкий цветовой охват (BT.2020)
- Кодирование экранного контента (текст, графика, отрисовка UI, генерируемые компьютером)
- Омнинаправленное $360^\circ$ видео для AR/VR‑окружений
- Адаптивное переключение разрешения без задержек воспроизведения видео
- Интерактивные коммуникации в реальном времени с низкой задержкой (игры, видеоконференции)
Достигнув беспрецедентных коэффициентов сжатия, VVC позволяет вещателям, провайдерам потокового видео и мобильным сетям предоставлять премиальные визуальные впечатления через ограниченные сетевые соединения.
2. Ключевые характеристики VVC / H.266
| Характеристика | Спецификация / Возможность |
|---|---|
| Орган стандартизации | JVET (ITU-T и ISO/IEC MPEG) |
| Эффективность сжатия | ~50% снижение битрейта по сравнению с HEVC (H.265); ~75% по сравнению с AVC (H.264) |
| Поддержка максимального разрешения | До 16K ($15360 \times 8640$) |
| Цветовые профили и глубина цвета | Цвет от 8‑бит до 16‑бит, хрома‑субдискретизация 4:0:0, 4:2:0, 4:2:2 и 4:4:4 |
| Поддерживаемые частоты кадров | До 120 fps и переменные частоты кадров |
| Поддержка динамического диапазона | SDR, HDR10, HLG и пользовательские характеристики передачи |
| Основные файловые контейнеры | .mp4, .mkv, .ts и необработанные битовые потоки (.vvc / .266) |
Преимущества основной архитектуры:
- Экономия пропускной способности: Предоставляет кристально чистое 4K‑видео при битрейтах, традиционно требуемых для 1080p Full HD.
- Истинная многопрофильная гибкость: Родные профили, предназначенные для игр, совместного использования экрана, погружающего сферического видео и видеонаблюдения.
- Оптимизировано для облачной и CDN‑доставки: Существенно снижает расходы на распределение и хранение для основных видеостриминговых платформ.
3. Подробные технические особенности VVC
VVC включает сложные алгоритмические улучшения на каждом этапе гибридного видеокодирующего фреймворка:
A. Расширенное разбиение блоков (структура QTMT)
В то время как HEVC использовал структуру блоков Quad-Tree (QT) с максимальными размерами Coding Tree Unit (CTU) $64 \times 64$, VVC вводит Quad-Tree with Multi-Type Tree (QTMT).
- Максимальный размер CTU увеличен до $128 \times 128$ пикселей.
- Позволяет рекурсивное разбиение на бинарные деревья (горизонтальные/вертикальные) и тернарные деревья (трёхстороннее разбиение).
- Позволяет кодировщику точно обводить блоки разбиения вокруг сложных границ объектов, тонких текстур и плавных градиентов.
B. Улучшенное предсказание внутри кадра
Для отдельных кадров (I-frames) VVC значительно обогащает моделирование пространственных направлений:
- 67 режимов внутрикадрового предсказания: Расширено с 35 режимов HEVC для точного захвата ориентаций краёв.
- Широкоугольное предсказание: Бесшовно моделирует углы, превышающие обычные 45‑градусные диагонали, для несквадратных блоков.
- Кросс‑компонентная линейная модель (CCLM): Прогнозирует хрома‑образцы (цвет) напрямую из восстановленных люма‑образцов (яркость), сокращая нагрузку на передачу хрома.
- Множественная опорная линия (MRL): Использует непоследовательные линии пикселей границы для предсказания сложных фоновых областей.
C. Точное предсказание между кадрами и компенсация движения
Для временно предсказанных кадров (P‑кадры и B‑кадры) VVC вводит:
- Прогноз временных векторных движений субблоков (SbTMVP): Делит блок на субблоки $8 \times 8$, назначая уникальные векторы движения каждому субрегиону.
- Аффинное межкадровое предсказание движения: Моделирует сложные реальные трансформации, такие как масштабирование, вращение, растяжение и наклон перспективы, используя 4‑параметрические или 6‑параметрические модели.
- Би‑направленный оптический поток (BDOF): Улучшает компенсацию движения на уровне отдельных образцов без добавления сигнального накладного расхода.
- Decoder-Side Motion Vector Refinement (DMVR): Точно настраивает векторы движения непосредственно на стороне декодера, экономя биты передачи.
D. Продвинутая фильтрация в цикле
Чтобы устранить визуальные артефакты (блокирование, ringing и размытие цвета), VVC использует 4‑ступенчатый каскад фильтров:
- Deblocking Filter (DBF): Сглаживает разрывы на границах блоков.
- Sample Adaptive Offset (SAO): Корректирует смещения краёв и полос.
- Adaptive Loop Filter (ALF): Использует 25 ромбовидных форм фильтра для восстановления деталей текстуры высокой частоты.
- Cross-Component ALF (CC-ALF): Улучшает детали хрома, используя информацию из канала яркости.
E. Нативная поддержка субкартинок и всенаправленного (омнидирекционного) контента
VVC определяет Subpictures как независимо декодируемые прямоугольные области внутри видеоканвы. Это позволяет VR-гарнитурам передавать только высокоразрешённый видовой портрет, на который смотрит пользователь, одновременно передавая периферийное зрение в более низком качестве (фовеированная трансляция), экономя до 70 % пропускной способности при VR‑стриминге.
4. Как создавать и кодировать файлы VVC
Кодирование контента VVC требует программных библиотек, реализующих стандарт H.266. Наиболее зрелый открытый энкодер — VVenC, разработанный Институтом Фраунгофера Гейнриха Герца (HHI).
Метод 1: Использование Fraunhofer VVenC (автономный CLI)
- Скачайте предварительно скомпилированные бинарные файлы VVenC или соберите их из исходного кода через GitHub (
https://github.com/fraunhoferhhi/vvenc). - Выполните команду для кодирования несжатого YUV или необработанного видеопотока:
vvencapp --input input_yuv420p.yuv --size 1920x1080 --fps 60 --preset medium --qp 28 --output output.266
Метод 2: Кодирование с помощью FFmpeg (с включённым libvvenc)
Современные пользовательские сборки FFmpeg, скомпилированные с поддержкой libvvenc, позволяют прямое преобразование из стандартных видеофайлов (.mp4, .mov, .mkv):
ffmpeg -i input.mov -c:v libvvenc -preset medium -b:v 2500k -tag:v vvc1 -c:a aac -b:a 128k output_vvc.mp4
Предустановки кодирования ключей:
faster/fast: Лучшее для быстрого прототипирования и живого тестирования.medium: Рекомендуемый баланс между коэффициентом сжатия и временем кодирования.slow: Максимальное визуальное качество и наивысшее сжатие данных для архивирования и распределения VOD.
5. Как открыть и воспроизвести VVC видеофайлы
Поскольку VVC является передовым стандартом, программное обеспечение медиаплееров и аппаратные декодеры активно внедряют поддержку. Вот как воспроизводить контент VVC сегодня:
1. Плеер Fraunhofer VVdec
Fraunhofer HHI предоставляет VVdec, ультрабыстрый многопоточный открытый программный декодер.
- Скачайте
vvdecappс GitHub. - Воспроизведите или декодируйте битовые потоки:
vvdecapp -b output.266 -o decoded_output.yuv
2. MPV Media Player (рекомендованный GUI/CLI плеер)
Последние сборки MPV, скомпилированные с libvvdec или последним бекендом FFmpeg, могут воспроизводить VVC‑видео в контейнерах .mp4 или .mkv без дополнительной настройки:
mpv output_vvc.mp4
3. VLC Media Player
- VLC интегрирует поддержку VVC в свои версии 4.0.
- Скачайте VLC 4.0 Nightly Build, откройте плеер и перетащите файл видео
.mp4или.vvcнепосредственно в окно воспроизведения.
4. MPC-HC / MPC-BE с LAV Filters (Windows)
Пользователи Windows могут воспроизводить VVC‑файлы с помощью MPC-HC (Media Player Classic Home Cinema) в сочетании с последними ночными сборками LAV Filters, которые включают поддержку декодирования VVC.
Сравнение VVC, HEVC и AV1
| Метрика | H.264 (AVC) | H.265 (HEVC) | AV1 | H.266 (VVC) |
|---|---|---|---|---|
| Год завершения | 2003 | 2013 | 2018 | 2020 |
| Эффективность битрейта | Базовый уровень ($0%$) | ~40-50% лучше | ~50-55% лучше | ~65-75% лучше |
| Лицензирование | Роялти (MPEG LA) | Роялти (множество пулов) | Без роялти (AOMedia) | Роялти (Access Advance и др.) |
| Аппаратное декодирование | Универсальная | Универсальная | Широко распространено | Появляется в флагманских SoC |
| Целевое применение | Устаревший веб/мобильный | 4K трансляция/OTT | Веб‑видео (YouTube/Netflix) | 8K/16K, AR/VR, OTT следующего поколения |
Часто задаваемые вопросы (FAQ)
**Q1: Каково главное преимущество видеоформата VVC (H.266) по сравнению с HEVC? A1: VVC обеспечивает примерно 50 % экономии данных по сравнению с HEVC, сохраняя точно такое же визуальное качество.
**Q2: Является ли VVC / H.266 бесплатным, открытым видеоформатом? A2: Нет, VVC — это стандарт ISO/ITU, требующий выплаты роялти, лицензируемый через патентные пуулы, такие как Access Advance, хотя существуют открытые кодировщики/декодеры.
**Q3: Какие форматы видеоконтейнеров поддерживают битовые потоки VVC?
A3: Битовые потоки VVC в основном упаковываются в стандартные файлы контейнеров .mp4, .mkv (Matroska) и .ts (MPEG Transport Stream).
**Q4: Может ли VVC эффективно обрабатывать совместное использование экрана и потоковую передачу видеоигр? A4: Да, VVC включает специализированные инструменты Screen Content Coding (SCC), которые сжимают компьютерные интерфейсы, текст и синтетическую графику с исключительной чёткостью.
**Q5: Когда мобильные телефоны и смарт‑телевизоры получат поддержку нативного аппаратного декодирования VVC? A5: Крупные поставщики кремния и производители смарт‑телевизоров начали внедрять аппаратные декодеры VVC в премиальные чипсеты, начиная с 2023–2024 годов, при этом массовое принятие быстро расширяется до 2026 года.
Итоги и перспективы
Versatile Video Coding (VVC / H.266) устанавливает золотой стандарт эффективности сжатия и структурной универсальности. Сократив вдвое требования к пропускной способности сети для 4K и открыв реалистичные каналы доставки для 8K, 16K, фовеативной виртуальной реальности и облачных игр, VVC готов обеспечить следующее десятилетие цифровых визуальных впечатлений по всему миру.