Après dix mois de développement, le pack multimédia FFmpeg 4.4 est désormais disponible, comprenant un ensemble d'applications et une collection de bibliothèques pour des opérations sur divers formats multimédias (enregistrement, conversion et décodage de formats audio et vidéo). Le pack est distribué sous les licences LGPL et GPL, et le développement de FFmpeg se fait en parallèle avec le projet MPlayer.
Parmi les changements apportés dans FFmpeg 4.4, on peut noter :
- La possibilité d'utiliser l'API VDPAU (Video Decode and Presentation) pour l'accélération matérielle du décodage vidéo dans les formats HEVC/H.265 (10/12 bits) et VP9 (10/12 bits).
- La prise en charge du décodage vidéo en format AV1 à l'aide des moteurs d'accélération matérielle NVIDIA NVDEC et Intel QSV (Quick Sync Video), ainsi qu'avec l'API DXVA2/D3D11VA.
- Ajout de la possibilité d'encoder en AV1 en mode monochrome, utilisant la bibliothèque libaom (version 2.0.1 minimum requise).
- Mise en œuvre de l'encodage vidéo en AV1 avec l'encodeur SVT-AV1 (Scalable Video Technology AV1), qui utilise les capacités de parallélisation matérielle présentes dans les processeurs Intel modernes.
- Ajout d'un périphérique de sortie via le framework AudioToolbox.
- Ajout de la prise en charge du protocole « gophers » (gopher sur TLS).
- Ajout de la prise en charge du protocole RIST (Reliable Internet Stream Transport), utilisant librist.
- Suppression de la prise en charge de l'encodeur basé sur libwavpack.
- Ajout de nouveaux décodeurs : AV1 (avec décodage matériel), AV1 (via VAAPI), AVS3 (via 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.
- Ajout de nouveaux encodeurs : RPZA, PFM, Cineform HD, OpenEXR, SpeedHQ, ADPCM IMA Ubisoft APM, ADPCM Argonaut Games, ADPCM IMA High Voltage Software, ADPCM IMA AMV, TTML (sous-titres).
- Ajout de multiplexeurs de conteneurs multimédias : AMV, Rayman 2 APM, ASF (Argonaut Games), TTML (sous-titres), LEGO Racers ALP (.tun et .pcm).
- Ajout de démultiplexeurs de conteneurs multimédias : AV1 (flux de bits à faible surcharge), 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).
- Ajout de nouveaux parseurs : IPU, Dolby E, CRI, XBM.
- Nouveaux filtres :
- chromanr — réduit le bruit de couleur dans la vidéo.
- afreqshift et aphaseshift — effectuent un décalage de fréquence et de phase du son.
- adenorm — ajoute un bruit d'un niveau spécifique.
- speechnorm — normalise la parole.
- asupercut — coupe les fréquences audio au-dessus de 20 kHz.
- asubcut — coupe les fréquences du subwoofer.
- asuperpass et asuperstop — implémentation de filtres de fréquence Butterworth.
- shufflepixels — réagencement des pixels dans les images vidéo.
- tmidequalizer — application de l'effet d'égalisation vidéo temporelle (Temporal Midway Video Equalization).
- estdif — élimination de l'entrelacement en utilisant l'algorithme Edge Slope Tracing.
- epx — filtre d'agrandissement pour créer des graphiques pixelisés.
- shear — transformation de décalage vidéo.
- kirsch — application de l'opérateur Kirsch à la vidéo.
- colortemperature — ajustement de la température de couleur vidéo.
- colorcontrast — ajustement du contraste des couleurs entre les composants RGB pour la vidéo.
- colorcorrect — ajustement de la balance des blancs pour la vidéo.
- colorize — superposition de couleur sur la vidéo.
- exposure — ajustement du niveau d'exposition pour la vidéo.
- monochrome — conversion de la vidéo couleur en nuances de gris.
- aexciter — génération de composants sonores haute fréquence absents du signal d'origine.
- vif et msad — détermination des coefficients VIF (Visual Information Fidelity) et MSAD (Mean Sum of Absolute Differences) pour évaluer les différences entre deux vidéos.
- identity — détermination du niveau de différences entre deux vidéos.
- setts — définit le PTS (presentation time stamp) et le DTS (decoding time stamp) dans les paquets (bitstream).
Source : opennet.ru
