Présentation du nouveau libvmaf v3.0.0

Le 7 décembre 2023, Netflix a publié libvmaf v3.0.0. Cette version regroupe la bibliothèque C libvmaf et son wrapper Python, tout en retirant les interfaces jugées obsolètes depuis la version 2.0.0. La suppression des API dépréciées simplifie l’intégration pour les développeurs, qui ne rencontrent plus de conflits de version lors de la migration depuis les versions antérieures. Le package conserve les outils en ligne de commande permettant d’évaluer PSNR, SSIM, MS‑SSIM et d’autres métriques, tout en offrant un point d’entrée unique pour les pipelines de test automatisés.

Évolutions de l’architecture et des performances

Depuis la sortie de libvmaf v2.0.0 le 3 décembre 2020, le moteur est passé d’une implémentation purement flottante à une version à point fixe optimisée pour les jeux d’instructions SIMD x86 (AVX2, AVX‑512). Cette refonte a permis d’atteindre un facteur de 2 × d’accélération sur les processeurs compatibles. Un article de fin 2020 décrit des optimisations supplémentaires, notamment la réécriture de la boucle de calcul qui réduit les accès mémoire et améliore la latence. Le même article mentionne une amélioration de 4,5 × pour le calcul du détecteur de banding CAMBI sur des séquences 4 K, grâce à une vectorisation plus fine et à la réduction des branches conditionnelles.

Extensions fonctionnelles : modèles VMAF v1, mode NEG et CAMBI

En juin 2026, Netflix a introduit la série de modèles VMAF v1, présentée dans le fichier models_v1.md. Ces modèles remplacent la génération v0 tout en conservant la compatibilité avec les scripts existants. Parallèlement, le mode NEG (No Enhancement Gain), ajouté en juillet 2020, neutralise les gains artificiels introduits par les algorithmes d’amélioration d’image, garantissant une comparaison plus fiable entre codecs. Le détecteur de banding CAMBI a été rendu open source le 7 octobre 2021, avec deux paramètres supplémentaires introduits en décembre 2021 : full_ref pour activer le mode référence complète et max_log_contrast pour capter les contrastes élevés. Ces ajouts offrent aux chercheurs une granularité accrue dans l’évaluation des artefacts de contouring.

Intégration et adoption dans l’écosystème

VMAF est désormais disponible comme filtre FFmpeg, activable via ./configure --enable-libvmaf, ce qui facilite son déploiement dans les chaînes de traitement vidéo. Un Dockerfile officiel génère une image contenant la bibliothèque Python, simplifiant les tests d’échelle dans des environnements conteneurisés. Le 27 février 2020, la licence a été modifiée d’Apache 2.0 à BSD + Patent, offrant une protection explicite contre les réclamations de brevets tout en restant permissive. Enfin, l’Alliance for Open Media (AOM) a inscrit VMAF comme métrique de référence dans ses Common Test Conditions (CTC), renforçant son rôle dans les évaluations standardisées de codecs. Ces intégrations montrent que VMAF s’inscrit comme un composant critique des workflows de qualité vidéo, tant en recherche qu’en production.