8Sep

Pourquoi YouTube dans Chrome( et Firefox) est la vidange de la batterie de votre ordinateur portable et comment le réparer

Est-ce que YouTube bégaie, chauffe votre ordinateur portable, met vos fans en marche, ou utilise simplement beaucoup de CPU?Même si vous n'avez jamais remarqué, YouTube dans Chrome utilise certainement plus de puissance de la batterie que nécessaire. Comme les autres problèmes de performances de Chrome, c'est probablement pire sur les Mac.

Ceci est le résultat du passage à la vidéo HTML5 et aux bizarreries avec les codecs vidéo utilisés par YouTube dans Chrome par rapport aux autres navigateurs. Supportez avec nous et nous expliquerons pourquoi Google a rendu la lecture YouTube si inefficace en premier lieu. Firefox peut aussi avoir le même problème.

HTML5, H.264, VP8 et VP9

YouTube a maintenant largement largué le plug-in vidéo Flash pour la lecture vidéo HTML5.Mais la lecture vidéo HTML5 n'est pas standardisée. Les navigateurs peuvent choisir le codec vidéo qu'ils veulent utiliser, et il n'y a pas un seul codec que tous les navigateurs préfèrent.

Lorsque YouTube utilisait Flash, il utilisait le codec H.264 pour lire des vidéos. Les vidéos avec ce codec ont généralement l'extension. mp4 et sont souvent appelées vidéos MP4.Ceci est une norme de facto à l'échelle de l'industrie au-delà des simples navigateurs Web.

Safari, Internet Explorer, Microsoft Edge, Chrome et Firefox intègrent tous un support pour la lecture de vidéos codées en H.264, bien que Firefox ait enfoncé ses chaussures et évité d'inclure cela le plus longtemps possible.

Alors qu'Apple et Microsoft ne supportent H.264 que pour la lecture vidéo dans leurs navigateurs, Google a également poussé ses propres codecs. Google a acquis le codec VP8 et l'a intégré dans Chrome, et Firefox a emboîté le pas. Google pousse maintenant le codec VP9 de prochaine génération, qui est maintenant également intégré dans Chrome et Firefox. Les fichiers utilisant ce codec ont généralement l'extension de fichier. webm et sont parfois appelés fichiers WebM.

Pourquoi Google a-t-il créé VP8 et VP9?

Alors que H.264 est une norme de facto à l'échelle de l'industrie, il a un problème important. Les technologies sous-jacentes sont couvertes par une grande variété de brevets. Pour utiliser ces technologies - si vous les intégrez à un produit, par exemple - vous devrez payer des frais au portefeuille de brevets H.264.

C'est pourquoi Mozilla a tenu si longtemps contre le H.264 - il voulait que le web soit basé sur une norme ouverte qui ne nécessite aucun frais. Google a lancé VP8 et VP9 avec une promesse de brevet irrévocable, permettant aux gens de faire ce qu'ils veulent avec elle - Google n'essaiera pas d'extraire les frais de brevet. Cisco paie effectivement les frais de licence et fournit un plug-in gratuit pour les utilisateurs de Firefox. Firefox télécharge automatiquement ce plug-in et l'utilise pour activer le support H.264.

VP8 n'a pas gagné la traction

Mais Google n'a pas particulièrement réussi avec VP8.Début 2011, Google a annoncé qu'il supprimerait le support H.264 de Chrome pour ne prendre en charge que les codecs ouverts tels que VP8 et Theora. Plus de quatre ans plus tard, Google n'a jamais fait cela et nous n'avons rien entendu à propos de cette promesse depuis.

Mozilla tenait probablement à ce que Google respecte sa promesse, mais Google n'a jamais pu - à la place, Mozilla a cédé et a ajouté le support H.264 des années plus tard. H.264 est le codec standard de facto actuel, qu'il le veuille ou non - et, lors de l'utilisation d'un navigateur Apple ou Microsoft, c'est le seul disponible. C'est aussi la seule véritable option pour les navigateurs mobiles. De nombreux sites Web ont implémenté des vidéos HTML5 avec uniquement la prise en charge H.264, et Chrome et FIrefox en seraient exclus s'ils ne prenaient pas en charge H.264.

Le vrai problème: l'accélération matérielle

Il y a un problème simple et fondamental ici. Le décodage H.264( lecture) est accéléré par le matériel. Cela signifie que le «travail» de lecture d'un fichier vidéo H.264 est effectué par le processeur graphique( GPU) de manière beaucoup plus efficace. Si le décodage matériel n'était pas disponible, le CPU devrait faire tout le travail de manière moins efficace. Cela signifie que la lecture prend moins de temps CPU, ce qui signifie moins de puissance de la batterie gaspillée et moins de chaleur générée. Cela peut également signifier une lecture plus fluide si le processeur ne peut pas suivre la lecture de la vidéo.

