Chrome 66 : les développeurs de jeux vidéo axés Web manifestent leur colère
Suite au blocage de l'audio des vidéos en lecture automatique

Le , par Stéphane le calme, Chroniqueur Actualités
Tout comme les publicités non désirées peuvent perturber l’expérience d’un internaute lorsqu’il visite un site web, la lecture automatique de vidéo peut également s’avérer gênante (encore plus lorsque le son est dérangeant ou que vous êtes limités en termes de quantité de données mobiles que vous avez à votre disposition).

Avec Chrome 66, Google a fait la chasse à cette mauvaise expérience en autorisant dans un premier temps la lecture automatique de vidéos si le contenu est mis en sourdine, si l’utilisateur clique ou interagit avec le site web ou si l'utilisateur a montré de l’intérêt pour les médias sur le site.

Mais cette mise à jour est source de consternation pour de nombreux développeurs de jeux Web qui constatent que ce changement affecte leur travail en ligne.

Au centre du conflit figure la manière dont Chrome traite les objets Web Audio, qui sont désormais automatiquement suspendus lorsqu'une page Web démarre, empêchant ainsi la diffusion automatique des annonces.

Rappelons que la Web Audio API propose un système puissant et flexible pour contrôler les données audio sur internet. Elle permet notamment de sélectionner des sources audio (microphone, flux media), d'y ajouter des effets, de créer des visualisations, d'appliquer des effets de spatialisation (comme la balance), etc. La Web Audio API ne vient pas remplacer l'élément <audio>, mais plutôt le compléter, de même que l'API Canvas 2D coexiste avec l'élément <video>.

La Web Audio API expose 28 interfaces avec des événements associés, classés selon leur fonction en 9 catégories.

Ici, nous allons nous intéresser à AudioContext. Un objet AudioContext désigne un graphe de traitement audio construit à partir de modules reliés entre eux, chacun représenté par un noeud audio (AudioNode). Le contexte audio contrôle la création des noeuds qu'il contient, ainsi que l'exécution du traitement audio, et du décodage. Il est nécessaire de créer un AudioContext avant de faire quoi que ce soit d'autre, puisque tout se passe dans un contexte.

Quel est le problème ?

Avant la mise à jour, l'audio du jeu commençait soit quand une page Web était chargée, soit après que l'utilisateur ait appuyé sur « play ». Cependant, avec la dernière version de Chrome, les jeux créés avec un moteur HTML5 (à l’instar de Pico-8, GameMaker, Unity ou Phaser) ne vont plus automatiquement jouer de son dans ces conditions. Dans de nombreux cas, l'audio ne va pas jouer même lorsqu'un jeu nécessite que les utilisateurs « cliquent pour jouer ».


Bennett Foddy, le créateur des jeux QWOP et Getting Over It with Bennett Foddy, explique que les jeux ne vont pas jouer d'audio à moins que leur méthode click-to-play ne reprenne l'API JavaScript AudioContext. Mais très peu de jeux le font parce qu'auparavant, il y avait « peu de raison de le faire ».

Foddy a déclaré au Daily Dot que les mises à jour requises ne sont pas difficiles, mais il soupçonne que la plupart des développeurs n'ont pas les composants nécessaires pour les réaliser.

Il a expliqué que la mise à jour du code ne demanderait pas beaucoup de travail, à condition que : « vous ayez accès à tous les serveurs sur lesquels le jeu est hébergé, ensuite vous ayez toujours votre code source, que vous ayez créé le jeu en utilisant JS / HTML brut ou un moteur qui a été récemment mis à jour pour respecter cette nouvelle politique et enfin que vous ayez le temps de parcourir tous vos projets et de les mettre à jour ».

« Naturellement, cela signifie que seule une minorité de jeux existants sera mise à jour, même si cela ne pose pas vraiment de problème aux développeurs de futurs jeux sur les moteurs / bibliothèques contemporains », a-t-il ajouté.

Plusieurs développeurs de jeux vidéo ont pris d’assaut Twitter pour exprimer leurs frustrations à propos de la nouvelle mise à jour de Chrome. Parmi ceux-ci, Terry Cavanagh, qui a créé plus de deux douzaines de jeux, entre autres les titres à succès VVVVVV et Super Hexagon, a déclaré que Chrome 66 « a brisé » ses créations.


Demande d’une solution alternative

