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

Videoların tüm cihazlarda sorunsuz şekilde oynatılmasını sağlar.

François Beaufort
François Beaufort

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

Sorun

Medya siteleri genellikle her videonun kullanıcılara sunabilecekleri, farklı kare hızları, çözünürlükler ve codec'ler ile kodlanmış çeşitli varyantlara sahiptir. Yakın zamana kadar web geliştiricileri, her bir varyantın belirli bir kullanıcının tarayıcısında oynatılıp oynatılamayacağını belirlemek için yalnızca isTypeSupported() veya canPlayType() özelliklerini kullanmak zorundaydı. Bu çözüm, geliştiriciye medyanın herhangi bir şekilde oynatılıp oynatılamayacağını söylerdi ancak oynatma kalitesiyle ilgili bir gösterge (ör. karede düşüş olup olmadığı veya cihazın pili bitip bitmesi gibi) sağlamıyordu. Bu bilgiler olmadan, geliştiricilerin kendi buluşsal yöntemlerini oluşturmaları veya bir cihaz codec/çözünürlük kombinasyonunu oynatabilecekse bunu sorunsuz ve güç verimliliğiyle yapabileceğini varsaymaları gerekirdi. Bu durum, kapasitesi düşük cihazlara sahip kullanıcılar için genellikle kötü bir deneyime neden oluyordu.

Çözüm

Media Capabilities API, web sitelerinin istemcinin video kodu çözme performansı hakkında daha fazla bilgi almasına ve kullanıcıya hangi codec'i ve çözünürlük sunulacağı 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ğine dair bir tahmin sunar. Bu, geliştiricinin, istemcinin kötü bir oynatma deneyimi yaşayabileceği senaryolardan kaçınmasına olanak tanır.

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

YouTube Örnek Olayı

YouTube, uyarlanabilir bit hızı algoritmasının, cihazın sorunsuz oynatamadığı çözünürlükleri otomatik olarak seçmesini önlemek için MediaCapabilities API'yi kullanmıştır.

Deneme amaçlı grubun parçası olan kullanıcılar, toplu olarak daha az yeniden arabelleğe alma sıklığı (yeniden arabelleğe alma veya MTBR arasındaki ortalama süre %7, 1 artarken) elde ederken video yüksekliğiyle ölçülen ortalama çözünürlük, toplu gruba sunulan reklam grubunda yalnızca %0, 4 azaldı. Ortalama çözünürlükdeki karşılık gelen küçük düşüşle birlikte MTBR'deki önemli artış, bu değişikliğin daha önce kötü bir deneyim yaşamış küçük bir kullanıcı alt grubu için kaliteyi önemli ölçüde artırdığını gösterir.

Media Capabilities API'yi sitenize uygulama

Decoding Info API'nin nasıl çalıştığını görmek için resmi örneğe göz atın.