Vraiment, tous les éléments matériels modernes supportent le décodage H.264 accéléré par le matériel. Cela inclut tous les types de smartphones, tablettes, PC, Mac et même Chromebooks. Lorsqu'un navigateur Web - oui, même Chrome - lit la vidéo H.264, il est déchargé sur le GPU.Même Adobe Flash a pris en charge l'accélération matérielle de la vidéo H.264.

Mais il n'y a pas de matériel pour accélérer les vidéos VP8 et VP9.Lorsque Google a annoncé VP8 à la mi-2010, une variété de sociétés, y compris de grands noms comme NVIDIA, AMD, et Qualcomm ont annoncé qu'ils soutiendraient VP8 dans leurs produits. Mais, plus de cinq ans plus tard, aucun appareil n'est arrivé avec un décodage VP8 accéléré par le matériel.

Dans l'annonce récente de VP9, ​​Google note que «plus de 20 partenaires de l'industrie lancent des produits en 2015 et au-delà en utilisant VP9.» Le même article note également d'autres avantages de VP9, ​​comme une taille de fichier plus petite. Intel, nVIDIA, AMD et d'autres sociétés se sont engagées à prendre en charge le décodage accéléré du VP9.

Nous avons cherché à trouver du matériel qui supporte le décodage VP9 accéléré par le matériel, et tout ce que nous avons trouvé, c'est qu'Intel a sorti de nouveaux pilotes Haswell et Broadwell pour Windows avec "support d'accélération partielle" pour VP9 début 2015. Clairement, il y abeaucoup plus de travail à faire.

Comme les autres problèmes de performance de Chrome, cela peut être pire sur un Mac. Les ingénieurs de Chrome ont conclu que l'utilisation du processeur lors de la lecture VP9 sur un Mac n'est pas un problème. Cela est peut-être vrai, mais Google ne devrait probablement pas diffuser toutes ces vidéos VP9aux utilisateurs de Chrome sur Mac si l'utilisation du processeur est normale. Cela encourage simplement les utilisateurs Mac à utiliser Safari à la place.

Comment rendre les vidéos YouTube plus efficaces

C'est un problème de poule et d'oeuf, vraiment - les fabricants ne vont pas implémenter de VP9 accéléré matériellement jusqu'à ce qu'il soit réellement utilisé dans le monde réel. Google a résolu ce problème en ajoutant VP8 et VP9 à Chrome et en demandant à YouTube de diffuser des vidéos VP9 et VP8 sur Chrome. YouTube peut également diffuser des vidéos VP8 et VP9 sur Firefox.

Cela peut économiser du temps de téléchargement, mais cela signifie que YouTube draine plus de puissance de la batterie et de cycles de processeur dans Chrome. Sur les appareils avec des processeurs particulièrement lents, les vidéos peuvent même bégayer au lieu de les lire correctement.

Pour une lecture plus efficace, vous pouvez simplement basculer vers Safari, Microsoft Edge ou Internet Explorer. Mais tu n'as pas à faire ça. Vous pouvez installer l'extension de navigateur h264ify pour Chrome, ce qui forcera Chrome à demander des vidéos H.264 à partir de YouTube. Ils se ressemblent, mais Chrome les lira plus facilement.

Téléchargez h264ify pour Chrome, obtenez h264ify pour Firefox, ou consultez la page projet sur GitHub pour plus de détails

Comment voir si YouTube utilise H.264, VP8 ou VP9

Pour vérifier quel codec YouTube est diffusé sur votre navigateur, à droite-cliquez sur une vidéo YouTube pendant la lecture et sélectionnez "Stats for nerds". À droite de "Mime Type", vous verrez "video / mp4" et le codec "avc" pour les vidéos H.264 / MP4.

Pour les vidéos VP8 et VP9, ​​vous verrez "video / webm" et "vp9" ou "vp8".

Dans le long terme, la poussée VP9 de Google pourrait être meilleure pour le web et conduire à un matériel qui peut fournir un décodage accéléré de ce nouveau codec. Mais, dans le présent, vous pourriez vouloir économiser de la batterie et faire fonctionner votre ordinateur portable de manière plus efficace en choisissant de ne pas utiliser l'expérience de Google et d'utiliser la vidéo H.264.

Crédit d'image: Esther Vargas sur Flickr