Für eine reibungslose Videowiedergabe auf allen Geräten
In einem Test mit der Media Capabilities API konnte YouTube die MTBR um 7,1% steigern, wobei die durchschnittliche Auflösung der ausgelieferten Videos nur um 0,4% zurückging.
Das Problem
Üblicherweise haben Medienwebsites mehrere Varianten jedes Videos, die sie Nutzern präsentieren können, die mit unterschiedlichen Framerates, Auflösungen und Codecs codiert sind. Bis vor Kurzem mussten sich Webentwickler ausschließlich auf isTypeSupported()
oder canPlayType()
verlassen, um festzustellen, ob die jeweilige Variante im Browser eines einzelnen Nutzers gespielt werden konnte.
So konnte der Entwickler zwar sehen, ob Medien überhaupt abgespielt werden konnten, aber es gab auch keinen Hinweis auf die Wiedergabequalität, z. B. ob es zu Frameabbrüchen oder einer schnellen Akkuentladung des Geräts kommt. Ohne diese Informationen mussten Entwickler entweder ihre eigenen Heuristiken erstellen oder einfach davon ausgehen, dass ein Gerät reibungslos und energieeffizient arbeiten könnte, wenn es eine Codec/Auflösungs-Kombination wiedergeben könnte.
Für Nutzer mit weniger leistungsfähigen Geräten führte dies häufig zu einer schlechten Nutzererfahrung.
Die Lösung
Über die Media Capabilities API erhalten Websites weitere Informationen zur Video-Decodierungsleistung des Clients und können eine fundierte Entscheidung darüber treffen, welchen Codec und welche Auflösung sie an den Nutzer liefern sollen. Insbesondere bietet die API dem Entwickler eine Schätzung der Flüssigkeit und Effizienz einer bestimmten Codec- und Auflösungskombination. So kann der Entwickler Szenarien vermeiden, in denen der Client wahrscheinlich eine schlechte Wiedergabequalität hat.
In Chrome nutzt die Media Capabilities API Messwerte aus vorherigen Wiedergaben, um vorherzusagen, ob künftige Wiedergaben mit demselben Codec und derselben Auflösung reibungslos decodiert werden.
YouTube-Fallstudie
YouTube hat die Media Capabilities API verwendet, um zu verhindern, dass der Algorithmus für adaptive Bitraten automatisch Auflösungen auswählt, die auf einem Gerät nicht störungsfrei abgespielt werden konnten.
Nutzer, die Teil der Testgruppe waren, sahen gemeinsam weniger häufig Zwischenspeichern (die mittlere Zeit zwischen Puffern stieg um 7,1 % an). Die durchschnittliche Auflösung, gemessen an der Videohöhe, ging hingegen nur um 0,4 % zurück. Der erhebliche Anstieg der MTBR mit der geringen, entsprechenden Reduzierung der durchschnittlichen Auflösung deutet darauf hin, dass diese Änderung die Qualität für eine kleine Gruppe von Nutzern, die zuvor schlechte Erfahrungen gemacht hatten, erheblich verbessert hat.
Media Capabilities API auf Ihrer Website implementieren
Im offiziellen Beispiel sehen Sie, wie die Decoding Info API funktioniert.