Como o YouTube melhorou o desempenho do vídeo com a API Media Capabilities

Garantir a reprodução de vídeo suave em todos os dispositivos.

François Beaufort
François Beaufort

Em um experimento com a API Media Capabilities, o YouTube teve um aumento de 7,1% na MTBR com apenas uma redução de 0,4% na resolução média dos vídeos veiculados.

O problema

Normalmente, os sites de mídia têm várias variantes de cada vídeo que podem ser apresentadas aos usuários, codificadas em diferentes taxas de frames, resoluções e codecs. Até recentemente, os desenvolvedores da Web precisavam confiar apenas em isTypeSupported() ou canPlayType() para determinar se cada variante poderia ser reproduzida no navegador de um usuário individual. Embora isso informasse ao desenvolvedor se a mídia poderia ser reproduzida, ele não fornecia uma indicação da qualidade de reprodução, como se haveria quedas de frames ou esgotamento da bateria do dispositivo. Sem essas informações, os desenvolvedores precisavam criar as próprias heurísticas ou simplesmente presumir que, se um dispositivo pudesse reproduzir uma combinação de codec/resolução, ele poderia fazer isso sem problemas e com eficiência de energia. Para usuários com dispositivos menos capazes, isso muitas vezes levava a uma experiência ruim.

A solução

A API Media Capabilities permite que os sites recebam mais informações sobre o desempenho de decodificação de vídeo do cliente e tomem uma decisão informada sobre qual codec e resolução entregar ao usuário. Especificamente, a API fornece ao desenvolvedor uma estimativa da fluidez e eficiência de energia de uma combinação específica de codec e resolução. Isso permite que o desenvolvedor evite cenários em que o cliente provavelmente terá uma experiência de reprodução ruim.

No Chrome, a API Media Capabilities usa métricas de reproduções anteriores para prever se as reproduções futuras no mesmo codec e na mesma resolução serão decodificadas sem problemas.

Estudo de caso do YouTube

O YouTube usou a API Media Capabilities para evitar que o algoritmo de taxa de bits adaptativa selecionasse automaticamente resoluções que um dispositivo não conseguia reproduzir sem problemas.

Os usuários que faziam parte do grupo experimental tiveram menos rebuffers (o tempo médio entre rebuffers, ou MTBR, aumentou 7,1%), enquanto a resolução média, medida pela altura do vídeo, exibida para o grupo agregado diminuiu apenas 0,4%. O aumento substancial no MTBR com a pequena redução correspondente na resolução média indica que essa mudança melhorou significativamente a qualidade para um pequeno subconjunto de usuários que antes tinham uma experiência ruim.

Como implementar a API Media Capabilities no seu site

Confira o exemplo oficial para saber como a API Decoding Info funciona.