Les développeurs concernés par la mise à jour ne s'opposent pas nécessairement à ce que Google empêche les vidéos en lecture automatique de diffuser des sons, ils veulent simplement que la filiale d’Alphabet propose une autre solution. Foddy suggère un bouton sourdine dans les onglets qui serait activé par défaut (vous pouvez déjà couper manuellement les onglets individuels sur Chrome) ou en ajustant le code pour le rendre plus convivial pour les jeux qui ont déjà un bouton « cliquer pour jouer ».

« Ou alors ils devraient mettre sur liste noire les annonces ennuyeuses, s’inspirant ainsi de la façon dont les adblockers fonctionnent », a déclaré Foddy.

« La raison pour laquelle ce changement est répréhensible est que lorsque nous faisons des jeux pour le web, qui sont construits sur des standards ouverts internationaux, nous nous attendons à ce qu'ils restent jouables pendant longtemps (voire éternellement) », a-t-il poursuivi. « Tout ce travail existe sur des serveurs indépendants et respecte les normes du Web ouvert, et Google n'a pas le droit moral de le tuer unilatéralement ... Surtout pas quand la seule raison évoquée est qu'il y a des publicités agaçantes ».

Le mot de Google

« Avec les nouvelles règles de lecture automatique de Chrome, les développeurs ne doivent pas supposer que l'audio peut être joué avant une action de l'utilisateur », a déclaré Google à The Daily Dot dans un communiqué. « Avec le jeu dans Chrome, cela peut affecter Web Audio.Nous avons partagé des détails sur ce que les développeurs peuvent faire pour résoudre ce problème, et la conception de la politique a été publiée l'année dernière ».

Sources : DailyDot, Web Audio API

Et vous ?

Avez-vous développé ou participé au développent d'un jeu en ligne ? Êtes-vous affectés par cette nouvelle politique ?
Si oui, quelles sont les mesures que vous avez prises pour résoudre le problème ?

Voir aussi :

Chrome 66 bloquera la lecture automatique des contenus multimédias exécutés sur les pages web avec le son Google fait des recommandations à la suite
Chrome 66 débarque sur Windows, Mac et Linux et vient bloquer la lecture automatique des sites sous réserve de certaines conditions
Chrome va avertir les utilisateurs s'ils accèdent à des sites HTTPS utilisant des certificats SSL douteux, en vertu de la Certificate Transparency
Google Chrome apporte des modifications à l'interface utilisateur de son navigateur, les changements sont disponibles sur Chrome Canary
Chrome : l'outil de nettoyage intégré pourrait aussi analyser vos fichiers personnels et professionnels, Google s'explique sur son fonctionnement


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de _champy_ _champy_ - Membre du Club https://www.developpez.com
le 09/05/2018 à 19:09
Au centre du conflit figure la manière dont Chrome traite les objets Web Audio, qui sont désormais automatiquement suspendus lorsqu'une page Web démarre, empêchant ainsi la diffusion automatique des annonces.
Il sont un peu bêtes en même temps, il savent que les annonces sont au centre de l'expérience utilisateur ces dernier temps, mais non, ils persistent et signent avec ce modèle économique ignoble.

J'ai envie de dire bien fait et pour une fois merci google.
Avatar de Aiekick Aiekick - Membre chevronné https://www.developpez.com
le 10/05/2018 à 12:21
c'est ca le danger des monopoles. google de par ces outils gratuits un temps a le contrôle indirect sur énormément de compagnies.. et d'argent potentiel
Avatar de Michael Guilloux Michael Guilloux - Chroniqueur Actualités https://www.developpez.com
le 16/05/2018 à 12:55
Chrome 66 : Google supprime temporairement sa nouvelle politique de lecture automatique
mais uniquement pour l'API Web Audio

Comme annoncé depuis le mois de mars, Chrome 66 - disponible il y a un mois maintenant - bloque la lecture automatique des contenus multimédias exécutés sur les pages Web avec le son. Cette mesure vise à répondre à un problème que tous les internautes ont probablement déjà vécu et devrait donc être bien accueillie par ces derniers. Mais pour les développeurs, ce n'est pas forcément le cas.

Comme nous l'avons rapporté il y a quelques jours, la dernière mise à jour du navigateur de Google a eu des conséquences inattendues qui menacent de nombreux jeux vidéo basés sur le Web.

