Garantisce una riproduzione video fluida su tutti i dispositivi.
In un esperimento con l'API Media Capabilities, YouTube ha registrato un aumento del 7,1% del MTBR con una diminuzione dello 0,4% della risoluzione media dei video pubblicati.
Il problema
In genere, i siti multimediali hanno diverse varianti di ogni video che possono presentare agli utenti, codificate con frequenze fotogrammi, risoluzioni e codec diversi. Fino a poco tempo fa, gli sviluppatori web dovevano fare affidamento esclusivamente su isTypeSupported()
o canPlayType()
per determinare se ogni variante poteva essere riprodotta nel browser di un singolo utente.
Sebbene questo indicasse allo sviluppatore se i contenuti multimediali potevano essere riprodotti, non forniva un'indicazione sulla qualità della riproduzione, ad esempio se si verificavano cadute di frame o scarica della batteria del dispositivo. Senza queste informazioni, gli sviluppatori dovevano creare le proprie strategie di euristica o semplicemente presumere che, se un dispositivo poteva riprodurre una combinazione di codec/risoluzione, potesse farlo senza problemi e in modo efficiente dal punto di vista energetico.
Per gli utenti con dispositivi meno potenti, questo spesso ha comportato un'esperienza negativa.
La soluzione
L'API Media Capabilities consente ai siti web di ottenere maggiori informazioni sul rendimento della decodifica video del cliente e di prendere una decisione consapevole su quale codec e risoluzione offrire all'utente. Nello specifico, l'API fornisce allo sviluppatore una stima della scorrevolezza e dell'efficienza energetica di una determinata combinazione di codec e risoluzione. In questo modo, lo sviluppatore può evitare scenari in cui il client rischia di avere un'esperienza di riproduzione scadente.
In Chrome, l'API Media Capabilities utilizza le metriche delle riproduzioni precedenti per predire se le riproduzioni future nello stesso codec e con la stessa risoluzione verranno decodificate senza problemi.
Case study di YouTube
YouTube ha utilizzato l'API Media capabilities per impedire al proprio algoritmo di velocità in bit adattiva di selezionare automaticamente risoluzioni che un dispositivo non poteva riprodurre senza problemi.
Gli utenti che facevano parte del gruppo sperimentale hanno registrato collettivamente una frequenza inferiore dei ricaricamenti (il tempo medio tra un ricaricamento e l'altro, o MTBR, è aumentato del 7,1%), mentre la risoluzione media, misurata in base all'altezza del video, mostrata al gruppo aggregato è diminuita solo dello 0,4%. L'aumento sostanziale del MTBR con la piccola riduzione corrispondente della risoluzione media indica che questa modifica ha migliorato notevolmente la qualità per un piccolo sottoinsieme di utenti che in precedenza avevano un'esperienza negativa.
Implementare l'API Media Capabilities sul tuo sito
Consulta l'esempio ufficiale per scoprire come funziona l'API Decoding Info.