Blokując autoodtwarzanie wideo, Google zepsuło dźwięk w przeglądarkowych grach

Strona główna Aktualności
Ucho z depositphotos
Ucho z depositphotos

O autorze

Google na poważnie wzięło się za walkę z automatycznym odtwarzaniem filmów z dźwiękiem na stronach internetowych. Cel szczytny, nikt przecież nie lubi jak mu nagle w środku nocy któraś z kart zacznie hałasować. Sposób w jaki jednak deweloperzy Chrome’a podchodzą do tej walki dowodzi, że w ogóle nie zwracają uwagi na skutki uboczne. Wprowadzone przez nich zmiany zepsuły wiele webowych gier, przypominając, że HTML5 jest tylko papierowym standardem, a wszystko i tak zależy od producenta przeglądarki.

Rosnące problemy z uruchamianiem wtyczki Flash w przeglądarkach sprawiły, że praktycznie wszystkie nowe powstające gry webowe tworzone są w HTML5. To już nie taki problem jak w niemowlęcych czasach standardu, dostępne są narzędzia automatycznie generujące kod i świetne silniki, takie jak Unity, Phaser, Pico-8 czy GameMaker. Przeniesiono też sporo klasycznych flashowych gier. Wszystko to jednak nagle przestało działać w Chrome 66. Może „przestało działać” to za mocno powiedziane, po prostu brakuje w nich dźwięku. A co to za przyjemność grać bez dźwięku?

Problem tkwi w tym, jak Chrome obsługuje obiekty WebAudio. Po ostatniej aktualizacji są one automatycznie spauzowane po załadowaniu strony. Dzięki temu nie usłyszymy nachalnego dźwięku z filmów ładowanych w tle. Jednak oznacza to też, że webowe gry muszą zrestartować uprzednio załadowane obiekty WebAudio, kiedy gracz startuje grę – i to nawet wtedy, gdy w grze nie było żadnego automatycznego odtwarzania dźwięku.

No dobrze, ale skąd twórcy gier mieliby o tym wiedzieć? Z dokumentacji… którą Google zaktualizowało dopiero w lutym br. Co prawda Google twierdzi, że informowało o tym na swoim blogu deweloperskim we wrześniu 2017 r., ale jak odkrył Andi McClure, twórca jednej z popsutych gier, informacji o WebAudio w tym wpisie we wrześniu nie było – zostały dopisane wiele miesięcy później. Czy Google oczekuje, że ludzie będą śledzić zmiany w starych wpisach na firmowym blogu?

Większość nie śledziła, więc w konsekwencji gry przestały działać… chyba że akurat były hostowane na stronach z białej listy Google’a. Trzeba bowiem wiedzieć, że automatyczne blokowanie dźwięku nie jest wcale tak bardzo automatyczne. Firma z Mountain View wybrała około tysiąca witryn, na których największy odsetek użytkowników odtwarzał filmy z dźwiękiem. Na nich Chrome 66 niczego nie blokuje. Jak słusznie podejrzewacie, pierwsze miejsce na tej białej liście zajmuje YouTube. W końcu nie chcielibyśmy, by przeglądarka wyciszyła reklamy wideo z tego serwisu, prawda?

Dostosowanie gry do nowych wymogów najpopularniejszej przeglądarki na świecie nie jest wielkim problemem od strony programistycznej, powiedzmy że jest to 15 minut roboty. Powiedzmy… o ile deweloper ma dostęp do kodu źródłowego i serwera, na którym gra jest hostowana. Gry które zostały porzucone przez deweloperów, gry których nie ma jak zaktualizować wskutek braku dostępu do serwera, pozostaną w Chrome na zawsze „nieme”.

To osobliwy przypadek naruszenia otwartego standardu HTML5. Nowoczesne przeglądarki miały implementować go w jak najbardziej poprawny sposób, tak aby pozwolić na poprawne uruchamianie webowego oprogramowania bez względu na to, co wydarzy się w przyszłości. Chyba jednak nie możemy mieć takich dobrych rzeczy. Programista Benner Foddy, autor QWOP, jednej z popsutych gier, napisał dosadnie na Twitterze: to moment bez precedensu, w którym niewielki zespół twórców przeglądarki niszczy wielki zbiór dzieł kultury zbudowanych na otwartych standardach. Ciężko wskazać w historii cokolwiek porównywalnego, cokolwiek z tak niewielkim moralnym usprawiedliwieniem.

Flash Player był jaki był, ale trzeba sobie powiedzieć jedno: nie robił niespodzianek programistom. Na najnowszych wersjach odtwarzacza można wciąż uruchomić gry i multimedia stworzone w latach 90. Na szczęście niezadowoleni z implementacji HTML5 w Google Chrome są dziś w lepszej sytuacji niż ci, którzy byli pod koniec lat 90 niezadowoleni z Internet Explorera – mogą śmiało sięgnąć po konkurencyjnego Firefoksa.

© dobreprogramy