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

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

Faruk Mercan
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'lük bir düşüş yaşanırken MTBR'de% 7,1'lik bir artış gördü.

Sorun

Medya siteleri genellikle her videonun kullanıcılara farklı kare hızlarında, çözünürlüklerde ve codec'lerle kodlanmış çeşitli varyantlarına sahiptir. Yakın zamana kadar, web geliştiricileri her bir varyantın bireysel bir kullanıcının tarayıcısında oynatılıp oynatılamayacağını belirlemek için yalnızca isTypeSupported() veya canPlayType() kullanmak zorundaydı. Bu şekilde geliştiriciye medyanın oynatılıp oynatılamayacağı belirtilse de, oynatma kalitesine dair (kare düşmesi olup olmadığı veya cihazın pilinin bitip bitmeyeceği gibi) bir gösterge sağlamıyordu. Bu bilgiler olmadan, geliştiricilerin kendi buluşsal yöntemlerini oluşturmaları veya bir cihazın Codec/çözünürlük kombinasyonunu oynatabildiği durumlarda bunu sorunsuz ve güç verimliliğiyle yapabileceğini varsayması gerekiyordu. Bu durum, daha az özellikli cihazlara sahip kullanıcılar için genellikle kötü bir deneyime neden olur.

Çözüm

Media Capabilities API, web sitelerinin istemcinin video kod çözme performansı hakkında daha fazla bilgi edinmesine ve kullanıcıya hangi codec ve çözünürlüğün iletileceği konusunda bilinçli bir karar vermesine olanak tanır. Özellikle API, geliştiriciye belirli bir codec ve çözünürlük kombinasyonunun sorunsuzluğu ve güç verimliliğiyle ilgili 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 gelecekteki oynatmaların kodunun sorunsuz şekilde çözülüp çözülmeyeceğini tahmin etmek için önceki oynatmalara ait metrikleri kullanır.

YouTube Başarılı Örneği

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

Deneme grubuna katılan kullanıcılar toplu olarak yeniden arabelleğe alma sıklığının daha az olduğunu (yeniden arabelleğe alma işlemleri veya MTBR arasındaki ortalama süre %7, 1 oranında artırıldı) gördü. Öte yandan, video yüksekliğine göre ölçülen ortalama çözünürlük, toplam gruba sunulanlar kadar yalnızca %0, 4 oranında azaldı. MTBR'deki önemli artışa karşılık gelen ortalama çözünürlük düşüşü, bu değişikliğin daha önce kötü bir deneyim yaşamış küçük bir kullanıcı alt kümesinin kaliteyi önemli ölçüde artırdığını göstermektedir.

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.