Google давно строит собственный технологический стек целиком: от TPU-ускорителей и семейства моделей Gemini/Gemma до инфраструктуры доставки видео. Вторая часть этой истории началась в 2010 году, когда компания купила разработчика кодеков On2 Technologies и получила в распоряжение линейку VP (Video Processing). Её очередным и самым заметным воплощением стал VP9, который до сих пор спорит за звание самого массового кодека с AVC, HEVC и AV1. Ниже специалисты «СервакМастер» разбирают, как VP9 устроен внутри, что он умеет, на каком железе работает и где уступает конкурентам.

Что такое VP9 и почему он важен

VP9 — полностью открытый и бесплатный видеокодек, эволюционный наследник VP8 от On2. Он стал первым по-настоящему эффективным кодеком без лицензионных ограничений, который могли свободно встраивать производители аппаратного и программного обеспечения. Для веб-сервисов, стриминга и массового потребления контента это оказалось идеальным вариантом.

Именно на VP9 YouTube смог масштабировать выдачу видео высокого разрешения, включая 4K, заметно сэкономив на пропускной способности и хранении. До появления более совершенного AV1 VP9 по праву считался лучшим решением для интернет-видео: он удерживал баланс между качеством, вычислительной сложностью и распространённостью. По позиционированию это прямой конкурент H.265, но технологически более продвинутому открытому AV1 он проигрывает.

Как VP9 сжимает видео

Гибридная схема и деление кадра

Как и H.264 с H.265, VP9 использует гибридную схему, где совмещены внутрикадровое (intra) и межкадровое (inter) кодирование. Сначала кадр режется на суперблоки до 64x64 пикселей. Затем, по мере усложнения картинки, суперблоки рекурсивно дробятся на меньшие блоки с помощью структуры «квадродерево». Биты распределяются гибко: однородные участки кодируются крупными блоками, а детализированные — мелкими.

Предсказание

  • Intra-кадры. Применяется пространственное предсказание из нескольких десятков режимов: кодек восстанавливает блок по уже закодированным пикселям того же кадра.
  • Inter-кадры. Работает временное предсказание с компенсацией движения: кодек находит, как блоки сместились между кадрами, и передаёт только векторы движения и разницу.

Преобразование, квантование и энтропийное кодирование

Остаток после предсказания проходит через дискретное косинусное преобразование (DCT) или асимметричное дискретное синусное (ADST) — выбор зависит от типа контента. Далее коэффициенты квантуются: уменьшается точность, малозаметные детали отбрасываются. Завершает цепочку арифметический энтропийный кодер, который компактно упаковывает поток.

Отдельная особенность VP9 — ограниченная и упрощённая поддержка двунаправленных кадров по сравнению с HEVC. Это облегчает декодирование, но слегка снижает гибкость кодека.

Профили и уровни

Профили определяют допустимую глубину цвета и цветовой формат.

Профиль Глубина цвета Формат Для чего
Profile 0 8 бит 4:2:0 Самый распространённый, основа большинства веб-видео, включая YouTube
Profile 1 8 бит 4:4:4 Компьютерная графика и композитинг без потерь на цветовой субдискретизации
Profile 2 10 и 12 бит 4:2:0 Ключевой профиль для HDR (High Dynamic Range)
Profile 3 10 и 12 бит 4:4:4 Профессиональные задачи

Уровни охватывают диапазон от 1 до 6.2 и задают технические ограничения для декодера — по аналогии с AVC и HEVC.

Битрейт, качество и задержка

По эффективности сжатия VP9 заметно впереди H.264: при том же визуальном качестве битрейт можно снизить на 30–50%. В среднем он лишь немного уступает H.265. Управлять битрейтом можно классическими методами — переменным (VBR) и постоянным (CBR), а в libvpx есть и режим, подобный CRF, где держится постоянное качество, а размер файла плавает.

На задержку влияют длина группы кадров и структура кадров. Для Video on Demand (VOD) и live-стриминга с умеренной задержкой VP9 подходит хорошо, что и обеспечило ему доминирование на YouTube. Но там, где нужна сверхнизкая задержка — видеозвонки, интерактивные трансляции, — сложность кодека и особенности работы с B-кадрами делают его менее удачным выбором, чем более простые или специализированные кодеки.

Аппаратная поддержка

Широкое распространение VP9 во многом объясняется тем, что его умеет декодировать аппаратура. С кодированием ситуация заметно хуже.

Процессоры (CPU и APU)

  • Intel: аппаратное декодирование VP9 — начиная с 6–7 поколения Core (Skylake / Kaby Lake); полноценная поддержка Profile 0/2 (8 и 10 бит) — с Kaby Lake. Аппаратное кодирование появилось в ограниченном виде с Ice Lake, полноценно — на Intel Arc (Alchemist).
  • AMD: декодирование — начиная с APU Ryzen на архитектуре Zen / Zen+ через UVD/VCN. Аппаратное кодирование VP9 отсутствует либо официально не заявлено.
  • Apple Silicon: у M1, M2, M3 есть аппаратное декодирование VP9, а кодирование выполняется программно.

В ранних APU VP9 обрабатывался внутри iGPU, в более новых чипах — выделенными медиаблоками.

