Содержание статьи +
- TL;DR
- Почему это важно
- Что такое «ИИ внутри энкодера»
- Дерево разбиения – крупнейший сток compute в современных кодеках
- Mode decision – выбираем, какое предсказание победит
- Распространённая ошибка: думать, что «AI mode decision» – это огромная сеть
- Scene-cut detection – куда поставить I-кадры
- Перцептивная квантизация – самый старый школьный ИИ
- Как все четыре работают вместе в реальном энкодере
- Где сюда вписывается hardware-сюжет
- Где здесь Фора Софт
- Конкретный пример: SVT-AV1 medium против slow
- Ключевые тезисы
- Что почитать дальше
- Источники
TL;DR
Когда в 2026 году говорят «ИИ внутри энкодера», почти никогда не имеют в виду нейрокодек, заменяющий H.264 или AV1. Имеют в виду маленькую быструю модель, прикрученную к классическому энкодеру, чтобы принять одно конкретное решение быстрее или умнее, чем при полном переборе. Четыре места, где эта модель живёт, – дерево разбиения (как поделить кадр на блоки), mode decision (какое предсказание и преобразование выбрать для каждого блока), детектор scene-cut (куда поставить I-кадры) и карта квантизации (сколько бит потратить на каждый блок с учётом того, что заметит и не заметит глаз). Исследования этих четырёх «ML-врезок» с 2018 года – главный драйвер улучшения соотношения «скорость/качество» энкодеров: опубликованные результаты показывают экономию 30–82% времени кодирования против VVenC-якоря при цене 0,7–3,0% BD-rate, а собственное partition-gating SVT-AV1 использует крошечные нейросети с одним–двумя скрытыми слоями и приносит те же выигрыши в production-grade open-source энкодере. Эта статья по порядку разбирает, что каждое из четырёх решений собой представляет, как классический энкодер принимает его сегодня, что меняет ИИ-версия и как читать заявление вендора «AI-powered encoding», не давая себя обмануть.
Почему это важно
Если ваша команда когда-нибудь обсуждала переход с x264 на SVT-AV1, проверяла, действительно ли «AI-энкодер» даёт на 30% меньший битрейт, или прикидывала, окупит ли per-title encoding инженерные усилия – вы спорите именно про четыре решения этой статьи, как бы вы их ни называли. Каждый питч «AI-powered encoder», который вы прочитаете в этом году – от Google Argos ASIC и NETINT VPU до Beamr Cloud, Bitmovin и любого академического спинаута с «neural codec speedup» – построен на этих же четырёх рычагах. Как только вы умеете их называть, вы умеете задавать вопросы, которые отделяют настоящий продукт от презентации.
Статья – для продакт-менеджера, фаундера, video operations lead или engineering-менеджера, которому нужно принимать решения по кодекам, читать вендорские питчи без блефа или уверенно спорить о битрейтных лесенках. Мы начинаем с того места, где классический энкодер тратит большую часть времени – с дерева разбиения, – и движемся к scene-cut и квантизации. В каждом разделе сначала называем классический метод в простых словах, затем показываем, куда встаёт ML-модель, и приводим опубликованные числа, чтобы вы понимали, что реально, а что – слайд.
Что такое «ИИ внутри энкодера»
Фраза «ИИ внутри энкодера» в этой статье означает одну конкретную вещь: модель машинного обучения – чаще всего маленькая свёрточная сеть, gradient-boosted дерево или 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-cut, более качественные карты квантизации.
Различие важно потому, что любой «AI-энкодер» из вендорского питча нужно отнести в одну из двух корзин, прежде чем оценивать. Продукт, который заявляет «30% экономии битрейта с помощью ИИ» и при этом отдаёт стандартный AV1-битстрим, делает одну из четырёх вещей из этой статьи. Продукт, чей битстрим читает только его собственный декодер, – из другого лагеря, и про него надо задавать совсем другие вопросы – прежде всего, кто установит этот декодер на устройство каждого зрителя.
Четыре ML-врезки в классические энкодеры устроены одинаково. Каждая нацелена на одно решение, на которое классический энкодер тратит много compute. Каждая заменяет полный или частичный перебор моделью, предсказывающей ответ за микросекунды. Каждая оценивается по двум осям: сэкономленное время кодирования и BD-rate – короткое от Bjøntegaard Delta Bitrate, стандартного способа выразить «сколько лишних бит мне нужно потратить при том же качестве». 3 Хорошая ML-врезка экономит 30–60% времени при BD-rate-стоимости меньше 2%; отличная экономит больше и стоит меньше.
Дерево разбиения – крупнейший сток compute в современных кодеках
Чтобы понять, почему 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 и compute. Классический ответ – rate-distortion optimisation (RDO): попробовать оба варианта, измерить стоимость в битах и distortion, выбрать победителя. Сделать это рекурсивно на CTU, у которого сотни возможных leaf-форм, – причина, по которой partition-решения занимают 60–80% wall-clock времени внутри современного HEVC, AV1 или VVC энкодера. 6 Сократите это число вдвое – сократите вдвое стоимость всего encode.
Это то место, где ML окупается быстрее всего, и опубликованные числа выразительны. Статья MDPI Electronics 2023 года по VVenC сообщает, что LightGBM-схема быстрого партиционирования экономит от 30,21% до 82,46% времени кодирования в зависимости от пресета при BD-rate-стоимости 0,67–3,01%. 7 Статья 2024 года в Journal of Real-Time Image Processing по аналогичному подходу для libaom-AV1 – LACCO, learning-based AV1 complexity controller – сообщает сопоставимые ускорения на HD и UHD. 8 Это не игрушечные числа из лаборатории; это публикационная основа модулей partition decision, которые поставляются в последних релизах VVenC и референсных AV1-имплементациях.
Механика, без математики, такая. Энкодер извлекает из текущего блока маленький набор признаков – variance, средний градиент, текстурную энергию, решения соседних блоков, magnitude вектора движения – и подаёт классификатору. Классификатор выдаёт одно число на каждый partition mode: вероятность того, что этот mode выиграет RDO-соревнование. Энкодер либо пропускает моды с вероятностью ниже порога, либо запускает полный RDO только на двух-трёх лучших кандидатах. Непросмотренные моды вырезаются из дерева поиска целиком, и энкодер работает гораздо быстрее.
Сегодня в production-энкодерах доминируют два семейства моделей. Свёрточные нейронные сети (CNN) используются, когда энкодер может позволить себе посмотреть на сырые пиксели блока – маленькая CNN с одним-двумя свёрточными слоями читает 64×64 или 128×128 патч и сразу выдаёт partition-предсказание. 9 CNN дают максимальную точность, но стоят дороже всего на вызов, поэтому их держат в самых медленных, самых качественных пресетах. Gradient-boosted деревья вроде LightGBM и XGBoost используются везде остальное – они читают ручной feature-вектор и работают за десятки наносекунд, достаточно быстро для нескольких вызовов на CTU без доминирования в runtime энкодера. 7 SVM и маленькие полносвязные сети с одним-двумя скрытыми слоями и 16–64 узлами в слое – третий вариант; именно такую структуру SVT-AV1 поставляет в production, где сеть вызывается перед каждым partition mode для решения, можно ли его пропустить, а SVM смотрит результат «None»-режима, чтобы решить, останавливать ли весь partition-поиск целиком. 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-предсказание для двух reference-списков. Наивный подсчёт: 1 + 4 + 16 + 64 = 85 блоков, в каждом ~30 + 1 модов, итого примерно 2 635 RDO-оценок на CTU. На 4K-кадре HEVC (3840 × 2160) ÷ (64 × 64) ≈ 2 025 CTU, так что один кадр на самом медленном пресете – порядка 5,3 миллиона RDO-оценок. Типичная fast-partition ML-модель сокращает счёт на 60%, оставляя примерно 2,1 миллиона – а при 60 fps на 10-минутном клипе сэкономленные оценки уходят в триллионы. Это и есть весь performance-сюжет.
Подвох, на котором ловится каждая команда энкодеров, – training data. Partition-модель, обученная на одном распределении контента – например, на анимации, спорте или talking-head конференциях, – будет плохо переноситься на контент, на котором её не учили. В production это смягчают, обучая на намеренно разнообразном корпусе, который покрывает screen content, анимацию, live-спорт, фикшн и UGC-камерные съёмки, и держа модель консервативной: модель, ошибающаяся в сторону «не пропускать», теряет скорость, но не теряет качество. Модель, ошибающаяся в сторону «пропускать», теряет и то, и другое. Сети SVT-AV1 обучены на часах кураторского контента из внутреннего пула Netflix – одна из причин, по которой этот энкодер так хорошо обобщает. 10 Если вендор заявляет «20% ускорение энкодера без потери качества» и не может сказать, на каком контенте обучалась модель, вы только что узнали кое-что полезное про вендора.
Mode decision – выбираем, какое предсказание победит
Когда 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-in-bits против distortion, взять победителя) – и снова дорого.
ML-врезки здесь похожи на partition-модели, с одним важным архитектурным выбором: gating против ranking. Gating-модель принимает признаки блока и выдаёт по каждому кандидату вероятность того, что он победит; моды ниже порога отбрасываются. Ranking-модель принимает те же признаки и выдаёт отсортированный список топ-K самых вероятных победителей; энкодер запускает полный RDO только на топ-K. На практике почти каждая production-deployment использует ranking, потому что у gating длинный хвост редких, но дорогих ошибок: когда истинный победитель попадает в отброшенное множество, итоговый блок плохо предсказан и BD-rate-стоимость по этому блоку резко растёт. Ranking позволяет энкодеру ограничить K тремя или пятью, принять небольшую постоянную стоимость на блок и всё ещё забрать больше 95% ускорения. 13
Опубликованные числа снова в том же диапазоне, что и для partition. Статья 2021 года из Circuits, Systems, and Signal Processing по Adaptive CU Mode Selection in HEVC Intra Prediction с deep-learning подходом сообщает сокращение времени энкодера до 66,89% при потере BD-rate 1,31% относительно state-of-the-art классической базовой линии в HEVC на самом медленном пресете. 13 PMC-обзор 2024 года по CNN-подходам к intra-prediction в HEVC и VVC резюмирует типичные результаты в коридоре 40–70% экономии времени и 0,5–2,5% потери BD-rate в зависимости от разрешения и контента. 14
Полезный паттерн из литературы по mode decision – early-exit cascading. Энкодер сначала запускает дешёвую классическую эвристику и обращается к ML-модели только при низкой уверенности эвристики. Для блоков, где variance и motion оба малы, planar или DC intra-mode почти всегда верны, и энкодер берёт их сразу. Для блоков, где градиент сильный и направленный, энкодер проверяет доминирующий угол плюс соседние и останавливается. ML-модель резервируется для неоднозначной середины – блоков, где классическая эвристика не может выбрать чёткого победителя и энкодер иначе пришлось бы откатывать на полный RDO. Этот паттерн объясняет, почему среднее ускорение от ML-врезки гораздо больше, чем сама стоимость модели: большинство блоков вообще не вызывает модель.
Распространённая ошибка: думать, что «AI mode decision» – это огромная сеть
На стыке partition и mode decision сидит конкретная ловушка, в которую регулярно попадают команды, новые в теме. Они читают питч «AI-encoder», считают ИИ-частью трансформер на сотню миллионов параметров и либо отвергают технологию как слишком тяжёлую для production, либо ожидают трансформации.
Ни одна реакция не верна. Сети, поставляемые в production-энкодерах, крошечны по современным ML-меркам: типично от тысяч до десятков тысяч параметров, 1–2 скрытых слоя, горсть входов. Partition-сети SVT-AV1 спокойно помещаются в кэш CPU. 10 Это не «AI» в потребительском смысле generative-моделей; это классические pattern-классификаторы, обученные один раз офлайн на большом корпусе контента и вызываемые миллионы раз в секунду в production. Они не тратят значимого дополнительного CPU или памяти в runtime и не требуют GPU. Вендор, говорящий, что его энкодеру нужна H100, либо использует ML принципиально в другом месте (например, для апскейла или денойза до энкодера), либо построил что-то, что не отмасштабируется.
Поэтому правильный тест на заявление «AI inside the encoder» такой: какое именно решение принимает модель, насколько она велика и какой BD-rate-трейд в их собственных опубликованных числах? Если вендор не может конкретно ответить на эти три вопроса, ИИ в питче – это маркетинг.
Scene-cut detection – куда поставить I-кадры
Третье место ИИ в энкодере – scene-cut detection, она же scene change detection или scenecut. Цель – поставить свежий I-кадр (кадр, не зависящий от других кадров при декодировании) в каждом месте, где контент меняется настолько, что P- или B-кадр не сможет предсказать новый контент из старого. Поставьте правильно – и энкодер эффективно тратит биты, а поток поддерживает чистый seek; поставьте неправильно – и вы либо тратите слишком много бит (I-кадр посреди статичной сцены), либо слишком мало (нет I-кадра на резком монтажном стыке, и несколько следующих кадров плохо предсказаны и плохо выглядят). 15
Классический алгоритм в x264, x265 и libaom – простая frame-difference эвристика. Для каждого кадра в окне lookahead энкодер считает метрику (обычно сумма абсолютных разностей между текущим и предыдущим кадром, взвешенная low-pass-фильтрованной версией кадра, чтобы подавить шум) и сравнивает с порогом. 15 В x264 порог выставляется как --scenecut и по умолчанию равен 40; значения выше 40 делают энкодер более охотным объявить cut и поставить I-кадр, значение 0 отключает детектор. Та же логика с чуть другими константами работает в x265 и SVT-AV1.
Классическая эвристика работает большую часть времени, и она достаточно быстра, чтобы экономия от замены ML-моделью в абсолютных числах была меньше, чем у partition или mode decision. Но ошибки этой эвристики систематические и дорогие. Она недосчитывает или пересчитывает cut в трёх местах, в которых человек никогда бы не ошибся: fades и dissolves (медленные переходы, где разности соседних кадров малы, но контент действительно меняется), быстрые панорамы и высокое движение (где разности кадров огромны, но сцена на самом деле не сменилась) и контент с намеренными резкими переходами внутри одной сцены – вспышки, молнии, стробоскопы – где классический детектор вставляет I-кадр на единственный яркий кадр и сразу нуждается в ещё одном, когда сцена возвращается в норму. 15
ML scene-cut детектор заменяет жёстко закодированный порог маленьким классификатором, обученным на размеченных cuts. Классификатор видит ту же frame-difference метрику плюс несколько других – расстояние цветовой гистограммы, расстояние luminance-гистограммы, статистики векторов движения, плотность краёв, тот же low-pass-фильтрованный residual, который использует классический детектор, – и выдаёт вероятность того, что эта позиция – настоящая граница сцены. Адаптивные GOP-алгоритмы используют эту вероятность, чтобы решить, открывать ли новый GOP, продлевать ли текущий или вставить open-GOP-границу, которая дешевле закрытого I-кадра. 16
Production-deployments разделены. Open-source энкодеры – x264, x265, SVT-AV1, libaom – по-прежнему поставляют классические детекторы с вручную настроенными порогами, отчасти потому, что BD-rate-выигрыш от ML-детектора скромный (исследования показывают 1–3% на длинном контенте с большим количеством cuts, меньше – на непрерывном), отчасти потому, что переобучать и поставлять модель – больше operational-нагрузки, чем подкручивать константу. Коммерческие cloud-энкодеры – Bitmovin, AWS Elemental, Beamr, NETINT – всё чаще используют ML scene-cut как часть более широких content-aware пайплайнов, где выход детектора также управляет per-shot битрейтными лесенками и адаптивной длиной lookahead. 17 18 Именно там ML scene-cut окупается – не в BD-rate отдельного GOP, а в том, что он питает downstream per-shot энкодер, делающий свою rate-distortion оптимизацию на каждом сегменте. 19
Перцептивная квантизация – самый старый школьный ИИ
Четвёртый и старейший участник этого семейства – перцептивная квантизация, часть энкодера, решающая, сколько бит потратить на каждый блок, предсказывая, где human visual system заметит и не заметит потери. «AI» здесь старше текущей ML-волны на двадцать лет, но базовая логика та же: модель восприятия, обученная на данных, используется в runtime для перераспределения бит внутри кадра.
Классический квантизатор – это одно число на slice – QP, или quantization parameter, контролирующий, насколько агрессивно энкодер округляет коэффициенты преобразования в каждом блоке этого slice. 20 Перцептивный квантизатор корректирует QP поблочно: тратит больше бит (более низкий QP) на блоки, где глаз заметит потерю, и экономит биты (более высокий QP) на блоках, где не заметит. Сэкономленные внутри кадра биты можно перебросить в более сложные области, общий битрейт остаётся тем же, а воспринимаемое качество растёт.
В современных open-source энкодерах это реализовано четырьмя механизмами, и стоит знать все четыре, потому что любой питч «perceptual encoding» сидит на одном из них.
Variance-based adaptive quantization (исходный x264 aq-mode 1, портированный в x265 и SVT-AV1) считает variance каждого macroblock и понижает QP для low-variance (плоских) областей, поднимая для high-variance (текстурированных). 20 Мотивация: глаз чувствителен к бандингу и контурам в гладких областях, но толерантен к потере деталей в текстурированных. Используется соотношение qscale_new = qscale × variance^C, где C – небольшая отрицательная константа, подобранная экспериментально. 20 Режим поставляется в x264 с 2009 года и остаётся дефолтом в большинстве slow-preset конфигураций, потому что стабильно улучшает воспринимаемое качество без измеримой стоимости в битрейте.
Macroblock-tree (опция --mbtree в x264) – более изощрённая версия, отслеживающая, как качество каждого macroblock распространяется вперёд во времени через inter-prediction. 21 Блоки, на которые ссылаются многие будущие P- и B-кадры, получают пропорционально больше бит, потому что их distortion унаследует всё, что предсказывается от них. Блоки, на которые ссылаются редко или вообще не ссылаются (правые края движущихся объектов, блоки на краю сцены), получают пропорционально меньше. Результат – «adaptive B-frame quantizer offset»: в статичных сценах B-кадры получают QP на 4–6 пунктов выше соседних P-кадров; в быстрых сценах разница падает почти до нуля. 21 Видимый эффект – более чёткие задние планы и чуть более мягкий быстродвижущийся передний, что большинство зрителей предпочитает.
Psy-RD (--psy-rd и --psy-rdoq в x265, дефолты 2.0 и 0.0 соответственно, при этом --psy-rdoq поднимается до 1.0 в пресетах slow и slower) напрямую модифицирует cost-функцию rate-distortion так, чтобы энкодер штрафовал реконструкции, чья energy (high-frequency-составляющая) отличается от источника. 22 В обычном RDO два кандидата с одинаковой SSE получают одинаковую стоимость. С Psy-RD выигрывает кандидат, лучше сохраняющий текстуру источника, даже ценой более высокой SSE. Видимый пользователю эффект – сжатое видео сохраняет зерно и плёночную текстуру вместо того, чтобы сглаживаться в глянцевый пластик, что драматически улучшает воспринимаемое качество на cinematic-контенте. По умолчанию x265 всегда настраивается на максимальное воспринимаемое качество, то есть эти psycho-visual оптимизации включены по умолчанию; пользователи, которым нужен максимальный PSNR (для бенчмарков или транскода в другой кодек), должны явно их отключать. 22
Just-noticeable-distortion (JND) и visual-attention-guided квантизация – современные ИИ-добавки. JND-модель использует CNN, чтобы предсказать поблочно наименьшее distortion, которое заметит средний зритель; saliency-модель – обычно маленькая CNN, обученная на eye-tracking данных, – предсказывает, в какие области кадра зрители реально смотрят, и поднимает там bit allocation. 23 Дипломная работа KTH 2023 года про visual-attention-guided adaptive quantization для x265 сообщает улучшения BD-rate порядка 3–8% по перцептивным метрикам вроде VMAF без дополнительных потерь по PSNR. Saliency-модели – то место, где современное deep learning сильнее всего влияет на выход энкодера для конечного зрителя, и они всё чаще становятся дефолтом в облачных предложениях вроде Bitmovin per-title и AWS Elemental MediaConvert. 17
Ловушка здесь – самая простая из всех четырёх: никогда не бенчмарьте перцептивный энкодер по PSNR. Каждый из четырёх механизмов выше намеренно поднимает PSNR-distortion в части блоков, потому что сэкономленные там биты тратятся в другом месте на улучшение воспринимаемого качества. Вендор, прогоняющий энкодер по PSNR и сообщающий о небольшой потере, делает всё правильно; вендор, сообщающий о выигрыше по PSNR, скорее всего отключил перцептивный режим для бенчмарка. Правильные метрики для перцептивных энкодеров – VMAF, SSIMULACRA2 и человеческий MOS, а не PSNR. См. нашу статью Объективные метрики качества о том, почему эти метрики существуют и когда какую использовать.
Как все четыре работают вместе в реальном энкодере
В production-энкодере 2026 года все четыре ML-врезки работают на разных точках пайплайна и питают друг друга.
Scene-cut детектор запускается первым, в lookahead-проходе, до того как энкодер закоммитит хоть какое-то блок-уровневое решение. Он отмечает границы кадров и присваивает каждому новому шоту complexity-score на основе анализа motion и texture внутри шота. Score становится входом для двух downstream-систем: per-shot битрейтной лесенки и scene-aware GOP-структуры.
Partition-модель запускается следующей, в начале каждого CTU или superblock в кадре. Она читает признаки блока плюс scene-complexity score из lookahead и выдаёт множество partition-форм, которые стоит исследовать. В SVT-AV1 одна и та же сеть вызывается рекурсивно на каждом split-уровне, и SVM закрывает весь поиск, когда «None»-режим уже хорошо объясняет блок. 10
Mode-decision модель запускается на каждом листе partition-дерева. Она ранжирует кандидатов prediction-mode (intra-углы, inter-ссылки, типы преобразований), и энкодер запускает полный RDO на топ-K. Конкретное K – preset-уровневое решение: в fast-пресетах K = 1–2, в slow-пресетах K = 5–6.
Перцептивный квантизатор запускается после mode decision, но до фактической эмиссии бит, и решает, какой QP-offset применить к каждому блоку, миксуя variance-AQ, mbtree, Psy-RD и (в коммерческих энкодерах) saliency. QP-карта возвращается в rate control, который корректирует общий бит-бюджет, чтобы держать buffer-модель в цели.
Все четыре вместе превращают энкодер, который иначе тратил бы 100% времени на полный поиск, в энкодер, который тратит, может быть, 30% – при BD-rate-стоимости обычно ниже 3%, часто ниже 1,5%. Это и есть вся encoder-side история последнего десятилетия; заголовки «AI encoding» 2026 года – почти всегда инкрементальное улучшение одного или нескольких из этих четырёх рычагов.
Где сюда вписывается hardware-сюжет
Параллельно с программной историей идут две отдельные hardware-нити, и их легко перепутать.
Первая – encoder ASIC, специально спроектированный кремний, выполняющий пайплайн энкодинга прямо в железе. Argos Video Coding Unit (VCU) от Google – самый явный публичный пример: каждая VCU-карта несёт два Argos ASIC, в каждом 10 encoder-ядер, а одна 20-VCU-машина заменяет несколько стоек CPU-only-систем при VP9-кодировании. 24 25 Google сообщает о 20–33-кратном улучшении compute-эффективности относительно предыдущей CPU-системы. 24 Первый Argos поставлялся только с H.264 и VP9; следующее поколение добавляет AV1 и ML-inference. 26 На стороне merchant silicon NETINT VPU (Video Processing Units) поставили в production более 200 000 устройств и закодировали более 1 триллиона минут видео; одна карта Quadra T2A обрабатывает 320+ live 1080p-потоков в 1RU-сервере. 18 Публичные заявления NETINT 2025 года подтверждают, что следующее поколение VPU добавляет on-chip AI upscaling и content analysis. 27
Интересный для продуктовых команд вопрос – что энкодер-ASIC реально делает с ML-врезками из этой статьи. Ответ: реализует их либо как fixed-function пайплайны, либо как маленькие ML-акселераторы рядом с энкодер-ядрами. Partition decision, mode decision, scene-cut detection и перцептивная квантизация работают в кремнии, но реализуют те же алгоритмы, что и софт-энкодеры. ASIC – не другая парадигма кодирования; это те же алгоритмы в другой упаковке с 20–30-кратным преимуществом по плотности и энергии. Это преимущество огромно важно на гипермасштабе – YouTube обрабатывает эквивалент миллионов CPU-часов в день, – но оно не меняет качественный envelope энкодера.
Вторая нить – AI-assisted pre-processing: денойз, моделирование зерна, super-resolution, content analysis, – работающий до энкодера. Это для будущей базы знаний AI Video, не для этой статьи, но стоит флаговать, потому что вендорские питчи часто мешают эти две нити. Заявление вроде «наш ИИ-энкодер даёт 40% экономии битрейта» нужно проверять: ИИ внутри энкодера делает одну из четырёх вещей из этой статьи или ИИ в препроцессоре чистит источник, чтобы энкодеру было проще? Оба варианта легитимны, но это очень разные продукты с очень разными operational-импликациями.
Где здесь Фора Софт
Фора Софт с 2005 года строит системы видеостриминга, конференц-связи, видеонаблюдения, e-learning, телемедицины, OTT и AR/VR. Четыре ML-врезки из этой статьи живут под API-поверхностью каждого современного open-source и коммерческого энкодера, которые мы интегрируем в продукты заказчиков. Мы не обучаем собственные partition-модели и не поставляем свой VPU-кремний. Мы строим системы, которые используют энкодеры – выбираем правильный пресет, перцептивный режим, битрейтную лесенку, CDN и плеер, – чтобы ML внутри энкодера превратился в измеримый результат по качеству и стоимости для конечного пользователя. Когда заказчик приходит с «наш энкодер слишком медленный» или «наша битрейтная лесенка слишком дорогая», первый вопрос – какой из четырёх рычагов выше выставлен неправильно.
Конкретный пример: SVT-AV1 medium против slow
Маленький конкретный пример показывает, как четыре рычага комбинируются. SVT-AV1 поставляется с пресетами от 0 (самый медленный, максимальное качество) до 13 (самый быстрый); пресет -preset 8 – приблизительный аналог medium в x264, а -preset 4 – приблизительный slow. Разница между двумя пресетами почти полностью – разная конфигурация четырёх рычагов из этой статьи:
- Partition-gating агрессивнее в пресете 8 (больше блоков пропускают полный RDO) и менее агрессивно в пресете 4. Порог уверенности partition-CNN для «skip» в пресете 4 ниже.
- Ranking mode decision оценивает только топ-2 кандидата в пресете 8 и топ-5 в пресете 4.
- Scene-cut detection использует один и тот же алгоритм в обоих пресетах, но с более длинным lookahead в пресете 4 (больше кадров оценивается перед коммитом).
- Перцептивная квантизация включена в обоих, с более агрессивными настройками variance-AQ и mbtree-эквивалента в пресете 4.
4K-, 60 fps-, 10-минутный энкод Big Buck Bunny при том же VBV-бюджете на типичном серверном CPU работает примерно в 4 раза медленнее на пресете 4, чем на 8, и выдаёт стрим примерно на 6–8% меньше при том же VMAF. Эти 6–8% – заголовочный результат, с которым сравнивает себя любой маркетинговый слайд «AI-энкодера». Вендор, заявляющий «30% экономии битрейта благодаря ИИ» на том же контенте, должен либо реально выдавать что-то лучше, чем SVT-AV1 на slow-пресете (редко, и легко проверяется), либо сравниваться с baseline, который вы не стали бы запускать в production (типично).
Ключевые тезисы
- ИИ внутри энкодера в 2026 году – это маленькая классическая ML-модель в стандарт-совместимом энкодере, пропускающая или ранжирующая решения.
- Четыре решения важны: partition-деревья, prediction-моды, scene-cut, перцептивная квантизация. Все четыре поставляются в production-энкодерах.
- Partition-модели – самый большой выигрыш; опубликованные числа показывают 30–82% экономии времени при 0,7–3% BD-rate в VVenC.
- Production-сети крошечны: 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-test, валидирующий перцептивный энкодер.
- Энкодеры: x264, x265, SVT-AV1, libaom, vvenc – что реально поставляет каждый open-source энкодер.
- AV1: состояние в 2026 – где четыре рычага выше сидят в экосистеме AV1 этого года.
- Per-title и per-scene encoding – система, превращающая scene-cut detection в экономию на битрейтной лесенке.
- 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/>