Garantire una riproduzione video fluida su tutti i dispositivi.
In un esperimento con l'API Media Capabilities, YouTube ha registrato un aumento del 7,1% dell'MTBR con una diminuzione solo dello 0,4% della risoluzione media dei video pubblicati.
Il problema
In genere, i siti di media hanno diverse varianti di ciascun video che possono presentare agli utenti, codificate con frequenze fotogrammi, risoluzioni e codec differenti. Fino a poco tempo fa, gli sviluppatori web dovevano affidarsi esclusivamente a isTypeSupported()
o canPlayType()
per stabilire se ogni variante poteva essere riprodotta nel browser di un singolo utente.
Anche se questo messaggio comunicava allo sviluppatore se era possibile riprodurre i contenuti multimediali, non ha fornito indicazioni sulla qualità di riproduzione, ad esempio sull'eventuale presenza di cali di fotogrammi o di consumo eccessivo della batteria del dispositivo. Senza queste informazioni, gli sviluppatori dovevano
creare la propria euristica o basarsi solo sul presupposto che, se un dispositivo era in grado di riprodurre
una combinazione di codec/risoluzione, avrebbe potuto farlo in modo fluido e con efficienza energetica.
Per gli utenti con dispositivi meno capaci, questo spesso causava un'esperienza negativa.
La soluzione
L'API Media Capabilities consente ai siti web di ottenere maggiori informazioni sulle prestazioni di decodifica dei video del cliente e di prendere una decisione informata su quale codec e risoluzione fornire all'utente. Nello specifico, l'API fornisce allo sviluppatore una stima della fluidità e dell'efficienza energetica di una particolare combinazione di codec e risoluzione. Ciò consente allo sviluppatore di evitare scenari in cui è probabile che il client abbia un'esperienza di riproduzione scadente.
In Chrome, l'API Media Capabilities utilizza le metriche delle riproduzioni precedenti per prevedere se le riproduzioni future nello stesso codec e alla stessa risoluzione verranno decodificate senza problemi.
Case study di YouTube
YouTube ha utilizzato l'API Media Capabilities per impedire all'algoritmo della velocità in bit adattiva di selezionare automaticamente le risoluzioni che un dispositivo non poteva riprodurre in modo fluido.
Gli utenti che facevano parte del gruppo sperimentale hanno registrato complessivamente meno frequenti rebuffers (il tempo medio tra i rebuffer o MTBR, aumentato del 7,1%) mentre la risoluzione media, misurata in base all'altezza del video, è diminuita solo dello 0,4%. Il sostanziale aumento dell'MTBR con la piccola corrispondente riduzione della risoluzione media indica che questa modifica ha migliorato significativamente la qualità per un piccolo sottoinsieme di utenti che in precedenza ha avuto un'esperienza negativa.
Implementazione dell'API Media Capabilities sul tuo sito
Dai un'occhiata all'esempio ufficiale per scoprire come funziona l'API Decoding Info.