Wie YouTube die Videoleistung mit der Media Capabilities API verbessert hat

Für eine nahtlose Videowiedergabe auf allen Geräten.

François Beaufort
François Beaufort

In einem Test mit der Media Capabilities API konnte YouTube die MTBR um 7,1% steigern und die durchschnittliche Auflösung der ausgelieferten Videos sank um nur 0,4 %.

Das Problem

In der Regel haben Medienwebsites mehrere Varianten jedes Videos, die sie Nutzern mit unterschiedlichen Framerates, Auflösungen und Codecs codiert haben. Bis vor Kurzem mussten Webentwickler ausschließlich auf isTypeSupported() oder canPlayType() zurückgreifen, um zu bestimmen, ob die jeweilige Variante im Browser eines einzelnen Nutzers gespielt werden konnte. So konnte der Entwickler zwar ermitteln, ob Medien überhaupt abgespielt werden können, aber keine Hinweise auf die Wiedergabequalität, z. B. ob es zu Frame-Ausfällen oder zu hoher Akkuentladung des Geräts kommt. Ohne diese Informationen mussten Entwickler entweder ihre eigene Heuristik erstellen oder einfach davon ausgehen, dass ein Gerät, wenn ein Gerät eine Kombination aus Codec und Auflösung wiedergeben könnte, dies reibungslos und mit Energieeffizienz tun könnte. Bei Nutzern mit weniger leistungsfähigen Geräten führte dies häufig zu einer schlechten Nutzererfahrung.

Die Lösung

Mit der Media Capabilities API können Websites mehr Informationen zur Video-Decodierungsleistung des Clients abrufen und eine fundierte Entscheidung darüber treffen, welcher Codec und welche Auflösung dem Nutzer bereitgestellt werden sollen. Insbesondere liefert die API dem Entwickler eine Schätzung der Flüssigkeit und Energieeffizienz einer bestimmten Kombination aus Codec und Auflösung. Dadurch kann der Entwickler Szenarien vermeiden, in denen der Client wahrscheinlich eine schlechte Wiedergabequalität hat.

In Chrome verwendet die Media Capabilities API anhand von Messwerten früherer Wiedergaben, 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 der adaptiven Bitrate automatisch Auflösungen auswählt, die auf einem Gerät nicht reibungslos wiedergegeben werden können.

Nutzer, die zur Testgruppe gehörten, sahen insgesamt weniger Puffer (die durchschnittliche Zeit zwischen den Puffern (die durchschnittliche Zeit zwischen den Puffern, kurz MTBR) stieg um 7,1%), während die durchschnittliche Auflösung, gemessen an der Videohöhe, nur um 0,4 % abgenommen wurde. Der wesentliche Anstieg der MTBR mit der geringen entsprechenden Verringerung der durchschnittlichen Auflösung deutet darauf hin, dass diese Änderung die Qualität für eine kleine Gruppe von Nutzern, die zuvor eine schlechte Erfahrung hatten, deutlich verbessert hat.

Media Capabilities API auf Ihrer Website implementieren

Im offiziellen Beispiel sehen Sie, wie die Decoding Info API funktioniert.