Как стать автором
Обновить

Кодеки новой эпохи: HEVC, AV1, VVC и нейросети

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров27K
Всего голосов 43: ↑40 и ↓3+55
Комментарии33

Комментарии 33

У меня некоторое сомнение по поводу ИИ кодеков, которые на ходу должны обрабатывать картинку. Пробовал включать их в играх, картинка становится четче, но при этом какой-то неестественной.

Про что конкретно речь? Могу предположить только использование fsr или dlss

Ну тут еще есть dlss3 которая просто фреймгенератор.

Netflix не может использовать полностью собственный проприетарный кодек, т.к. это лишит его совместимости с браузерами и аппаратными декодерами в мобильных устройствах.

Но Netflix может использовать собственный модифицированный кодер для H.264, варьирующий сжатие отдельных участков кадра на основе их предполагаемого содержимого. Нечто вроде значительно более "умной" версии CRF из x264. Таким образом сохраняется совместимость с декодерами H.264, но визуальное качество картинки на глаз может быть существенно лучше.

Но тогда этот поток можно сохранить в виде файла.

И тут уместно вставить упоминание про Mozilla JPEG, который сжимает картинки в обычный jpeg, но меньшего размера. Как я понял как раз из-за того, что малозначимые участки фотографии сжимаются сильнее. Правда нигде не нашел упоминание, что Mozilla использует нейросети (судя по всему используют относительно простые эвристики).

Если взять ЛЮБОЙ видеопоток (а не только Netflix), закодировать его простым H.265/HEVC или AV1, то даже с максимальными настройками качества материал визуально испортится.

Потому что это кодеки c потерей информации. Это нормально.

Вообще напрашивается многопроходные кодеки с распараллеливанием. Несколько видеокарт могут обработать один и тот же файл для анализа цветов, шумов, градиентов, объектов, лиц и т.д. На выходе получаем информацию об объекте (3D модель, несколько LODов) и окружении (освещение, тени, яркость), а также маппинг на кадры. Второй проход считает анимацию переходов между кадрами, на выходе получаем информацию о всех динамических изменениях. На последнем проходе учим полученную модель рендерить кадры самостоятельно и дообучаем восстанавливать качество до приемлиемого уровня (с одной стороны корректируя исходные параметры модели, с другой стороны зашивая уникальную информацию про кадр). Для стриминга можно дополнительно отсортировать объекты по порядку появления в кадре и подгружать их динамически, но тогда придется аккуратно распиливать модель на поддомены.

Кодеки для сжатия видео — одно из самых очевидных применений Software
2.0, потому что они и сейчас уже практически недоступны для понимания
из-за своей сложности. То есть с использованием нейросетевого «чёрного
ящика» ничего особо не изменится…

Вообще-то их кто-то разрабатывал и писал, как минимум этот кто-то понимает, что там, есть документация и т.п. С новым подходом вообще никто не будет понимать, как оно работает. Как-то это немного пугает. Не в смысле кодеков, а глобально.

Это больше всего пугает в сетях принимающих решения, если доверие к их решениям станет нормой, то это будет выглядеть как-то совсем антиутопично. Система проанализировала вас, почитала опасным и определила под надзор. Почему, мы и сами не знаем, но она не ошибается.

Explainable AI. До тех пор пока он не научился врать.

Врать они учатся в первую очередь. За примером далеко ходить не нужно

Сколько там лет прошло с выхода фильма "особое мнение"?

Сюжет уже не кажется таким уж фантастическим

Захочешь листики рассмотреть поподробней, а не судьба теперь

Ну будет додумывать листики. В среднесрочной перспективе встроят Midjourney в декодер.

Зачем тогда вообще декодер?
Нетфликс тебе отправлять текст "Мстители: конец света"
А мидждорней на твоей стороне рисует тебе фильм. Вот так и сжали весь фильм в 21 байт.

Додумывай сам (бюджетный вариант). С вас 1200 и еще 900 за попкрон

Это называется книга.

Так midjourney тоже весит, не локально ж генерить

Почему не локально?

никто не будет хранить сотни терабайт на компе, уйдут к другому клиенту ... Вспоминаются онлайн игры когда чтобы играть нужно было раз в неделю ждать пока скачается обновление, и произойдет декомпрессия ресурсов

Зачем сотни терабайт хранить? все эти нейросети, запускаемые локально, весят от единиц до десятков гигабайт. Да они уступают наиболее передовым облачным, но тоже очень даже.

Я бы не страдал таким оптимизмом, если для аниме да, а для реалистичности, тут минимум 100 гб данных нужно. Уже не говоря о мощности компьютера для их обработки.

100гб это не много по современным меркам.

Что-то я так и не понял, в чём заключается "прогрессивная технология сжатия". Насколько % удалось уменьшить размер относительно других кодеков?

Проэксперементировал я с проверкой сжатия - взял rav1e и пожал максимально жирный 10 битный 4к bosphorus без указания дополнительных параметров. Финальный размер видео ~24 Мб. Максимально пожатая 8-битная mp4 которую предлагется скачать оттуда - ~28 Мб. То есть примерно на 15% меньше. Заметный профит. Правда время кодирования было довольно долгим.

Хм. Вот rar сжимал лучше, чем zip. И где теперь этот формат?

В списке прочих несвободных алгоритмов.

Чтобы сократить время кодирования, можно взять av1an. Он поддерживает кодеки libaom, rav1e, svt-av1. Av1an разбивает видео на сцены и кодирует сцены параллельно, тем самым задействует все ядра и потоки.

Ндаа, нас ждут старые грабли с "новыми умными" кодеками, которые раньше затрагивали только копиры, а теперь будут "портить видео" и нас ждет восстание машин "ияхудожникиятаквижу" и "джописдоны" (job is done) потому алгоритмы ИИ так порешали;) ИИ цензура так сказать ;))

Интересно, насколько различается скорость кодирования для разных бэкэндов av1, а то в оригинале только один.

Помимо интересной информации в статье ещё впервые встретил выражение "спать в шапку". Интересно это где так говорят? Или это какой-то прямой перевод с английского?

Зарегистрируйтесь на Хабре, чтобы оставить комментарий