dav1d, un décodeur performant pour le futur standard vidéo AV1

Stéphane Moussie |

En préparation depuis 2015, AV1 représente un exploit dans le monde de la vidéo : non seulement ce codec est plus optimisé que le HEVC/H.265, mais surtout il est libre et gratuit… et soutenu par les principaux acteurs de l’industrie, y compris Apple, rassemblés pour l’occasion dans l’Alliance for Open Media. Le nouveau codec devrait mettre fin à la guéguerre HEVC (promu par Apple) contre VP9 (Google) et aux licences compliquées et couteuses.

Encore faut-il que les terminaux puissent lire convenablement les vidéos AV1. Car si ce codec offre une compression 20 % meilleure que le HEVC, il demande aussi plus de ressources. C’est pourquoi les équipes de VideoLAN (VLC) et FFmpeg, sponsorisées par l’Alliance for Open Media, sont en train de concevoir un décodeur performant.

Baptisé dav1d, l’outil de décompression est disponible depuis la semaine dernière dans une première version utilisable. Jean-Baptiste Kempf, le président de VideoLAN (et chevalier de l’ordre national du Mérite), explique sur son blog que dav1d prend en charge toutes les fonctionnalités de l’AV1 et que les efforts se sont concentrés sur sa rapidité. Il offre ainsi de bien meilleures performances que d’autres décodeurs, comme le montre le graphique ci-dessous.

Pour parvenir à ce résultat, dav1d exploite les instructions AVX2. D’après Jean-Baptiste Kempf, un peu plus de la moitié des processeurs d’ordinateurs prennent en charge ces instructions. Les CPU d’Intel sont compatibles depuis la génération Haswell introduite en 2013. C’est d’ailleurs un processeur Haswell qui a servi pour le test ci-dessus.

Le décodeur est conçu pour fonctionner sur toutes les plateformes. Il pourrait être intégré prochainement à Firefox, qui a déjà mené des expérimentations avec l’AV1. Car les géants du web comptent bien l’utiliser dans leurs services. Après des premiers tests encourageants, Facebook prévoit d’utiliser progressivement le nouveau codec pour ses vidéos.

Toutes les bonnes âmes sont invitées à contribuer à dav1d, qui est un projet open source.

Tags
avatar minitoine | 

Je ne me suis pas encore renseigné sur l’AV1, puisque je pensais qu’il fallait qu’on attende encore quelques années avant de le voir arriver.

Mais, si je comprends bien, 50% des procos sont matériellement compatibles avec le décodage de l’AV1 ?
(C’est surtout le matériel qui m’intéresse)
Quid de l’encodage ?
Si c’est bien ça, clairement, le HEVC va en prendre un coup. (Encore faut-t’il réussir à convaincre l’industrie..)

avatar ney | 

@minitoine

D’après ce que je sais, l’instruction AVX2 permet d’accélérer certains calculs matériellement mais pas tout le codec. Pour ça il faudra sûrement attendre les futurs GPU à l’horizon 2020, donc en attendant d’ici là, un HEVC décodé matériellement sera plus intéressant qu’un AV1 (si on se fixe que sur ce point précis).
Je suis pas sûr à 100% mais je pense que c’est ça.

avatar RedMak | 

Enfin de la 4k youtube sur Apple TV ?

avatar iPop | 

Ils prennent comment la nouvelle chez MPEG ?

avatar byte_order | 

C'est un codec.
L'enveloppe, elle, reste du Mpeg.
C'est pas la première fois dans l'histoire du MPEG que le codec populaire change, sans pour autant remettre en cause le reste.

avatar vince29 | 

