—
Bad mov(i)e, Google, bad move…
Je reviens après tout le monde sur cette annonce qui a fait grand bruit ces derniers jours: Google a décidé de ne plus supporter le codec H.264 dans son navigateur Chrome, pour des raisons d’ouverture.
C’est une très mauvaise nouvelle selon moi, pourtant fervent adorateur du navigateur de Google, qui avait remplacé sans regret Firefox sur l’ensemble de mes machines.
De quoi parle-t-on ?
Sur le web aujourd’hui, les 3 principaux codecs vidéo à se tirer la bourre sont: le fameux H.264, Ogg/Theora et le plus récent WebM directement issu de chez Google.
H.264 s’est rapidement imposé comme un standard sur la plupart des sites de diffusion vidéo, Youtube en tête, pour plusieurs raisons dont 2 cruciales ci-dessous:
- il est supporté nativement sur la plupart des plateformes aujourd’hui: les mobiles sous iOS, Android et la plupart des autres OS mobile, les navigateurs Chrome (pour encore une poignée de semaines, pas plus), Safari et même IE9. Firefox et Opera ayant quant à eux décidé dès le départ de ne pas supporter ce codec, la lecture de vidéos H.264 sur ces navigateurs passe par un plugin Flash (on appelle ça, un Flash fallback: ce que ton navigateur ne traite pas nativement, c’est Flash qui s’en chargera).
- il supporte depuis longtemps le décodage hardware, ce qui le rend particulièrement efficace dans le monde « mobile »: la durée de vie de la batterie est ainsi bien mieux préservée.
Ogg/Theora n’est supporté que sur 3 navigateurs: Google Chrome, Firefox & Opera. Il faudra donc oublier IE9, Safari et tout l’univers mobile…
WebM, le petit dernier n’est pour l’instant supporté que sur Android, Google Chrome, Opera et prochainement Firefox (dans sa version 4, encore en beta) et, gros inconvénient, ne bénéficie pas pour l’instant de décodeur matériel.
Qu’est ce que l’annonce de Google change à tout ça?
Pour l’utilisateur du navigateur made in Google, pas grand chose, certes. Si ce n’est l’inconvénient « majeur » du fallback Flash lors d’une lecture de vidéo encodée en H.264. Et nous savons tous à quel point Flash, c’est le mal: pour la durée de vie de votre batterie, pour les nombreux bugs et trous de sécurité non-corrigés et pour les crashs récurrents – c’est quand même le seul truc qui arrive à me planter un onglet sous Chrome.
Pour les producteurs de contenu vidéo (Youtube of course, mais aussi Vimeo, Netflix, et les centaines d’autres…), c’est un peu plus compliqué:
- ceux qui se soucient suffisamment du bien être de leurs utilisateurs sous Firefox, Opera et désormais Chrome pour ne pas les obliger à basculer sous Flash pour lire les vidéos H.264 non-supportées, mais sans se fermer à tous les autres qui ne supportent que ce format (iOS et autres OS mobile, Safari, IE9…) devront encoder toutes leurs vidéos dans au moins 2 formats (WebM ou Ogg/Theora ET H.264)
- les intégristes qui ne publieront qu’en WebM ou Ogg/Theora pour des raisons d’ouverture (mais moins regardant sur le fait que Flash ne le soit pas du tout, lui, ouvert)
- tous les autres, qui pour tout un tas de raisons (temps, puissance de calcul & espace de stockage nécessaire, entre autres…) continueront d’encoder dans le seul et unique standard qui leur permet de toucher tous les utilisateurs à moindre coût et avec le meilleur résultat: H.264.
Devinez un peu laquelle des 3 possibilités risque de l’emporter…
Quel est le problème finalement ?
C’est que Google justifie son choix pour une raison d’ouverture, plutôt que d’être honnête en annonçant clairement le fait de vouloir favoriser son propre codec. C’est un argument non-recevable et hypocrite car Flash – embarqué nativement dans Chrome, à la différence de Firefox & Opera, je le rappelle – n’est pas plus open qu’H.264 et forcer l’utilisateur au fallback sous Flash pour lire des vidéos H.264 est juste une aberration. De plus, si Google se souciait réellement d’ouverture, pourquoi ne pas avoir annoncé également l’arrêt du support H.264 pour Android (et même Chrome OS, tiens!). Peut-être que là, l’ouverture n’a plus grande importance par rapport au problème de batterie qu’une bascule sous Flash systématique engendrerait sur les mobiles Android, tant que WebM n’est pas plus répandu et n’a pas encore d’accélération hardware.
Et coté H.264, qu’est-ce qui dérange tant que ça Google (et les autres) ?
Ce n’est pas un codec open, dans le sens où il est proposé par la MPEG LA, une organisation rassemblant de nombreuses sociétés qui contribuent technologiquement à faire de H.264 un standard. En contrepartie, la MPEG LA réclame des droits pour l’utilisation du codec, mais seulement et seulement si vous faites payer vos utilisateurs pour visionner les vidéos. Si tout est gratuit, il n’y a rien à reverser à la MPEG LA. Ce qui me semble tout à fait juste, non ?
Pourquoi Google fait ça ?
Imposer son codec, certes open, mais de force et en dépit du choix des utilisateurs. Apporter un nouveau codec dans le monde de la vidéo sur le web, open de surcroit, est une excellente chose pour tout le monde. Mais le laisser s’imposer de lui même, s’il est meilleur, me semble une approche bien plus respectueuse et « ouverte » que cette façon de faire…
Et alors, quoi ?
Alors, j’attend de voir les prochaines réactions des différents acteurs: Google pourrait décider de convertir tout Youtube en WebM. La MPEG LA pourrait libérer totalement le codec H.264 pour ce qui est de la diffusion (même commerciale). Apple n’a pas encore réagit mais ça ne saurait tarder. Et quid de Microsoft pour IE ?
Pour ce qui est de mon utilisation personnelle de Chrome, j’attends que l’annonce soit rendue effective et j’irai alors voir ailleurs (Safari, certainement…) si l’herbe est plus verte en attendant que WebM se démocratise et s’améliore.
[…] Janvier 2011, j’écrivais à propos du mauvais choix de Google de ne plus supporter H.264 dans son navigateur Chrome: Pour les producteurs de contenu vidéo (Youtube of course, mais aussi Vimeo, Netflix, et les […]