Графические процессоры

  • NVIDIA: аппаратное декодирование — с Maxwell 2.0 (GTX 950/960). Полная поддержка (8/10 бит, HDR) — в Pascal, Turing, Ampere и Ada. Аппаратное кодирование через NVENC появилось в Pascal, но долго оставалось ограниченным и массовым сценарием не стало.
  • AMD: декодирование — с GCN 4.0 (Radeon RX 400) через UVD, затем VCN. Кодирование отсутствует или экспериментально и стандартной функцией не считается.
  • Intel: Quick Sync Video декодирует VP9 с Kaby Lake, полноценное аппаратное кодирование реализовано на Intel Arc.

Мобильные платформы

  • Qualcomm Snapdragon: декодирование стало стандартом с Snapdragon 820; в более новых SoC (865, 888, 8 Gen 1/2) поддерживается VP9 8/10 бит, а кодирование зависит от поколения VPU.
  • Apple A-series: декодирование — с A10 Fusion, кодирования нет.
  • Samsung Exynos: декодирование — с Exynos 8890.
  • HiSilicon Kirin: декодирование — с Kirin 960.

Телевизоры, камеры и профессиональная техника

Почти все Smart TV, медиаплееры и ТВ-приставки 2016–2017 годов выпуска и новее декодируют VP9 аппаратно — в первую очередь ради YouTube в 4K. Зато аппаратное кодирование VP9 в камерах, энкодерах и NVR встречается редко и в профессиональном сегменте практически не используется.

Программное кодирование силами библиотеки libvpx остаётся вычислительно тяжёлым и относительно медленным, поэтому в реальном времени на слабом железе оно ограничено.

Разрешение, HDR и цвет

Формально стандарт поддерживает разрешения до 8K (8192x4320). HDR реализован через Profile 2: 10-битная глубина и передача метаданных HDR10 — так YouTube запустил HDR-контент. Доступны также 12-битная глубина и 4:4:4 без цветовой субдискретизации. При этом в профессиональном производстве и монтаже VP9 не прижился: ему не хватает поддержки в профессиональном ПО, редактировать сжатый поток сложно, а доминируют другие, специализированные кодеки.

Лицензия: почему VP9 бесплатен

Ключевой козырь VP9 — модель лицензирования. За HEVC необходимо платить патентным объединениям (MPEG LA, HEVC Advance), а Google выпустила VP9 как полностью открытый и бесплатный стандарт. Компания взяла на себя риски возможных патентных претензий и дала индустрии чёткие гарантии. Так исчезли юридическая неопределённость и финансовые барьеры для внедрения — в том числе у Google (YouTube), Mozilla, Microsoft и других. Для самой Google VP9 стал стратегическим активом: ключевая технология под контролем, а зависимость от внешних лицензиаров ниже.

Где VP9 применяется

Главная площадка VP9 — YouTube: подавляющая часть трафика платформы идёт именно в этом кодеке. Chrome, Firefox, Edge и Opera давно его поддерживают, поэтому он стал базовым форматом для HTML5-видео. Многие VOD-платформы тоже отдают в VP9 контент высокого разрешения. В видеоконференциях и WebRTC его роль ограничена из-за относительно высокой задержки и сложности кодирования в реальном времени. Эта привязка к экосистеме Google (веб, YouTube, Android TV) одновременно и сила VP9, и его слабость: она не позволила вытеснить H.264/HEVC на широком рынке.

Ограничения VP9

  • Тяжёлое кодирование. Вычислительная сложность очень высока, поэтому без мощного железа во многих сценариях реального времени кодек непрактичен.
  • Слабая аппаратная поддержка кодирования (в отличие от декодирования) долго сдерживала применение для захвата и трансляции.
  • Узкая экосистема. Она сформирована вокруг продуктов Google, что затруднило проникновение в профессиональное вещание и архивирование.
  • Застой в развитии. С появлением AV1 развитие самого VP9 фактически остановилось, усилия сосредоточены на преемнике, а значит, кодек постепенно устаревает.

Практические выводы для инфраструктуры

Если вы строите видеосервис, главный вывод из этой картины простой: раздавать VP9 легко почти на любом клиенте, а вот готовить его — дорого по вычислениям. Транскодирование большого архива в VP9 упирается в мощность процессора и число ядер, поэтому для VOD-платформ и конвейеров перекодирования разумно закладывать многоядерные серверные платформы. Конфигурации под такие задачи можно посмотреть в разделе серверов, а если видео соседствует с ИИ-нагрузкой — в разделе серверов для ИИ. Инженеры «СервакМастер» подскажут, как подобрать сборку под ваш объём трафика; напишите нам через страницу контактов.

Выводы

VP9 появился в 2013 году и всё ещё остаётся одним из самых актуальных кодеков, хотя его роль меняется. Миллиарды устройств декодируют его аппаратно, поэтому огромный массив контента, прежде всего на YouTube, воспроизводится без проблем. А вот кодирование VP9 — удел самых мощных аппаратных решений, и это сдерживает массовое внедрение. Для VOD и стриминга это проверенный временем кодек, который решает задачи, ради которых его делали. Но он неизбежно уступает AV1 и будет уступать грядущим AV2 и H.266.

Исчезнет VP9 не сразу: установленная база устройств даёт ему долгую жизнь. Однако место главного инновационного кодека для интернет-видео уже занято. VP9 выполнил свою историческую миссию, проложив путь к открытому и эффективному видео будущего. Впрочем, в 2015 году Google объявила о разработке VP10, так что реванш возможен в любой момент.