Содержание статьи +
- TL;DR
- Почему это важно
- Что такое «ИИ внутри энкодера»
- Дерево разбиения – крупнейший потребитель вычислительных ресурсов в современных кодеках
- Выбор режима – определяем, какое предсказание окажется лучшим
- Распространённая ошибка: думать, что «AI mode decision» – это огромная сеть
- Scene-кадр – куда ставить I-кадры
- Перцептивная квантизация – самый старый школьный ИИ
- Как все четыре компонента работают вместе в реальном энкодере
- Где здесь место для hardware-сюжета
- Где здесь Фора Софт
- Конкретный пример: SVT-AV1 medium против slow
- Ключевые тезисы
- Что почитать дальше
- Источники
TL;DR
Когда в 2026 году говорят «ИИ внутри энкодера», почти никогда не имеют в виду нейрокодек, заменяющий H.264 или AV1. Речь идёт о небольшой, быстрой модели, интегрированной в классический энкодер, чтобы быстрее или умнее принять одно конкретное решение вместо полного перебора вариантов. Четыре ключевые точки её применения – дерево разбиения (как разбить кадр на блоки), mode decision (какое предсказание и преобразование выбрать для каждого блока), детектор scene-када (где ставить I-кадры) и карта квантизации (сколько битов выделить на каждый блок с учётом того, что заметит, а что – нет человеческий глаз). Исследования этих четырёх «ML-врезок» с 2018 года стали главным двигателем роста эффективности энкодеров: опубликованные результаты показывают экономию времени кодирования на 30–82% по сравнению с VVenC-якорем при потере качества в 0,7–3,0% BD-rate. А собственный механизм partition-gating в SVT-AV1 использует миниатюрные нейросети с одним–двумя скрытыми слоями и обеспечивает те же выигрыши в production-уровневом open-source энкодере. В этой статье по порядку разбираются, что представляет собой каждое из четырёх решений, как классический энкодер принимает его сегодня, чем отличается ИИ-версия и как правильно интерпретировать заявления вендоров вроде «AI-powered encoding», не попавшись на удочку маркетинга.
Почему это важно
Если ваша команда когда-либо обсуждала переход с x264 на SVT-AV1, проверяла, действительно ли «ИИ-энкодер» даёт на 30% меньший битрейт, или оценивала, окупятся ли затраты на per-title encoding – вы спорили именно о четырёх решениях, описанных в этой статье, какими бы терминами ни пользовались. Каждый анонс «ИИ-энкодера», который вы прочитаете в этом году – от Google Argos ASIC и NETINT VPU до Beamr Cloud, Bitmovin и любого академического стартапа с «neural codec speedup» – строится на тех же четырёх рычагах. Как только вы научитесь их распознавать, вы сможете задавать правильные вопросы, которые помогут отличить реальный продукт от красивой презентации.
Статья – для продакт-менеджера, фаундера, руководителя video operations или инженера-менеджера, которому нужно принимать решения по кодекам, разбираться в вендорских презентациях без обмана или уверенно вести дискуссии о битрейтных лесенках. Мы начинаем с того места, где классический энкодер тратит больше всего времени – с дерева разбиения, – и движемся к детекции сцен и квантизации. В каждом разделе сначала объясняем классический метод простыми словами, затем показываем, где в игру вступает ML-модель, и приводим опубликованные данные, чтобы вы понимали: что реально достижимо, а что – просто слайд.
Что такое «ИИ внутри энкодера»
Фраза «ИИ внутри энкодера» в этой статье означает одну конкретную вещь: модель машинного обучения – чаще всего небольшая свёрточная сеть, градиентный бустинг или SVM – встроена в классический видеоэнкодер, например x265, SVT-AV1, libaom или VVenC, где она заменяет медленный полный перебор быстрым предсказанием. На выходе энкодера по-прежнему получается стандартно совместимый битстрим, который воспроизведёт любой H.264-, HEVC-, AV1- или VVC-декодер на планете. Искусственный интеллект никогда не изменяет битстрим – он влияет только на логику принятия решений, по которой энкодер этот битстрим производит.
Это другое семейство технологий, чем end-to-end нейрокодеки – исследовательские системы вроде Google HiFiC, Microsoft Neural Video Coding (NVC) и работ MPEG-NNVC, которые заменяют весь пайплайн глубокими сетями и генерируют нестандартный битстрим, требующий нейродекодера. 1 2 End-to-end нейрокодеки – активное и захватывающее направление, и в этой Learn-секции им будет посвящена отдельная статья. Чем они не являются в 2026 году – так это технологией, на которой построены энкодеры, обрабатывающие мировой видеотрафик. Почти каждый байт, который вы вчера посмотрели, прошёл через классический энкодер, и ИИ-выигрыши в нём локальны: более быстрые решения о разбиении, более умные scene-купы, более качественные карты квантизации.
Различие важно, потому что любой «ИИ-энкодер» из вендорского питча нужно сначала отнести к одной из двух категорий, прежде чем оценивать. Продукт, который заявляет о «30% экономии битрейта с помощью ИИ» и при этом выдаёт стандартный AV1-битстрим, относится к одной из четырёх описанных в статье групп. Продукт, битстрим которого может читать только его собственный декодер, – из другого лагеря, и про него нужно задавать совсем другие вопросы, прежде всего – кто установит этот декодер на устройство каждого зрителя.
Четыре ML-врезки в классические энкодеры устроены одинаково. Каждая из них направлена на решение одной конкретной задачи, на которую классический энкодер тратит много вычислительных ресурсов. Вместо полного или частичного перебора каждая вставка использует модель, способную предсказать ответ за микросекунды. Оценка проводится по двум параметрам: сэкономленное время кодирования и BD-rate – сокращение от Bjøntegaard Delta Bitrate, стандартного способа выразить, «на сколько дополнительных битов мне придётся потратить при том же качестве». 3 Хорошая ML-вставка экономит 30–60% времени при стоимости по BD-rate менее 2%; отличная – экономит ещё больше и стоит ещё дешевле.
Дерево разбиения – крупнейший потребитель вычислительных ресурсов в современных кодеках
Чтобы понять, почему partition – это первое место, куда команды энкодеров ставят свою первую ML-модель, посмотрите, куда энкодер тратит время. В HEVC coding tree unit (CTU) – наибольший блок пикселей, который энкодер обрабатывает как единую структуру, – может достигать размера 64×64 семплов; CTU рекурсивно делится на меньшие coding units (CU) вплоть до 8×8. 4 В AV1 соответствующая единица называется superblock и может достигать 128×128, при этом разделяется на гораздо более мелкие partitions. В VVC единицу снова называют CTU, и она использует структуру QT-MTT (Quadtree + Multi-Type Tree), которая к классическому quadtree добавляет бинарные и тернарные разбиения, увеличивая количество возможных форм partition на порядок по сравнению с HEVC. 5
На каждом уровне дерева энкодер решает: продолжать ли деление блока или остановиться и закодировать его целиком. Ранняя остановка экономит биты на синтаксисе partition, но ведёт к менее точному предсказанию и, соответственно, к большему искажению. Более глубокое деление даёт более точное предсказание, но требует дополнительных битов на partition и вычислительные ресурсы. Классический подход – оптимизация по соотношению «битрейт–искажение» (rate-distortion optimisation, RDO): попробовать оба варианта, оценить их стоимость в битах и искажении и выбрать лучший. Применение этого метода рекурсивно к CTU, у которого может быть сотни возможных форм листовых узлов, – главная причина, по которой принятие решений о partition занимает 60–80% времени выполнения в современных энкодерах HEVC, AV1 или VVC. 6 Сократите это время вдвое – и вы сократите вдвое общую стоимость кодирования.
Это то место, где машинное обучение окупается быстрее всего, и опубликованные цифры говорят сами за себя. Статья в MDPI Electronics (2023) по VVenC показывает, что схема быстрого партиционирования на основе LightGBM экономит от 30,21% до 82,46% времени кодирования в зависимости от пресета при стоимости по BD-рейту 0,67–3,01%. 7 Статья 2024 года в Journal of Real-Time Image Processing описывает аналогичный подход для libaom-AV1 – LACCO, learning-based AV1 complexity controller – и сообщает о сопоставимых ускорениях на HD и UHD. 8 Эти результаты – не лабораторные эксперименты; они легли в основу модулей принятия решений о партиционировании, которые уже включены в последние релизы VVenC и референсных AV1-имплементаций.
Механика без математики выглядит так. Энкодер извлекает из текущего блока небольшой набор признаков – дисперсию, средний градиент, текстурную энергию, решения соседних блоков, величину вектора движения – и передаёт их классификатору. Классификатор выдаёт одно число для каждого режима разбиения: вероятность того, что этот режим победит в RDO-соревновании. Энкодер либо отбрасывает режимы с вероятностью ниже порога, либо проводит полный RDO только для двух-трёх лучших кандидатов. Непроверенные режимы полностью исключаются из дерева поиска, и энкодер работает значительно быстрее.
Сегодня в production-энкодерах доминируют два семейства моделей. Свёрточные нейронные сети (CNN) применяются, когда энкодер может обработать сырые пиксели блока: небольшая CNN с одним–двумя свёрточными слоями анализирует патч размером 64×64 или 128×128 и сразу выдаёт предсказание разбиения. 9 CNN обеспечивают максимальную точность, но требуют наибольших вычислительных затрат на вызов, поэтому используются только в самых медленных и качественных пресетах. Gradient-boosted деревья, такие как LightGBM и XGBoost, применяются повсеместно – они обрабатывают ручной вектор признаков и выполняются за десятки наносекунд, что позволяет делать несколько вызовов на CTU без существенного влияния на общее время работы энкодера. 7 SVM и небольшие полносвязные сети с одним–двумя скрытыми слоями и 16–64 нейронами в каждом – третий подход; именно такую архитектуру использует SVT-AV1 в production: сеть вызывается перед каждым режимом разбиения, чтобы определить, можно ли его пропустить, а SVM анализирует результат режима «None», чтобы решить, стоит ли полностью прекратить поиск разбиений. 10 11
Trade-off, с которым сталкивается команда энкодера, – тот же, что и у команды шахматного движка. Более крупная и умная модель принимает более качественные решения по разбиению (partition) и даёт меньшие битрейты при том же качестве, но и обходится дороже при вызове. Начиная с определённой точки сама модель становится новым узким местом. Сети SVT-AV1 крошечные (16–64 узла, 1–2 скрытых слоя) именно потому, что энкодер принимает миллионы partition-решений в секунду на 4K-потоке, и модель с 100 миллионами параметров, вызываемая так часто, просто не справится. Искусство заключается в том, чтобы найти модель, которая достаточно велика, чтобы превзойти классическую эвристику, но при этом достаточно мала, чтобы не стать новым ограничением.
Маленький пример фиксирует порядки величин. Классический HEVC-энкодер анализирует CTU размером 64×64 на одной глубине, затем четыре блока 32×32 на следующей, шестнадцать 16×16 – на следующей, и шестьдесят четыре 8×8 – на самой глубокой. В каждом блоке проверяются несколько вариантов intra- и inter-предсказания для двух списков опорных кадров. Наивный подсчёт: 1 + 4 + 16 + 64 = 85 блоков, в каждом – около 30 + 1 модов, итого примерно 2 635 RDO-оценок на CTU. В 4K-кадре HEVC (3840 × 2160) ÷ (64 × 64) ≈ 2 025 CTU, так что при самом медленном пресете один кадр требует порядка 5,3 миллиона RDO-оценок. Типичная модель ML для быстрого разбиения сокращает это число на 60%, оставляя примерно 2,1 миллиона – а при 60 кадрах в секунду за 10-минутный клип сэкономленные оценки исчисляются триллионами. Вот и весь сюжет производительности.
Подвох, на котором ловится каждая команда энкодеров, – training data. Модель partition, обученная на одном типе контента – например, анимации, спорте или выступлениях с камеры (talking head), – плохо работает на тех данных, на которых её не учили. В реальных условиях эту проблему решают, обучая модель на намеренно разнообразном корпусе, включающем screen content, анимацию, прямые трансляции спорта, художественные фильмы и UGC-съёмки с камер. При этом модель стараются держать консервативной: если она ошибается в сторону «не пропускать» – теряется скорость, но не качество. А если ошибается в сторону «пропускать» – теряются и скорость, и качество. Сети SVT-AV1 обучены на часах тщательно отобранного контента из внутреннего пула Netflix – одна из причин, по которой этот энкодер так хорошо обобщает. 10 Если вендор заявляет: «20% ускорение энкодера без потери качества», но не может сказать, на каком контенте обучалась модель, – вы только что узнали кое-что полезное про этого вендора.
Выбор режима – определяем, какое предсказание окажется лучшим
Когда выбран partition, энкодер всё ещё должен выбрать prediction mode для каждого leaf-блока. В HEVC intra-блок может использовать один из 35 направленных intra-модов плюс DC и planar; в AV1 число аналогичных модов примерно такое же, но с другими углами и дополнительным набором рекурсивных intra-модов; в VVC оно выросло до 67 угловых intra-модов плюс полудюжина новых инструментов – multiple reference lines, intra sub-partitioning и matrix-based intra prediction (MIP). 12 Выбор правильного mode – снова задача RDO (оценить каждого кандидата, измерить cost-в-битах против distortion, выбрать победителя) – и снова дорогостоящая.
ML-врезки здесь напоминают partition-модели, с одним важным архитектурным решением: gating против ranking. Gating-модель принимает признаки блока и для каждого кандидата выдаёт вероятность его победы; кандидаты с вероятностью ниже порога отбрасываются. Ranking-модель использует те же признаки, но возвращает отсортированный список из топ-K наиболее вероятных победителей; энкодер выполняет полный RDO только для этих K кандидатов. На практике почти все production-развёртывания используют ranking, поскольку у gating-модели длинный хвост редких, но дорогостоящих ошибок: если истинный победитель оказывается в отброшенных, блок предсказывается плохо, и BD-стоимость по нему резко возрастает. Ranking позволяет энкодеру ограничить K тремя или пятью, понести небольшую постоянную нагрузку на блок и при этом получить более чем 95% ускорения. 13
Опубликованные цифры находятся в том же диапазоне, что и для partition. Статья 2021 года из Circuits, Systems, and Signal Processing по теме Adaptive CU Mode Selection in HEVC Intra Prediction, использующая подход на основе глубокого обучения, сообщает о сокращении времени кодирования до 66,89% при потере BD-rate 1,31% по сравнению с передовым классическим решением в HEVC на самом медленном пресете. 13 Обзор 2024 года в PMC, посвящённый CNN-подходам к intra-предсказанию в HEVC и VVC, подводит итог типичным результатам: экономия времени в диапазоне 40–70% и потеря BD-rate в пределах 0,5–2,5%, в зависимости от разрешения и характера контента. 14
Полезный паттерн из литературы по mode decision – early-exit cascading. Энкодер сначала применяет дешёвую классическую эвристику и обращается к ML-модели только при низкой её уверенности. Для блоков, где и дисперсия, и движение малы, intra-режимы planar или DC почти всегда корректны – энкодер выбирает их сразу. В блоках со сильным и направленным градиентом он проверяет доминирующий угол и соседние направления, после чего останавливается. ML-модель задействуется только в неоднозначных случаях – когда классическая эвристика не может однозначно определить лучший режим, и иначе пришлось бы проводить полный RDO. Именно этот паттерн объясняет, почему среднее ускорение от внедрения ML значительно превышает стоимость самой модели: большинство блоков вообще не требуют её вызова.
Распространённая ошибка: думать, что «AI mode decision» – это огромная сеть
На стыке partition и mode decision существует конкретная ловушка, в которую регулярно попадают команды, только начинающие работать с этой темой. Они читают питч «AI-encoder», воспринимают ИИ-часть как трансформер на сотню миллионов параметров и либо отвергают технологию как слишком тяжёлую для production, либо ожидают мгновенной трансформации.
Ни одна реакция не верна. Сети, используемые в production-энкодерах, по современным меркам машинного обучения – крошечные: обычно от нескольких тысяч до десятков тысяч параметров, 1–2 скрытых слоя, всего несколько входов. Partition-сети SVT-AV1 легко помещаются в кэш CPU. 10 Это не «искусственный интеллект» в потребительском смысле – не генеративные модели, а классические классификаторы паттернов, обученные один раз офлайн на большом корпусе данных и вызываемые миллионы раз в секунду в продакшене. Они практически не нагружают CPU и память во время работы и не требуют GPU. Если вендор утверждает, что его энкодеру нужна H100, значит, либо он применяет машинное обучение принципиально в другом месте (например, для апскейлинга или шумоподавления до кодирования), либо построил решение, которое невозможно масштабировать.
Поэтому правильный тест для утверждения «AI inside the encoder» – такой: какое именно решение принимает модель, насколько она велика и какой BD-rate-трейд указано в их собственных опубликованных данных? Если вендор не может чётко ответить на эти три вопроса, ИИ в презентации – это маркетинг.
Scene-кадр – куда ставить I-кадры
Третье место ИИ в энкодере – scene-cut detection, она же scene change detection или scenecut. Цель – поставить свежий I-кадр (кадр, не зависящий от других при декодировании) в тех местах, где контент меняется настолько, что P- или B-кадр не может предсказать новый контент на основе старого. Поставить правильно – и энкодер эффективно использует биты, а поток поддерживает чистый seek; ошибиться – и либо потратишь слишком много бит (I-кадр посреди статичной сцены), либо слишком мало (нет I-кадра на резком монтажном стыке, и несколько следующих кадров плохо предсказываются и выглядят плохо). 15
Классический алгоритм в x264, x265 и libaom – простая эвристика на основе разности кадров. Для каждого кадра в окне lookahead энкодер вычисляет метрику (обычно сумму абсолютных разностей между текущим и предыдущим кадром, взвешенную по low-pass-фильтрованной версии кадра, чтобы подавить шум) и сравнивает её с порогом. 15 В x264 порог задаётся опцией --scenecut и по умолчанию равен 40: значения выше 40 делают энкодер более склонным объявлять сцену сменённой и вставлять I-кадр, а значение 0 отключает детектор. Та же логика, но с другими константами, используется в x265 и SVT-AV1.
Классическая эвристика работает в большинстве случаев и достаточно быстра, чтобы выгода от замены её ML-моделью в абсолютных цифрах была меньше, чем при оптимизации partition или mode decision. Однако ошибки этой эвристики систематичны и дорогостоящи. Она либо недосчитывает, либо пересчитывает cut в трёх ситуациях, где человек никогда бы не ошибся: fades и dissolves (медленные переходы, при которых разности между соседними кадрами малы, но контент на самом деле меняется), быстрые панорамы и высокая динамика (где различия между кадрами значительны, но сцена не меняется), а также контент с намеренными резкими переходами внутри одной сцены – вспышки, молнии, стробоскопы – где классический детектор вставляет I-кадр на единственный яркий кадр и сразу требует ещё один, когда изображение возвращается к норме. 15
ML-детектор границ сцен заменяет жёстко заданный порог небольшим классификатором, обученным на размеченных переходах. Классификатор анализирует ту же метрику разности кадров, а также несколько дополнительных признаков – расстояние между цветовыми гистограммами, расстояние между гистограммами яркости, статистику векторов движения, плотность краёв и тот же низкочастотный фильтрованный residual, который использует классический детектор, – и выдаёт вероятность того, что данная позиция действительно является границей сцены. Адаптивные алгоритмы GOP используют эту вероятность, чтобы решить: начинать ли новый GOP, продолжать ли текущий или вставить границу open-GOP, которая обходится дешевле, чем закрытый I-кадр. 16
Production-deployments разделены. Open-source энкодеры – x264, x265, SVT-AV1, libaom – по-прежнему используют классические детекторы с вручную заданными порогами. Это во многом объясняется тем, что выигрыш по BD-rate от ML-детектора невелик: исследования показывают 1–3 % на длинном контенте с большим количеством сценических переходов, а на непрерывном материале – ещё меньше. Кроме того, переобучение и развёртывание модели создают большую операционную нагрузку, чем настройка одной константы.
Коммерческие облачные энкодеры – Bitmovin, AWS Elemental, Beamr, NETINT – всё чаще применяют ML-детекторы сценических переходов как часть более широких content-aware пайплайнов, где сигнал детектора также управляет битрейтными лесенками на уровне отдельных сцен и адаптивной длиной lookahead. 17 18 Именно в таких системах ML-детекторы сцен окупаются – не за счёт улучшения BD-rate отдельного GOP, а потому что они обеспечивают входные данные для downstream-энкодера, выполняющего оптимизацию rate-distortion на каждом сегменте. 19
Перцептивная квантизация – самый старый школьный ИИ
Четвёртый и самый старый участник этого семейства – перцептивная квантизация, часть энкодера, определяющая, сколько битов выделить каждому блоку, исходя из того, где человеческая зрительная система заметит или не заметит потери. «ИИ» здесь на двадцать лет старше современной волны машинного обучения, но базовая логика та же: модель восприятия, обученная на данных, используется во время выполнения для перераспределения битов внутри кадра.
Классический квантизатор – это одно число на слайс – QP (quantization parameter), управляющий тем, насколько агрессивно энкодер округляет коэффициенты преобразования в каждом блоке этого слайса. 20 Перцептивный квантизатор корректирует QP по блокам: тратит больше битов (то есть использует более низкий QP) на те блоки, где глаз заметит потерю, и экономит биты (то есть применяет более высокий QP) там, где потери незаметны. Сэкономленные внутри кадра биты можно перераспределить в более сложные области: общий битрейт остаётся прежним, а воспринимаемое качество возрастает.
В современных open-source энкодерах это реализовано четырьмя механизмами, и важно знать все четыре, потому что любой подход «perceptual encoding» основан на одном из них.
Variance-based adaptive quantization (исходный x264 aq-mode 1, портированный в x265 и SVT-AV1) вычисляет дисперсию каждого макроблока и снижает QP для областей с низкой дисперсией (плоских), повышая его для областей с высокой дисперсией (текстурированных). 20 Мотивация: человеческий глаз чувствителен к бандингу и контурам в гладких участках, но терпим к потере деталей в текстурированных. Алгоритм использует соотношение qscale_new = qscale × variance^C, где C – небольшая отрицательная константа, подобранная экспериментально. 20 Этот режим доступен в x264 с 2009 года и по-прежнему является значением по умолчанию во многих конфигурациях с медленными настройками, поскольку стабильно улучшает воспринимаемое качество без заметного увеличения битрейта.
Macroblock-дерево (опция --mbtree в x264) – более продвинутая версия, отслеживающая, как качество каждого макроблока передаётся во времени через межкадровое предсказание. 21 Блоки, на которые ссылаются множество будущих P- и B-кадров, получают пропорционально больше битов, поскольку их искажение наследуется всеми кадрами, основанными на них. Блоки, на которые редко или вообще не ссылаются (например, правые края движущихся объектов или блоки у границ кадра), получают меньше битов. В результате реализуется «адаптивный сдвиг квантования B-кадров»: в статичных сценах B-кадры имеют QP на 4–6 пунктов выше, чем соседние P-кадры; в динамичных сценах разница почти исчезает. 21 Видимый эффект – более чёткие фоновые элементы и слегка сглаженные быстро движущиеся объекты на переднем плане, что большинство зрителей воспринимает как более естественное изображение.
Psy-RD (--psy-rd и --psy-rdoq в x265, значения по умолчанию – 2.0 и 0.0 соответственно; при этом --psy-rdoq увеличивается до 1.0 в пресетах slow и slower) напрямую изменяет функцию стоимости rate-distortion, заставляя энкодер штрафовать реконструкции, у которых энергия (высокочастотная составляющая) отличается от оригинала. 22 В стандартном RDO два кандидата с одинаковой SSE получают одинаковую стоимость. При использовании Psy-RD побеждает тот, что лучше сохраняет текстуру исходного изображения, даже если его SSE выше. Видимый эффект – сжатое видео сохраняет зерно и плёночную текстуру, а не превращается в гладкий глянцевый пластик, что значительно улучшает воспринимаемое качество на кинематографическом контенте. По умолчанию x265 всегда настроен на максимальное воспринимаемое качество – эти психовизуальные оптимизации включены из коробки. Пользователям, которым нужен максимальный PSNR (например, для бенчмарков или транскода в другой кодек), следует явно отключать эти параметры. 22
Just-noticeable-distortion (JND) и visual-attention-guided квантизация – современные ИИ-решения. Модель JND использует свёрточные нейронные сети (CNN), чтобы по блокам предсказать минимальное искажение, которое заметит средний зритель; модель saliency – как правило, небольшая CNN, обученная на данных eye-tracking, – определяет, на какие области кадра обращают внимание зрители, и увеличивает выделение битов именно в этих зонах. 23 Дипломная работа KTH 2023 года по теме visual-attention-guided адаптивной квантизации для x265 показывает улучшение BD-rate на 3–8% по перцептивным метрикам, таким как VMAF, без ухудшения PSNR. Модели saliency – это область, где современные методы глубокого обучения оказывают наибольшее влияние на качество видео для конечного зрителя, и всё чаще становятся стандартными в облачных сервисах, таких как Bitmovin per-title и AWS Elemental MediaConvert. 17
Ловушка здесь – самая простая из всех четырёх: никогда не бенчмарьте перцептивный энкодер по PSNR. Каждый из четырёх механизмов выше намеренно увеличивает PSNR-искажение в отдельных блоках, потому что сэкономленные биты направляются в другие участки для улучшения воспринимаемого качества. Вендор, тестирующий энкодер по PSNR и сообщающий о небольшой потере, действует правильно; вендор, заявляющий о выигрыше по PSNR, скорее всего отключил перцептивный режим при бенчмарке. Правильные метрики для перцептивных энкодеров – VMAF, SSIMULACRA2 и человеческий MOS, а не PSNR. См. нашу статью Объективные метрики качества о том, почему эти метрики существуют и когда какую использовать.
Как все четыре компонента работают вместе в реальном энкодере
В production-энкодере 2026 года все четыре ML-вставки работают на разных этапах пайплайна и обмениваются данными между собой.
Scene-cut детектор запускается первым – на этапе предварительного анализа (lookahead), до того как энкодер примет какие-либо решения на уровне блоков. Он определяет границы кадров и присваивает каждому новому шоту оценку сложности (complexity-score) на основе анализа движения и текстуры внутри шота. Эта оценка поступает на вход двух последующих систем: битрейтной лесенки по шотам и GOP-структуры, учитывающей сцены.
Partition-модель запускается в начале каждого CTU или superblock в кадре. Она анализирует признаки блока и оценку сложности сцены из lookahead и формирует набор форм разбиения, которые стоит рассмотреть. В SVT-AV1 одна и та же сеть рекурсивно вызывается на каждом уровне разбиения, а SVM завершает поиск, когда режим «None» уже достаточно хорошо описывает блок. 10
Модель выбора режима запускается на каждом листе дерева разбиений. Она ранжирует кандидатов по режимам предсказания (внутренние углы, внешние ссылки, типы преобразований), после чего энкодер выполняет полный RDO для топ-K. Конкретное значение K определяется уровнем пресета: в быстрых пресетах K = 1–2, в медленных – K = 5–6.
Перцептивный квантизатор запускается после принятия решения о режиме, но до фактической выдачи битов и определяет, какой QP-офсет применить к каждому блоку, комбинируя variance-AQ, mbtree, Psy-RD и (в коммерческих энкодерах) saliency. Полученная QP-карта передаётся в управление скоростью, которое корректирует общий битовый бюджет, чтобы поддерживать модель буфера в заданных пределах.
Все четыре вместе превращают энкодер, который иначе тратил бы 100% времени на полный перебор, в энкодер, который тратит, возможно, всего 30% – при стоимости по BD-rate обычно ниже 3%, а зачастую – ниже 1,5%. Это и есть вся история на стороне энкодера за последнее десятилетие: заголовки «AI encoding» 2026 года почти всегда отражают постепенное улучшение одного или нескольких из этих четырёх рычагов.
Где здесь место для hardware-сюжета
Параллельно с программной историей развиваются две отдельные аппаратные линии, которые легко перепутать.
Первая – encoder ASIC, специализированный кремниевый чип, реализующий пайплайн кодирования непосредственно на уровне железа. Argos Video Coding Unit (VCU) от Google – самый яркий публичный пример: каждая карта VCU оснащена двумя Argos ASIC, в каждом из которых по 10 ядер энкодера, а одна машина с 20 VCU заменяет несколько стоек CPU-систем при кодировании VP9. 24 25 Google сообщает о 20–33-кратном росте вычислительной эффективности по сравнению с предыдущей CPU-системой. 24 Первый Argos поддерживал только H.264 и VP9; следующее поколение добавит AV1 и вывод на основе машинного обучения (ML-inference). 26 На стороне коммерческих решений NETINT VPU (Video Processing Units) уже развернуты более чем в 200 000 устройствах и обработали свыше одного триллиона минут видео; одна карта Quadra T2A способна обрабатывать более 320 live-потоков в разрешении 1080p в сервере формата 1RU. 18 Публичные заявления NETINT на 2025 год подтверждают, что следующее поколение VPU получит встроенные функции ИИ-апскейлинга и анализа контента. 27
Интересный вопрос для продуктовых команд – что энкодер-ASIC реально делает с ML-врезками из этой статьи. Ответ: реализует их либо как fixed-function пайплайны, либо как небольшие ML-акселераторы рядом с энкодерными ядрами. Partition decision, mode decision, scene-cut detection и перцептивная квантизация выполняются в кремнии, но используют те же алгоритмы, что и программные энкодеры. ASIC – это не новая парадигма кодирования, а те же алгоритмы в иной реализации, с 20–30-кратным выигрышем по плотности и энергопотреблению. Это преимущество чрезвычайно важно на гипермасштабе – YouTube обрабатывает объём, эквивалентный миллионам CPU-часов в день, – но оно не меняет качественный envelope энкодера.
Вторая нить – ИИ-ассистированный препроцессинг: шумоподавление, моделирование зерна, повышение разрешения, анализ содержимого – работает до энкодера. Это относится к будущей базе знаний AI Video, а не к данной статье, но важно отметить: вендорские заявления часто смешивают эти две линии. Фраза вроде «наш ИИ-энкодер даёт 40% экономии битрейта» требует проверки: искусственный интеллект внутри энкодера выполняет одну из четырёх задач, описанных в статье, или же ИИ на этапе препроцессинга предварительно обрабатывает исходный материал, облегчая работу энкодеру? Оба подхода легитимны, но это принципиально разные продукты с совершенно разными операционными последствиями.
Где здесь Фора Софт
Фора Софт с 2005 года разрабатывает системы видеостриминга, конференц-связи, видеонаблюдения, e-learning, телемедицины, OTT и AR/VR. Четыре ML-решения из этой статьи интегрированы в API каждого современного open-source и коммерческого энкодера, которые мы используем в продуктах наших заказчиков. Мы не создаём собственные partition-модели и не поставляем собственный VPU-кремний. Наша задача – строить системы, которые используют энкодеры: правильно подбирать пресеты, перцептивные режимы, битрейтные профили, CDN и плееры – чтобы машинное обучение внутри энкодера давало измеримый результат по качеству и стоимости для конечного пользователя. Когда клиент приходит с жалобой: «наш энкодер слишком медленный» или «наша битрейтная лесенка слишком дорогая» – первый вопрос, который мы задаём: какой из четырёх ключевых параметров выбран неверно.
Конкретный пример: SVT-AV1 medium против slow
Маленький конкретный пример показывает, как работают четыре рычага в связке. SVT-AV1 поставляется с пресетами от 0 (самый медленный, максимальное качество) до 13 (самый быстрый); пресет -preset 8 примерно соответствует medium в x264, а -preset 4 – slow. Разница между этими двумя пресетами почти полностью сводится к разной конфигурации четырёх рычагов, описанных в этой статье:
- Partition-гейтинг более агрессивен в пресете 8 (больше блоков проходят полную RDO) и менее агрессивен в пресете 4. Порог уверенности partition-нейросети для режима «skip» в пресете 4 ниже.
- Принятие решения по ранжированию оценивает только двух лучших кандидатов в пресете 8 и до пяти – в пресете 4.
- Обнаружение смены сцены использует одинаковый алгоритм в обоих пресетах, но с более длинным lookahead в пресете 4 (оценивается больше кадров перед окончательным решением).
- Перцептивная квантизация включена в обоих пресетах, с более агрессивными настройками variance-AQ и аналога mbtree в пресете 4.
4K-, 60 fps-, 10-минутный энкод Big Buck Bunny при том же VBV-бюджете на типичном серверном CPU работает примерно в 4 раза медленнее на пресете 4, чем на 8, и выдаёт стрим примерно на 6–8% хуже по VMAF. Эти 6–8% – эталонный результат, с которым сравнивают себя любые маркетинговые слайды «ИИ-энкодеров». Вендор, заявляющий «30% экономии битрейта благодаря ИИ» на том же контенте, должен либо реально превосходить SVT-AV1 на slow-пресете (что редко и легко проверяется), либо сравниваться с baseline, который вы не стали бы запускать в продакшене (что типично).
Ключевые тезисы
- В 2026 году ИИ внутри энкодера – это небольшая классическая модель машинного обучения, совместимая со стандартом, которая фильтрует или ранжирует решения.
- Важны четыре решения: деревья разбиений, режимы предсказания, обнаружение сценовых переходов и перцептивная квантизация. Все они уже внедрены в production-энкодеры.
- Модели разбиений приносят наибольший выигрыш: опубликованные данные показывают экономию времени на 30–82% при росте BD-rate на 0,7–3% в VVenC.
- Производственные сети очень компактны: 1–2 скрытых слоя, 16–64 нейрона – в отличие от гигантских трансформеров, используемых в потребительском ИИ.
- Перцептивная квантизация появилась раньше современной волны ИИ: методы variance-AQ, mbtree и Psy-RD работают в x264 и x265 уже более десяти лет.
- Энкодерные ASIC, такие как Google Argos и NETINT VPU, реализуют те же алгоритмы на уровне кремния; это не принципиально новая парадигма кодирования.
- Перцептивные энкодеры всегда тестируются по VMAF или человеческому MOS, но никогда – по PSNR, поскольку PSNR поощряет именно ту стратегию распределения битов, от которой перцептивные энкодеры отказываются.
Что почитать дальше
- Метрики качества: PSNR, SSIM, VMAF – показатели, по которым вы сможете проверить любое утверждение из этой статьи.
- Субъективное тестирование: MOS, BT.500, DSCQS, ACR – как организовать human-тест, подтверждающий эффективность перцептивного энкодера.
- Энкодеры: x264, x265, SVT-AV1, libaom, vvenc – что реально предлагают эти open-source энкодеры.
- AV1: состояние в 2026 – где находятся четыре описанных выше компонента в экосистеме AV1 в этом году.
- Per-title и per-scene encoding – подход, превращающий детекцию сценовых переходов в реальную экономию на битрейтной лестнице.
- Hardware Acceleration: NVENC, VPU, ASIC – продолжение темы Argos / NETINT.
Источники
- Designs and Implementations in Neural Network-based Video Coding (2023), arXiv:2309.05846. <https://arxiv.org/pdf/2309.05846>
- Advanced Neural Network-Based Video Coding Technologies for Intra Prediction and In-Loop Filtering, ACM Transactions on Multimedia Computing, 2025. <https://dl.acm.org/doi/10.1145/3733108>
- Bjøntegaard Delta Bit-rate (BD-rate) definition, ITU-T VCEG-M33, 2001.
- ITU-T Rec. H.265 (V9) (09/2023) High Efficiency Video Coding, Section 6.3. <https://www.itu.int/rec/T-REC-H.265>
- ITU-T Rec. H.266 (V3) (09/2023), Section 7.4 QT-MTT. <https://www.itu.int/rec/T-REC-H.266>
- Machine Learning Based Fast QTMTT Partitioning Strategy for VVenC Encoder, MDPI Electronics 12(6), 2023. <https://www.mdpi.com/2079-9292/12/6/1338>
- ibid. 30,21–82,46% экономии времени против VVenC-якоря при 0,67–3,01% BDBR.
- Adaptive complexity control for AV1 video encoder using machine learning, Springer JRTIP, 2024. <https://link.springer.com/article/10.1007/s11554-024-01463-3>
- Convolutional Neural Network-based Split Prediction for VVC Intra Speedup, IEEE, 2021. <https://ieeexplore.ieee.org/document/9418760>
- SVT-AV1: open-source AV1 encoder and decoder – Netflix Tech Blog. <https://netflixtechblog.com/svt-av1-an-open-source-av1-encoder-and-decoder-ad295d9b5ca2>
- CNN AV1 Intra Encoder documentation, partition prediction. <https://cnn-av1-intra-encoder.readthedocs.io/en/latest/cnn_partition_intra.html>
- ITU-T Rec. H.266 (V3) (09/2023), Section 8.4 Intra prediction modes.
- Adaptive CU Mode Selection in HEVC Intra Prediction: A Deep Learning Approach, CSSP, 2021. <https://dl.acm.org/doi/10.1007/s00034-019-01110-4>
- Strategies for enhancing deep video encoding efficiency using CNN, PMC, 2024. <https://pmc.ncbi.nlm.nih.gov/articles/PMC11706951/>
- x264 Settings – Advanced Encoding Guide. <https://silentaperture.gitlab.io/mdbook-guide/encoding/x264.html>
- Adaptive group-of-pictures and scene change detection methods based on H.264 AVC. <https://www.researchgate.net/publication/3481108>
- What is Per-Title Encoding? Bitmovin. <https://bitmovin.com/per-title-encoding/>
- NETINT SMART VPU Technology – ASIC-based video encoding. <https://netint.com/>
- Optimized shot-based encodes: Now Streaming! Netflix Tech Blog. <https://netflixtechblog.com/optimized-shot-based-encodes-now-streaming-4b9464204830>
- x264 Adaptive Quantization. <https://huyunf.github.io/blogs/2017/12/06/x264_adaptive_quant/>
- A novel macroblock-tree algorithm, J. Garrett-Glaser, 2009. <https://huyunf.github.io/blogs/2017/12/06/x264_slice_type_decision/MBtree%20paper.pdf>
- x265 Command Line Options. <https://x265.readthedocs.io/en/master/cli.html>
- Visual Attention Guided Adaptive Quantization for x265, KTH thesis 2023. <https://kth.diva-portal.org/smash/get/diva2:1788172/FULLTEXT01.pdf>
- Key Lessons from YouTube's ARGOS Encoding ASIC. <https://streaminglearningcenter.com/encoding/asics-vs-software-based-transcoding-an-analysis-of-youtubes-argos-transcoder.html>
- Google is building custom silicon for YouTube video transcoding. <https://www.techspot.com/news/89468-google-building-custom-silicon-youtube-video-transcoding.html>
- Google-developed Argos VCU chip. <https://9to5google.com/2021/04/22/youtube-google-custom-chip/>
- The Era of Specialized Hardware: AI Inference and Video Encoding Shifts, NETINT. <https://netint.com/hardware-video-encoding-specialized-hardware/>