Je pense que tu as mal compris la question (ou alors c'est moi).
Je pense qu'il ne parle du MPEG en tant que container mais plutôt en tant que membres du mpeg patent pool soucieux de toucher les dividendes liés aux brevets de la technologie mpeg.
Je pense pas qu'ils passent une très bonne année :)
Mais ils annoncent quand même h266 pour 2021 avec un( objectif d)e réduction de 50% par rapport à h265 tout en étant plus rapide que av1.

avatar vince29 | 

Potentiellement tous les processeurs peuvent décoder de l'av1 c'est juste que certains ont des instructions spécialisées qui accélèrent le traitement. La question c'est, l'accélèrent-ils au point que ce soit "utilisable" ?
Généralement lorsque tu regardes une vidéo tu ne fais rien d'autre donc que le cpu soit à 100% ce n'est pas trop un problème. Sauf si ça déclenche les ventilos.
Et puis on ne regarde pas forcément des videos sur une architecture x86. C'est même de moins en moins fréquent. Si le décodage video fonctionne bien sur les smartphones c'est parce que le décodage hevc est déjà "câblé".
Si on veut que av1 (considérablement plus gourmand que hevc) ne consomme pas trop (ou même simplement qu'il fonctionne) sur un smartdevice il va falloir aussi l'intégrer aux cpu.

Concernant l'encodage, Bitmovin faisait (septembre 2017) du 1080 en temps réel avec ... 200 cores. Mais il espérait à terme pouvoir le faire avec du 32 voir du 8.

Donc oui il va falloir attendre quelques années avant que l'av1 se généralise.

Pour ce qui est de convaincre l'industrie, avec google, apple, amazon, microsoft, netflix, arm, intel , amd, nvidia, realtek... embarqués dans l'affaire je pense que ça devrait marcher.

avatar oomu | 

" Généralement lorsque tu regardes une vidéo tu ne fais rien d'autre donc que le cpu soit à 100% ce n'est pas trop un problème. Sauf si ça déclenche les ventilos."

c'est faux.

Votre machine va éventuellement continuer de:
- mettre à jour la sauvegarde de vos données
- continuer de télécharger l'épisode suivant de Duck Tales (quoi ?)
- continuer de mettre à jour le nouveau patch de World of warcraft (quoi, encore ? :) )
- journaliser, vérifier, surveiller l'état de l'ordi
- vous notifier que vous avez reçu des courriers de notifications de 456 réponses effarées à votre commentaire pourtant parfaitement raisonnable sur MacG
- appliquer un traitement de 35 filtres passe haut, générateur de bruit, convolutions etc sur une image

etc :)

Bref, 100% d'occupation par UNE tâche sur un ordi avec un cpu moderne serait, non seulement catastrophique pour toutes les taches annexes du systèmes (rien que timemachine/backupd et les services iclouds) et serait atrocement consommateur d'énergie, irraisonnable pour juste regarder un film.

avatar vince29 | 

Ne te fais pas passer pour plus bete que tu n'es.

avatar byte_order | 

> Le nouveau codec devrait mettre fin à la guéguerre HEVC (promu par Apple) contre VP9 (Google)
> et aux licences compliquées et couteuses.

Les licences compliquées et couteuses, c'est pour HEVC, pas VP9.
Mais AV1 est meilleur sur bien des plans de toute façon.

avatar moa_toa | 

Quid des processeurs ARM ?

avatar vince29 | 

Les processeurs ARM actuels ou ceux à venir ?

Pour ceux à venir ARM étant membre de l'AOM - l'association qui édicte AV1 - cela devrait être pris en charge d'ici 1 ou 2 ans.
Pour les procs actuels et de leur capacité à décoder je ne sais pas te répondre. Il y a toujours le github avec les sources si tu veux voir les éventuelles accélérations matérielles incorporées.

avatar Nihao | 

Av1 c’est aussi des images fixes, non? Comme heif/heic? Est ce que ca,pourra remplacer jpeg?

avatar flux_capacitor | 

Donc le super coprocesseur T2 des récents Mac, capable d'encoder une vidéo HEVC en quelques secondes (bien mieux que le CPU ou un GPU) c'est finalement de l'esbroufe ? Une performance scénique pour un codec pensé pour la 4K mais qui restera en devenir avant de se faire finalement remplacer par un autre plus performant sans jamais s'être imposé… Question : la puce T2 est-elle capable de prendre en charge le codage et le décodage matériel de l'AV1 ? Si oui, tant mieux. Sinon, on se rappellera de cette puce T2 comme d'une belle fumisterie (temporaire), une Formule 1 sans route pour la faire circuler.

CONNEXION UTILISATEUR