FFmpeg 9.0 migliora il supporto hardware e introduce la decodifica delle immagini WebP animate

FFmepg su Arch Linux

FFmpeg continua a essere uno degli strumenti più importanti per la gestione dei contenuti multimediali su Linux, Windows e macOS. Utilizzato quotidianamente da sviluppatori, piattaforme di streaming, software di editing video e numerose applicazioni open source, il progetto compie un ulteriore passo avanti con il rilascio della versione 9.0 “Lei”.

L’aggiornamento introduce funzionalità richieste da tempo dalla comunità, amplia il supporto alle tecnologie moderne per la codifica e la decodifica dei contenuti e migliora le prestazioni grazie a nuove opzioni di accelerazione hardware. Le novità interessano sia chi utilizza FFmpeg dalla riga di comando sia chi integra il framework all’interno di applicazioni professionali.

Accelerazione hardware, HDR e nuove funzionalità video

Tra le principali novità della versione 9.0 spicca il supporto nativo alla decodifica delle immagini WebP animate. Grazie a un nuovo decoder e a un nuovo demuxer, FFmpeg è ora in grado di leggere direttamente questo formato senza ricorrere a strumenti esterni.

L’accelerazione hardware continua a essere uno dei punti di forza del progetto. La nuova versione introduce il supporto APV tramite Vulkan e aggiunge la decodifica ProRes RAW accelerata attraverso VideoToolbox sui sistemi Apple compatibili.

Anche l’elaborazione video beneficia di nuovi strumenti. Il filtro v360_vulkan sfrutta Vulkan per la gestione di video panoramici e contenuti a 360 gradi, riducendo il carico sulla CPU. Gli utenti delle GPU NVIDIA possono invece utilizzare il nuovo filtro transpose_cuda, che permette di ruotare e trasporre i fotogrammi mantenendo l’intero processo direttamente sulla scheda grafica.

Importanti miglioramenti riguardano anche le GPU AMD. Il filtro vf_vpp_amf amplia il supporto ai flussi HDR, mentre il nuovo vf_frc_amf introduce la conversione hardware del frame rate. Inoltre FFmpeg 9.0 aggiunge il supporto ai metadati dinamici SMPTE 2094-50, migliorando la gestione dei moderni contenuti HDR.

Sul fronte dell’intelligenza artificiale viene aggiornato il backend ONNX Runtime, che ora può utilizzare provider di esecuzione GPU per accelerare i filtri basati su reti neurali, offrendo prestazioni superiori nei flussi di lavoro che fanno uso di elaborazione intelligente delle immagini.

Audio, compatibilità e rimozione delle tecnologie obsolete

L’aggiornamento introduce anche diverse novità dedicate all’audio. Una delle più interessanti è il supporto alla decodifica HE-AAC 960, utilizzata da alcune trasmissioni radio digitali DAB+, migliorando la compatibilità con questo tipo di contenuti.

Sul fronte dei contenitori multimediali arriva la possibilità di creare file MP4 contenenti tracce LCEVC (Low Complexity Enhancement Video Coding), una tecnologia che permette di affiancare un livello di miglioramento al flusso video principale mantenendo la compatibilità con i decoder tradizionali.

Tra le aggiunte più particolari compare anche un encoder video dedicato alla console portatile Playdate, accompagnato dal relativo muxer, offrendo agli sviluppatori uno strumento diretto per produrre contenuti compatibili con il dispositivo.

FFmpeg 9.0 introduce inoltre un filtro bitstream per suddividere i flussi Dolby Vision HEVC multilivello, semplificando alcune operazioni nei flussi di produzione video professionali.

Come accade a ogni importante rilascio, vengono eliminate anche componenti non più mantenute. La versione 9.0 rimuove il vecchio decoder CELT indipendente e il parser Ogg/CELT, senza influire sul codec Opus moderno. Scompaiono inoltre le vecchie opzioni NVENC ormai deprecate e termina il supporto alle versioni del NVIDIA Video Codec SDK precedenti alla 11.1.

L’aggiornamento è già disponibile nel codice sorgente del progetto. Le distribuzioni Linux rolling release come ad esempio Arch Linux saranno probabilmente le prime a distribuire FFmpeg 9.0 nei rispettivi repository, mentre le distribuzioni con cicli di rilascio più conservativi potrebbero richiedere tempi più lunghi prima dell’integrazione dei nuovi pacchetti. Abbiamo testato FFmpeg 9.0 su Arch Linux con ambiente desktop KDE Plasma 6.7.

Lascia un commento