Dopo dieci mesi di sviluppo, è disponibile il pacchetto multimediale FFmpeg 4.4, che include un insieme di applicazioni e una raccolta di librerie per operazioni su vari formati multimediali (registrazione, conversione e decodifica di formati audio e video). Il pacchetto è distribuito sotto le licenze LGPL e GPL, e lo sviluppo di FFmpeg procede insieme al progetto MPlayer.
Le modifiche aggiunte a FFmpeg 4.4 includono:
- È stata implementata la possibilità di utilizzare l'API VDPAU (Video Decode and Presentation) per l'accelerazione hardware della decodifica video nei formati HEVC/H.265 (10/12bit) e VP9 (10/12bit).
- È stata garantita la decodifica video nel formato AV1 utilizzando i motori di accelerazione hardware NVIDIA NVDEC e Intel QSV (Quick Sync Video), così come tramite le API DXVA2/D3D11VA.
- È stata aggiunta la possibilità di codificare AV1 in modalità monocromatica, utilizzando la libreria libaom (è richiesta almeno la versione 2.0.1).
- È stata implementata la codifica video nel formato AV1 utilizzando il codificatore SVT-AV1 (Scalable Video Technology AV1), che sfrutta i meccanismi di parallelizzazione hardware presenti nelle moderne CPU Intel.
- È stato aggiunto un dispositivo per l'uscita tramite il framework AudioToolbox.
- È stata aggiunta la supporto per il protocollo 'gophers' (gopher su TLS).
- È stata aggiunta la supporto per il protocollo RIST (Reliable Internet Stream Transport), utilizzando librist.
- È stata rimossa la supporto al codificatore basato su libwavpack.
- Sono stati aggiunti nuovi decodificatori: AV1 (con accelerazione hardware per la decodifica), AV1 (tramite VAAPI), AVS3 (tramite libuavs3d), Cintel RAW, PhotoCD, PGX, IPU, MobiClip Video, MobiClip FastAudio, ADPCM IMA MOFLEX, Argonaut Games Video, MSP v2 (Microsoft Paint), Simbiosis IMX, Digital Pictures SGA.
- Sono stati aggiunti nuovi codificatori: RPZA, PFM, Cineform HD, OpenEXR, SpeedHQ, ADPCM IMA Ubisoft APM, ADPCM Argonaut Games, High Voltage Software ADPCM, ADPCM IMA AMV, TTML (sottotitoli).
- Sono stati aggiunti i multiplexer di contenitore multimediale: AMV, Rayman 2 APM, ASF (Argonaut Games), TTML (sottotitoli), LEGO Racers ALP (.tun e .pcm).
- Sono stati aggiunti i demultiplexer di contenitore multimediale: AV1 (streams a bassa latenza), ACE, AVS3, MacCaption, MOFLEX, MODS, MCA, SVS, BRP (Argonaut Games), DAT, aax, IPU, xbm_pipe, binka, Simbiosis IMX, Digital Pictures SGA, MSP v2 (Microsoft Paint).
- Sono stati aggiunti nuovi parsers: IPU, Dolby E, CRI, XBM.
- Nuovi filtri:
- chromanr — riduce il rumore di colore nel video.
- afreqshift e aphaseshift — effettuano uno spostamento della frequenza e della fase del suono.
- adenorm — aggiunge rumore a un livello specificato.
- speechnorm — esegue la normalizzazione della voce.
- asupercut — elimina le frequenze superiori a 20 kHz dal suono.
- asubcut — elimina le frequenze del subwoofer.
- asuperpass e asuperstop — realizzazione di filtri passa-banda di Butterworth.
- shufflepixels — riorganizzazione dei pixel nei frame video.
- tmidequalizer — applicazione dell'effetto di equalizzazione temporale video (Equalizzazione Temporale Mediata).
- estdif — eliminazione dell'interlacing utilizzando l'algoritmo Edge Slope Tracing.
- epx — filtro di ingrandimento per la creazione di grafica pixelata.
- shear — trasformazione di shear nel video.
- kirsch — applicazione dell'operatore Kirsch al video.
- colortemperature — regolazione della temperatura di colore nel video.
- colorcontrast — regolazione del contrasto di colore tra i componenti RGB per il video.
- colorcorrect — regolazione del bilanciamento del bianco per il video.
- colorize — sovrapposizione di colore sul video.
- exposure — regolazione del livello di esposizione per il video.
- monochrome — conversione del video a colori in scala di grigi.
- aexciter — generazione di componenti sonore ad alta frequenza, assenti nel segnale originale.
- vif e msad — determinazione dei coefficienti VIF (Visual Information Fidelity) e MSAD (Mean Sum of Absolute Differences) per valutare le differenze tra due video.
- identity — determinazione del livello di differenze tra due video.
- setts — imposta PTS (presentation time stamp) e DTS (decoding time stamp) nei pacchetti (bitstream).
Fonte: opennet.ru
