- WebM
-
WebM Logo du format WebM Extension .webm (.weba est envisagé pour l’audio seul) Type MIME video/webm,
audio/webmDéveloppé par Google Type de format Conteneur de flux vidéos et audios, gère les chapitres Conteneur de fichiers VP8 (vidéo)
Vorbis (audio)Spécification Format ouvert modifier WebM est un format multimédia ouvert principalement destiné à un usage sur le web.
Il est basé sur un conteneur dérivé de Matroska, et regroupe des flux vidéos encodés en VP8 et des flux audios encodés en Vorbis[1]. Aucun autre codec vidéo ou audio n’est supporté, afin que le support du format ne soit jamais un support partiel.
Sommaire
Historique
WebM est annoncé le 19 mai 2010 par Sundar Pichai, chef produit du navigateur Chrome chez Google à l’occasion du Google I/O 2010[2]. Google, alors propriétaire du codec VP8 depuis le rachat de l’entreprise On2 Technologies, le libère :
- en publiant ses spécifications sous licence Creative Commons paternité (CC-by) avec une implémentation sous licence BSD[3] ;
- en accordant pour l’usage des spécifications[4] comme de l’implémentation[5] une licence d’exploitation des brevets qu’il détient ou pourra détenir pour tout usage – commercial ou non – qui sera fait de cette implémentation ou de toute autre mise en œuvre de la spécification. Cette licence est concédée à titre perpétuel, mondial, gratuit et irrévocable (sauf pour ceux qui tenteraient de revendiquer des brevets contre une implémentation de la spécification).
Le 30 septembre 2010, Google annonce la création de WebP. C’est un format d’image utilisant la technique de compression des images clés du VP8[6].
Support
Industrie
Le format est géré lors de son annonce par une quarantaine d’acteurs, dont la Mozilla Foundation, Opera Software et Google[7]. Microsoft (IE9)[8] et Adobe (Flash Player)[9] annoncent peu après leur intention de le prendre en charge également. Absent de la liste des premiers soutiens du format, Intel indique la semaine suivante que l’accélération matérielle pour WebM était étudiée, notamment dans le cadre de la télévision par Internet[10].
Google annonce par ailleurs l’utilisation de WebM dans la version HTML5 de YouTube (et à terme la disponibilité de tout le catalogue dans ce format)[11],[12].
Le format est également pris en charge par certains constructeurs de matériel, dont AMD, ARM, MIPS Technologies et Nvidia.
Les SoC d’architecture ARM, RK29xx de Rockchip, présenté au CES en janvier 2011, sont les premier à le supporter avec un décodage matériel complet[13].
Un groupement d'intérêt s'est formé pour défendre webM, sous le nom de l'accord WebM Community Cross Licence[14]. Les signataires sont au nombre d'une vingtaine, et s'engagent à ne pas engager de poursuites judiciaires à l'encontre de ce logiciel libre, à la manière de l'Open Invention Network.
Mises en œuvre
WebM est supporté par le navigateur Google Chrome depuis sa version 6, Mozilla Firefox depuis sa version 4 et Opera depuis sa version 10.60. Les utilisateurs d'Internet Explorer dans sa version 9 et supérieure doivent installer l'application WebM Microsoft Media Foundation components [1] pour pouvoir lire ce format.[15]
Les applications basées sur la bibliothèque multimédia GStreamer, comme le navigateur Web Epiphany, peuvent lire le format WebM du fait de la mise à jour de la bibliothèque.
Le lecteur multimédia VLC 1.1 supporte WebM[16].
Dans sa version HTML5, YouTube gère le WebM, et beaucoup de vidéos ont été déjà converties. Il suffit, pour l’activer, d’avoir un navigateur compatible, d’avoir activé la version, et les vidéos compatibles seront automatiquement lues avec WebM. Pour rechercher directement une vidéo WebM, il faut lancer une recherche et rajouter &webm=1 à la fin de l’URL de la page de recherche de vidéo, ce qui filtrera les vidéo WebM des autres.
Les outils suivants vous permettront de manipuler, encoder ou optimiser des vidéos au format WebM :
- logiciels en ligne de commande ;
- la bibliothèque multimédia GStreamer (sous licence libre GNU LGPL) permet d’encoder et décoder au format WebM (à partir des versions GStreamer Good Plugins 0.10.23, Ugly Plugins 0.10.15 et Bad Plugins 0.10.19[17]), tout comme la collection de logiciels FFmpeg à partir de la version 0.6[18] (sous licence libre GNU LGPL),
- MKVToolNix[19] (disponible pour Windows, MacOS, Linux et d’autres systèmes d’exploitation, sous licence libre GNU GPL, s’appuie sur les bibliothèques libebml et libmatroska publiées sous licence libre GNU LGPL), est un jeu d’outils dont mkvmerge qui vous servira à générer des fichiers WebM (à partir de la version 4.0.0),
- mkclean[20] disponible sous licence libre BSD pour Windows, MacOS, Linux et d’autres, vous permettra de générer un fichier WebM à partir d’un fichier Matroska qui contiendrait déjà une séquence encodée en VP8 et en Vorbis, ou simplement d’optimiser votre fichier WebM (la taille de votre fichier sera éventuellement réduite, les non conformités seront le cas échéant corrigées, et l’index sera placé en tête du fichier pour optimiser la lecture sur Internet),
- mkvalidator[21] disponible sous licence libre BSD pour Windows, MacOS, Linux et d’autres, s’assure de la conformité d’un fichier WebM,
- logiciels pourvus d’une interface graphique ;
- mkvmerge, inclut dans MKVToolNix, vient avec une interface graphique,
- il existe de nombreuses interfaces graphiques pour GStreamer (PiTiVi, Transmageddon, Arista, etc.) et FFmpeg,
- Miro Video Converter[22] (disponible sous licence libre GNU GPL pour Windows et MacOS) repose sur FFmpeg,
- Firefogg, sous forme d’extension pour Firefox, repose sur FFmpeg[23],
- services en ligne ;
- toute vidéo d’une définition au moins égale à 720p envoyée sur YouTube sera encodée au format WebM[24]. D’autre part, toute vidéo pré-encodée au format WebM et envoyée sur YouTube sera proposée par le site au format WebM à condition de ne pas utiliser les annotations vidéo ni l’option d’affichage des publicités[25].
Caractéristiques techniques
Les spécifications du format WebM sont figées, garantissant la compatibilité ascendante et descendante du format et des implémentations, mais cela limite par contre les améliorations pouvant être apportées à celles n’ayant pas d’impact sur le format.
Critiques
Sur le plan légal
Sur le plan technique
Si les choix du conteneur Matroska pour le multiplexage de la video et de l'audio, et celui du codec Vorbis pour l’audio n’ont pas suscité beaucoup de critiques, celui du codec VP8 pour la vidéo est le sujet de nombreuses discussions.
Si tout le monde s’accorde à reconnaître la supériorité de VP8 sur Theora (Theora étant une amélioration de VP3, prédécesseur de VP8), il est parfois mis en défaut face à son principal concurrent, le codec breveté H.264, notamment par Jason Garrett-Glaser, développeur de x264, une implémentation sous licence libre du codec H.264[26]. Selon ce dernier, VP8 ne disposerait pas de certains algorithmes avancés présents dans H.264. En particulier, comme VP5 et VP6, VP8 effectue un codage arithmétique non adaptatif[26] qui, indépendamment de toute optimisation, ne pourrait permettre d’obtenir les mêmes ratios de compression qu’un codage adaptatif (mais qui peut être plus rapide).
H.264, du fait de son ancienneté, bénéficie de plusieurs implémentations logicielles (dont certaines, comme x264, sont très performantes) là où VP8 n’en possède encore qu’une seule. L’encodeur et le décodeur actuels sont plus lents que leurs équivalents pour H.264, mais VP8 n’a pas encore atteint ses limites en termes d’optimisation.
L’absence de support matériel pour le décodage de VP8, notamment par les plates-formes mobiles (quand le support de H.264 est courant) est également pointée du doigt, notamment par Apple. Toutefois, le nombre d’acteurs du marché soutenant le codec libre et les investissements faits par Google pour le support matériel de Theora sur ARM laissent envisager une résolution de ce problème à moyen terme.
Les développeurs du projet FFmpeg ont développé leur propre décodeur (ffvp8) basé sur les spécifications de VP8[27] et ont obtenu, au moment de sa publication, des performances meilleures que celle de la bibliothèque de référence (libvpx)[28]. De même, il existe un décodeur développé en Java[29].
Google travaille à l’optimisation de la bibliothèque libvpx. Ainsi, la version 0.9.5 (nom de code : Aylesbury) est sortie le 29 octobre 2010 avec la promesse d’un encodeur et d’un décodeur plus rapides et d’une meilleure qualité d’encodage[30].
Références
- (en)About the WebM Project, WebM Project
- I/O : Google libère le codec vidéo VP8, Guillaume Belfiore, Clubic, mercredi 19 mai 2010
- (en)Changes to the WebM Open Source License, WebM Project, 4 juin 2010
- (en)VP8 Bitstream Specification License, WebM Project
- (en)Software License, WebM Project
- (en)WebP, a new image format for the Web sur Blog Chromium, 30 septembre 2010. Mis en ligne le 30 septembre 2010, consulté le 30 septembre 2010
- (en)Google launches open WebM web video format based on VP8, Nilay Patel, engadget, 19 mai 2010
- (en)Another Follow-up on HTML5 Video in IE9, Dean Hachamovitch, The Windows Blog, 19 mai 2010
- (en)Flash Player Will Support VP8, Michelle Perkins, Adobe Flash Platform Blog, 19 mai 2010
- (en)Intel eyes hardware acceleration for Google’s WebM, Agam Shah, ComputerWorld, 27 mai 2010
- YouTube se convertit au format ouvert WebM, LeMonde.fr, 20 avril 2011
- (en)YouTube videos now served in WebM, YouTube blog, 19 avril 2011
- (zh)【瑞芯微】联合WebM发布RK29xx解决方案 sur imp3.net
- WebM : un accord autour de la licence d'exploitation, Clubic, Guillaume Belfiore, 26 avril 2011
- (en)How to Play WebM Video
- (en)VLC 1.1.0 What’s new?, VideoLAN
- (en)GStreamer Good Plugins 0.10.23, Ugly Plugins 0.10.15, Bad Plugins 0.10.19 stable releases, GStreamer, 31 mai 2010
- (en)Realease Notes FFmpeg, juin 2010
- (en)News Matroska, MKVToolNix
- (en)mkclean, Matroska
- (en)mkvalidator, Matroska
- (en)Miro Video Converter, MiroVideoConverter.com
- (en)Extension Firefogg pour Firefox 3.5+, Firefogg.org
- (en)Easy Tricks for Finding WebM Videos in YouTube
- (en)YouTube and WebM transcodes
- (en)Diary Of An x264 Developer, ason Garrett-Glaser, 19 mai 2010
- (en)FFmpeg gets its own implementation of Google’s VP8 codec, Ryan Paul, ars technica, 29 juin 2010
- (en)FFmpeg VP8 Decoder Implementation sur WebM Project, 19 août 2010. Mis en ligne le 19 août 2010, consulté le 30 septembre 2010
- (en)Java VP8 Decoder, Sourceforge
- (en)libvpx v0.9.5 (Aylesbury) released
Voir aussi
Articles connexes
Liens externes
Wikimedia Foundation. 2010.