Communautés VideoLAN et FFmpeg troisième version (0.3) de la bibliothèque dav1d avec l'implémentation d'un décodeur alternatif de format d'encodage vidéo gratuit . Le code du projet est écrit en langage C (C99) avec des inserts assembleur (NASM/GAS) et Distribué sous licence BSD. Prise en charge des architectures et systèmes d'exploitation x86, x86_64, ARMv7 et ARMv8. Linux, Windows, macOS, Android et iOS.
La bibliothèque dav1d prend en charge toutes les fonctionnalités AV1, y compris les vues avancées et tous les paramètres de contrôle de profondeur de couleur indiqués dans la spécification (8, 10 et 12 bits). La bibliothèque a été testée sur une large collection de fichiers au format AV1. La principale caractéristique de dav1d est de se concentrer sur l'obtention des performances de décodage les plus élevées possibles et de garantir un travail de haute qualité en mode multithread.
La nouvelle version ajoute des optimisations supplémentaires pour accélérer le décodage vidéo à l'aide des instructions SSSE3, SSE4.1 et AVX2. La vitesse de décodage sur les processeurs avec SSSE3 a augmenté de 24 % et sur les systèmes avec AVX2 de 4 %. Ajout du code assembleur pour l'accélération à l'aide des instructions SSE4.1, dont l'utilisation a augmenté les performances de 26 % par rapport à la version non optimisée (par rapport aux optimisations basées sur les instructions SSSE3, le gain est de 1.5 %).
Les performances du décodeur sur les appareils mobiles dotés de processeurs basés sur l'architecture ARM64 ont également été augmentées. En implémentant des opérations utilisant les instructions NEON, les performances ont augmenté d'environ 12 % par rapport à la version précédente.
Par rapport au décodeur de référence aomdec (libaom), l'avantage de dav1d se fait le plus sentir lorsque l'on travaille en mode multithread (dans certains tests, dav1d est 2 à 4 fois plus rapide). En mode monothread, les performances diffèrent de 10 à 20 %.
L'utilisation de dav1d dans d'autres projets a connu du succès. La valeur par défaut est dav1d maintenant dans Chromium/Chrome 74 et Firefox 67 (auparavant, dav1d était pour Windowsmais maintenant pour Linux и macOSFFmpeg et VLC ont continué à utiliser dav1d, et une transition vers le transcodeur dav1d est prévue. .
Rappelons que le codec vidéo développé par alliance (AOMedia), qui regroupe des sociétés telles que Mozilla, Google, Microsoft, Intel, ARM, NVIDIA, IBM, Cisco, Amazon, Netflix, AMD, VideoLAN, CCN et Realtek. AV1 se positionne comme un format d'encodage vidéo libre de droits, accessible au public, nettement en avance sur H.264 et VP9 en termes de niveaux de compression. Sur toute la gamme de résolutions testées, AV1 offre en moyenne le même niveau de qualité tout en réduisant les débits binaires de 13 % par rapport au VP9 et de 17 % inférieurs à HEVC. À des débits binaires élevés, le gain augmente jusqu'à 22-27 % pour VP9 et jusqu'à 30-43 % pour HEVC. Dans les tests Facebook, AV1 a surpassé le profil principal H.264 (x264) de 50.3 % en termes de niveau de compression, le profil haut H.264 de 46.2 % et VP9 (libvpx-vp9) de 34.0 %.
Source: opennet.ru
