VP9

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
VP9
Vp9-logo-for-mediawiki.svg
Caractéristiques
Développé par
Type de format
Contenu par
Extension du
Spécification
Site web
libvpx (bibliothèque VP9) [1],[2]
Logo

Développeur Google
Première version Voir et modifier les données sur Wikidata
Dernière version 1.6.0 (20 juillet 2016)
État du projet Actif
Écrit en C
Environnement Unix-like (incluant GNU/Linux, FreeBSD et Mac OS X), Windows
Type Codec vidéo
Licence Nouvelle Licence BSD
Site web webmproject.org

VP9 est un codec vidéo ouvert et sans redevance[3] développé par Google. Au début, au cours de son développement, VP9 a été successivement nommé Next Gen Open Video (NGOV) et VP-Next. VP9 est le successeur de VP8 (créé par On2 avant que Google rachète l'entreprise). Chromium, Chrome, Firefox, et Opera supportent le format vidéo VP9 dans l'élément HTML5 video.

Histoire[modifier | modifier le code]

Le développement de VP9 a commencé au troisième trimestre 2011 [4],[5].

L'un des buts pour le VP9 est de réduire le débit de 50 % comparé au VP8 tout en conservant la même qualité vidéo[6]. Un autre objectif pour le VP9 est d'obtenir une meilleure capacité de compression que le H.265/HEVC[5].

Le , un support préliminaire du codec VP9 a été ajouté au navigateur web Chromium[7],[8],[9]. Au mois d'août 2013, Google sort la version 29.0.1547 de Chrome[10], avec le support du VP9 dans sa version finale.

Le 3 octobre 2013, un décodeur natif du VP9 est ajouté au projet FFmpeg[11] et le 15 novembre 2013 au projet Libav.

Le 6 décembre 2013, Mozilla ajoute le support du codec VP9 dans son canal Nightly (Firefox 28)[12]. Il est sorti avec Firefox 28 le 18 mars 2014[13].

Le 7 janvier 2014, Ittiam profite du CES pour faire une démonstration de son décodeur VP9 sur des appareils équipés en puce ARM de type Cortex. Ce décodeur, conçu en collaboration avec ARM et Google, met l'accent sur la puissance, l'échelle et la portabilité avec une importance égale pour chacun. Lors du test le décodeur réussit ainsi à faire tourner une vidéo en 1080p à 30fps sur une puce ARM Mali-T604. Celle-ci se trouvant alors sur une carte mère Arndale équipée d'un SoC Exynos 5 dual de Samsung[14],[15].

Le 2 mars 2015, VeriSilicon annonce la sortie de son décodeur IP Hantro G2v2 prenant en charge le profil 2 du VP9[16].

Le 3 avril 2015, Google sort libvpx en version 1.4.0 avec le support du 10-bit et du 12-bit pour la profondeur des couleurs, du 4:2:2 et du 4:4:4 pour le sous-échantillonnage de la chrominance et du multithread pour le décodage/l'encodage[17].

Détails techniques[modifier | modifier le code]

  • VP9 apporte des améliorations par rapport à VP8[4],[5]. Ainsi ce codec prend en charge l'utilisation des superblocs de 32×32 pixels et les développeurs souhaitent ajouter des superblocs de 64×64[4],[5]. Une structure quadtree peut être utilisée avec les superblocs[4],[5]
  • Le codage est très lent (environ 15 minutes de codage pour 1 seconde de film avec un processeur Core i7 2600, dans la version initiale du codec)[18]. Depuis 2015, l'encodage est bien plus rapide car par l'utilisation de plusieurs cœurs, grâce à la fonction « tile-columns=nombre » et « frame-parallel=nombre ». Coder simultanément avec plusieurs cœurs a pour effet de très faiblement augmenter le débit tout en en diminuant extrêmement peu la qualité[Quoi ?].
    Par exemple, il est renseigné au plus 7 (0 = mode automatique) pour un 8 cœurs virtuels (8 cœurs virtuels peuvent être dans 4 cœurs matériels) : tâche = 7 (nombre de cœur virtuel moins un), tile-columns=6 » et frame-parallel=1.
  • « vitesse = nombre » (−16 à 16, souvent 1, 2, 3 ou 4), permet de décider de la rapidité du codage.
  • « qualité = » (temps réel, bon, top, souvent bon)
  • Échantillonneur « quantizer » : q minimum = 0 et q maximum = 63
  • 3 modes de débit : « variable en fonction de la qualité » ou « moyen » ou « constant »
  • Groupe d'image (GOP) = nombre : intervalle maximum entre images clés

Voir aussi[modifier | modifier le code]

Références[modifier | modifier le code]

  1. (en) « VP9 Video Codec Summary », WebM Project, Google (consulté le 4 juillet 2013)
  2. (en) Lou Quillio, « VP9 Lands in Chrome Dev Channel », WebM Project, Google, (consulté le 4 juillet 2013)
  3. (en) « YouTube goes 4K, Google signs up long list of hardware partners for VP9 support »
  4. a, b, c et d (en) « VP-Next Overview and Progress Update » [PDF], Google (consulté le 29 décembre 2012)
  5. a, b, c, d et e (en) Adrian Grange, « Overview of VP-Next » [PDF], Internet Engineering Task Force (consulté le 29 décembre 2012)
  6. (en) « Next Gen Open Video (NGOV) Requirements » [PDF], Google (consulté le 29 décembre 2012)
  7. (en) Stephen Shankland, « Google's new VP9 video technology reaches public view », CNET, (consulté le 29 décembre 2012)
  8. (en) Lucian Parfeni, « Chrome Adds Support for the Next-Generation VP9 Video Codec and Mozilla's Opus Audio », Softpedia, (consulté le 29 décembre 2012)
  9. (en) « Revision 172738 libvpx: Add VP9 decoder. », Google, (consulté le 29 décembre 2012)
  10. Smarter Omnibox in Chrome Stable 29
  11. (en) « Native VP9 decoder is now in the Git master branch », Launchpad, (consulté le 8 décembre 2013)
  12. Bug 833023 - (vp9) Implement VP9 video decoder in Firefox
  13. https://wiki.mozilla.org/RapidRelease/Calendar
  14. (en) « Ittiam and ARM are the first to efficiently bring Google’s VP9 to mobile devices », ARM Community,
  15. (en) « Ittiam's H.265 and VP9 Solutions to Have Widespread Coverage at CES 2014 », ARM Community,
  16. (en) « VeriSilicon Introduces Hantro G2v2 Multi-format Decoder IP with VP9 Profile 2 to Support 10-bit Premium Internet Content », Business Wire, (consulté le 2 mars 2015)
  17. (en) Michael Larabel, « libvpx 1.4.0 Brings Faster VP9 Encode/Decode », Phoronix, (consulté le 3 avril 2015)
  18. https://groups.google.com/a/webmproject.org/forum/#!topic/codec-devel/P5je-wvcs60

Liens externes[modifier | modifier le code]