YouTube, Media Capabilities API ile video performansını nasıl iyileştirdi?

Tüm cihazlarda videoların sorunsuz oynatılmasını sağlar.

François Beaufort
François Beaufort

Media Capabilities API ile yapılan bir denemede, YouTube, yayınlanan videoların ortalama çözünürlüğünde yalnızca% 0,4 düşüşle MTBR'de% 7,1 artış elde etti.

Sorun

Genellikle medya siteleri, her videonun farklı kare hızları, çözünürlükler ve codec'lerle kodlanmış birkaç varyantını kullanıcılara sunabilir. Yakın zamana kadar web geliştiricilerinin, her varyantın tek bir kullanıcının tarayıcısında oynatılıp oynatılmayacağını belirlemek için yalnızca isTypeSupported() veya canPlayType() kullanması gerekiyordu. Bu, geliştiriciye medyanın oynatılıp oynatılamayacağını söylese de oynatma kalitesiyle ilgili bilgi (ör. kare atlama veya cihazın pilinin tükenip tükenmeyeceği) sağlamaz. Bu bilgiler olmadan geliştiricilerin kendi sezgisel yaklaşımlarını oluşturmaları veya bir cihazın bir codec/çözünürlük kombinasyonunu oynatabiliyorsa bunu sorunsuz ve güç verimliliğiyle yapabileceğini varsaymaları gerekiyordu. Bu durum, daha az özellikli cihazlara sahip kullanıcılar için genellikle kötü bir deneyime neden oluyordu.

Çözüm

Media Capabilities API, web sitelerinin istemcinin video kod çözme performansı hakkında daha fazla bilgi edinmesine ve kullanıcıya hangi codec'i ve çözünürlüğü sunacağı konusunda bilinçli bir karar vermesine olanak tanır. Özellikle, API geliştiriciye belirli bir codec ve çözünürlük kombinasyonunun akıcılığı ve güç verimliliği hakkında bir tahmin sağlar. Bu sayede geliştirici, istemcinin kötü bir oynatma deneyimi yaşama olasılığının yüksek olduğu senaryolardan kaçınabilir.

Chrome'da Media Capabilities API, aynı codec'te ve aynı çözünürlükte yapılacak oynatma işlemlerinin sorunsuz bir şekilde kod çözüp çözülmeyeceğini tahmin etmek için önceki oynatma işlemlerinden elde edilen metrikleri kullanır.

YouTube Örnek Olayları

YouTube, uyarlanabilir bit hızı algoritmasının cihazın sorunsuz oynatamayacağı çözünürlükleri otomatik olarak seçmesini önlemek için Media Capabilities API'yi kullandı.

Deneme grubundaki kullanıcılar, toplu olarak daha seyrek yeniden arabelleğe alma işlemi gördü (yeniden arabelleğe alma işlemleri arasındaki ortalama süre veya MTBR %7, 1 arttı), toplu gruba sunulan video yüksekliğiyle ölçülen ortalama çözünürlük ise yalnızca %0, 4 oranında düştü. Ortalama çözünürlükte küçük bir düşüşle birlikte MTBR'de görülen önemli artış, bu değişikliğin daha önce kötü bir deneyim yaşayan küçük bir kullanıcı alt kümesi için kaliteyi önemli ölçüde iyileştirdiğini gösteriyor.

Sitenizde Media Capabilities API'yi uygulama

Kod Çözme Bilgisi API'sinin nasıl çalıştığını görmek için resmi örneke göz atın.