FFmpeg 8.0 „Huffman“: нови функции, Vulkan кодеци и подобрения в производителността

ffmpeg_logo

След почти година на разработка и с няколко забавяния произтичащи от модернизацията на неговата инфраструктура, стана известен el Издаване на новата версия на FFmpeg 8.0 „Huffman“, една от най-актуалните версии на известния мултимедиен пакет.

Новата версия не само въвежда големи технически подобрения, но и укрепва инфраструктурата си за разработка с внедряването на нов Forge на code.ffmpeg.org, базиран на Forgejo, в допълнение към пълна актуализация на сървърите за пощенски списъци.

Основни нови функции на FFmpeg 8.0 „Huffman“

Едно от най-забележителните подобрения във FFmpeg 8.0 е... вграждане на кодеци, базирани на графичния API на Vulkan 1.3, които използват изчислителни шейдъри за превъзходна производителност. Благодарение на тази технология,Обхват на кодиране и декодиране на FFV1 и декодиране на ProRes RAW нови висоти на производителност чрез паралелизиране на операциите.

Разработчиците работят и върху Внедряване на Vulkan за ProRes и VC-2, в момента е във фаза на тестване. Освен това, Vulkan се използва за хардуерно ускорение за декодиране на VP9, ​​VVC (VAAPI) и H.264. (OpenHarmony), както и в AV1 и H.264 кодиране.

Нови декодери и енкодери

Друго от подобренията, които тази нова версия на FFmpeg 8.0 представя, е... разширена съвместимост с нови формати и между нови декодери са APV (Advanced Professional Video), ProRes RAW, RealVideo 6.0, Sanyo LD-ADPCM, Xbox ADPCM IMA и G.728. В допълнение, енкодер за APV, поддържа се от библиотеката libopenapv.

El VVC (H.266) декодерът вече поддържа разширения като IBC (Копиране между блокове), SSC (Кодиране на екранно съдържание), ЗАКОН (Адаптивна трансформация на цветовете) и режим на палитра. Добавена е и VAAPI-базирана версия на декодера, както и възможността за използване на VVC вътре в Matroska контейнери.

Друг акцент е кодиране на алфа канал в libx265, поддръжка за анимиран JPEG XL файл с помощта на libjxl и подобрена обработка на многоканално аудио и видео в FLV v2.

Оптимизация и нови функции

El Общата производителност също се подобрява благодарение на Оптимизации, базирани на AVX-512, което значително ускорява определени операции по декодиране. Подобрението е поразително: новият код постига ускорение между 23 и 28 пъти по-бързо в сравнение с основната C версия, което представлява едно от най-забележителните увеличения на производителността в скорошната история на този проект.

Работата беше ръководена от Никлас Хаас, който внедри AVX-512 версията на филтъра vf_bwdif. Благодарение на това подобрение, потребителите, обработващи видео на съвременни процесори Intel и AMD с поддръжка на AVX-512, ще видят значително намалено време за рендиране и конвертиране на преплетено съдържание.

В конкретни числа, Вариантът bwdif8_avx512 е 23.28 пъти по-бърз, докато bwdif10_avx512 постига ускорение от 28,27 пъти спрямо базовата линия в C. Дори в сравнение с предишната оптимизирана версия с AVX2, новият код почти удвоява производителността.

В раздел филтри, включително нови функции като Whisper, който интегрираавтоматично разпознаване на реч с невронни мрежи, разпознаване на цветове за алфа диапазони, pad_cuda за добавяне на допълване с CUDA и scale_d3d11, което ви позволява да мащабирате видеоклипове, използвайки Direct3D 11.

Почистване и модернизация на проекта

La Версия 8.0 също така бележи края на няколко технологии, считани за остарели. Поддръжката за версии на OpenSSL преди 1.1.0 е премахната, асемблерът yasm е заменен с nasm, а енкодерите, базирани на OpenMAX, са официално отхвърлени. Освен това, проверката на TLS сертификати вече е активирана по подразбиране, което е основна промяна в сигурността.

Накрая за тези, които се интересуват да знаят повече за това за тази нова версия можете да проверите пълния дневник на промените в тази връзка.

Изтеглете и вземете FFmpeg 8.0

Накрая, pЗа тези, които искат да инсталират или актуализират FFmpeg 8.0 Трябва да знаете, че този пакет се намира в повечето Linux дистрибуции или, ако предпочитате, можете да изтеглите изходния му код за компилация. от линка по-долу.

И за да извършите инсталацията от изходния код, е достатъчно да изпълните вече известния скрипт:

./configure make make install

За тези, които са потребители на Ubuntu, Debian или друга производна на тези дистрибуции, просто отворете терминал и изпълнете следната команда:

sudo apt install ffmpeg