Результаты тестов Intel A380

Рассмотрим как кодирует Intel на современных картах.

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

Относительно недавняя проба платформы N100 показала немногим более хорошую картину. Собрать FFMPEG с поддержкой QSV, чтобы он адекватно кодировал не удалось (неадекватность проявлялась в практически неуправляемом битрейте). Но зато утилита кодирования из SDK давала на удивление стабильные результаты. И качество сжатия видео Н264 удалось оценить.

Сейчас ситуация с дискретной картой и новым кодом приятно удивила целых два раза и один раз «не разочаровала». В кавычках, потому что запустить кодек HEVC так и не удалось. Поэтому будем рассматривать то, что было приятным. Т.е. H264 и AV1.

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

Что именно выбрано в качестве тестовых фрагментов можно найти здесь — https://www.vmetrix.tech/ru/metodologiya/. Параметры кодирования здесь — https://www.vmetrix.tech/ru/encode-parameters-ru/.

Агрегированные метрики BDBR — https://vmetrix.tech:3000/d/ads7nhh/bd-br-aggregated

RD Curves — https://vmetrix.tech:3000/d/adrgpg7/rd-curves

H264

Сравнение сам с собой. Здесь и далее усреднённые значения BDBR VMAF по всем видео (напомню, что отрицательный BDBR это хорошо, положительный — плохо).

Пресеты veryslow vs veryfast. Да, выигрыш есть. В лучшем случае около 1% битрейта — для самых маленьких видео 144p. Для остальных разница ещё меньше.

A380 H264 veryslow vs veryfast, BDBR, VMAF

Не пытайтесь кодировать на низких битрейтах, так как кодек решит всё равно его задрать. Характерная картина на следующем графике. При целевом битрейте 461К для 1080p на выходе в 1.5 больше.

A380 H264 bitrate ratio, 1080

Хотя такая картина проявляется практически у всех железных кодеков.

Сравним с «эталоном», libx264, пресет slow.

H264 QSV veryslow vs lixb264 slow, BDBR, VMAF

В принципе, ничего неожиданного. Проигрыш по битрейту в пределах 7% — 11% по основным размерам кадров. Что, в общем, неплохо.

А что там с NVENC?

Пресет veryslow слегка хуже, чем H264 NVENC p4, т.е. порядка 2% — 5% по основным размерам кадра. Однако для 4К даже есть небольшой выигрыш.

H264 QSV veryslow vs H264 NVENC p4, BDBR, VMAF

Если же сравнивать с самым быстрым пресетом, то выигрыш составит порядка 22% — 25%.

H264 QSV veryslow vs H264 NVENC p1, BDBR, VMAF

С самым качественным p7 — проигрыш до 10%. Но на «ходовых» размерах кадра до 7%. Что, в принципе, неплохо.

H264 QSV veryslow vs H264 NVENC p7, BDBR, VMAF

AV1

Сначала посмотрим насколько он лучше своей же реализации H264.

AV1 QSV veryslow vs H264 QSV veryslow, BDBR, VMAF

А вот и обещанные 50% — только на 4K. А самый большой выигрыш во впечатляющие 83% вы получите на такой «тяжёлой» сцене с множеством двигающихся объектов.

Tears of Steal, action scene

А что там с NVENC?

Сразу хочу уточнить, что данные значения получены при использовании NVENC 9 поколения, т.е. GPU NVidia Blackwell. 8 поколение (Ada) вроде немного хуже. Но насколько именно ещё предстоит выяснить.

Если сравнивать по максимальным пресетам, то QSV понадобится в районе 9% — 13% больше битрейта, чтобы кодировать с таким же качеством как и NVENC.

И завершающий аккорд — сравнение с H264 RK3588 (он не умеет в b-frame’ы), извините…

За кадром осталось сравнение с софтверными кодеками AV1, такими как SVTAV1 и libaom. А также сравнение по скорости кодирования и энергопотреблении. Надеюсь дополнить в скором времени…

Фото аватара
dmitry
http://www.vmetrix.tech

Leave a Reply