Avant Chrome 66, le son commençait à jouer soit quand la page Web contenant le multimédia était chargée (ce que déploraient les internautes), soit après que l'utilisateur ait cliqué sur le bouton « click to play » - ce qui est plutôt recommandé. Avec cette nouvelle version de Chrome, les jeux créés avec un moteur HTML5 (comme Pico-8, GameMaker, Unity ou Phaser) ne vont plus automatiquement jouer de son. C'est bien le comportement attendu, mais dans de nombreux cas, l'audio ne va pas jouer même quand l'utilisateur clique sur le bouton « click to play ». Et c'est ce qui est anormal.


Le problème est que cette mise à jour de Google nécessite que les développeurs modifient leur code, ce qui ne devrait pas être le cas d'après un développeur qui a rapporté ce problème sur le site du projet Chromium. Il estime que le changement de Google, qui nécessite que les développeurs fassent des modifications de code, « n'a aucun sens et a causé beaucoup de dysfonctionnements inutiles sur le Web » en plus de « rendre inutilement difficile la lecture audio. » Pour lui, Google pouvait obtenir le comportement attendu en autorisant la lecture audio lors du chargement d'une page sans interaction de l'utilisateur. Pour cela, « il suffit de couper le son de la sortie principale et de l'activer lors de la première interaction » de l'utilisateur, dit-il. « Cela permet toujours de ne pas entendre de son au chargement de la page. Cela n'assouplit pas du tout les restrictions. Cela ne rend pas plus facile d'abuser de la lecture audio », affirme-t-il. Mais en plus, « cela signifie simplement qu'aucun changement de code n'est nécessaire et que le contenu Web existant continue de fonctionner », a-t-il ajouté.

Après les critiques, Google a décidé de supprimer temporairement la règle de lecture automatique pour l'API Web Audio. Précisons en effet que les conséquences de la dernière mise à jour de Chrome sur les jeux vidéo basés sur le Web découlent de la manière dont cette version traite les objets Web Audio. Pour information, l'API Web Audio propose un système puissant et flexible pour contrôler les données audio sur Internet. Mais cette API ne vient pas remplacer l'élément HTML <audio> utilisé afin d'intégrer un contenu sonore dans un document, mais plutôt le compléter.

« Nous avons mis à jour Chrome 66 pour supprimer temporairement la règle de lecture automatique pour l'API Web Audio », annonce un ingénieur de Google dans la discussion sur ce problème. Le géant de l'Internet explique toutefois que cette modification n'affecte pas la plupart des lectures multimédia sur le Web, car la règle de lecture automatique reste active pour <video> et <audio>. « L'équipe [Chromium] travaille dur pour améliorer les choses pour les utilisateurs et les développeurs, mais dans ce cas-ci, nous n'avons pas réussi à communiquer sur l'impact de la nouvelle politique de lecture automatique aux développeurs utilisant l'API Web Audio », a-t-il reconnu.

Google dit alors faire ce changement pour donner aux développeurs utilisant l'API Web Audio (par exemple pour des jeux, des applications audio et certaines fonctionnalités RTC) plus de temps pour mettre à jour leur code. Ainsi, la politique de lecture automatique sera à nouveau appliquée à l'API Web Audio dans Chrome 70, au mois d'octobre. D'ici là, les développeurs doivent donc mettre à jour leur code en fonction des recommandations faites par Google à l'adresse : https://developers.google.com/web/up...anges#webaudio.

Source : Projet Chromium

Et vous ?

Que pensez-vous de cette exception temporaire pour l'API Web Audio ?
Ne pensez-vous pas que Google aurait pu mettre en œuvre sa politique sans que les développeurs modifient leur code ?

Voir aussi :

Intégration de l'API Picture-in-Picture pour afficher les vidéos flottantes : les tests sont en cours avec Chrome, Apple s'y intéresse également
Des employés de Google présentent leur démission, pour protester contre la participation de l'entreprise à un projet en IA du Pentagone
Chrome va avertir les utilisateurs s'ils accèdent à des sites HTTPS utilisant des certificats SSL douteux, en vertu de la Certificate Transparency
Google Chrome apporte des modifications à l'interface utilisateur de son navigateur, les changements sont disponibles sur Chrome Canary
Google va bannir du Chrome Web Store les extensions de minage de cryptomonnaies d'ici juin 2018, les nouvelles extensions ne sont plus acceptées
Contacter le responsable de la rubrique Accueil