Shaka Oynatıcı Taşımasında HLS

Genel bakış

Cast Web Alıcı SDK'sı, çeşitli web akış protokolleri kullanarak içeriğin oynatılmasını destekler. Kullanılan protokole bağlı olarak SDK, içeriğin oynatılması için bir oynatıcı yükler. HLS içeriği söz konusu olduğunda Media Player Kitaplığı (MPL) yüklenir. DASH içeriği söz konusu olduğunda Shaka Oynatıcı yüklenir.

Cast SDK'sı ve Shaka Player mühendislik ekipleri, bundan sonra Shaka Player'da HLS içeriklerinin oynatılmasına yönelik desteği artırmak için güçlerini birleştirmektedir. MPL artık kritik güncellemeleri almayacaktır. Uygulamanızın HLS içeriklerinin oynatılması için Shaka Player'ı kullanmayı etkinleştirmenizi öneririz.

Shaka Player'ın avantajları

Uygulamalar, oynatıcıları değiştirirken aşağıdaki avantajlardan yararlanır:

  • Yükleme süresi hataları ve gecikme iyileştirmeleriyle kullanıcılar için daha güçlü akış oturumları.
  • En yeni HLS özelliklerinin kullanılmaya devam etmesi.
  • Shaka Player'ın açık kaynak yapısı nedeniyle oyuncu içeriği uyumluluğu sorunları için kök neden analizinde daha net netlik.
  • Açık kaynaklı oynatıcı kod tabanı, iş ortaklarının Shaka Player Projesi'ne katkıda bulunmasına olanak tanır.
  • Shaaka Player'ın yayınlanma sıklığı sıklıkla ve Web Alıcı SDK'sının sürümlerinden bağımsızdır. Bu nedenle özellik ve hata düzeltme üretim süresinde önemli ölçüde kısalma.
  • shakaVersion API'si tarafından sağlanan oynatma ortamı üzerinde daha fazla kontrol.
  • Yol haritasında görüldüğü gibi Shaka Player'da HLS oynatmaya odaklı mühendislik kaynakları sayesinde Google'dan artırılmış oynatma desteği.

Zaman çizelgesi

Web Alıcı SDK'sı, HLS içerik oynatma için varsayılan oynatıcı olarak Shaka Player'ı kullanmaya başlayacaktır. Bu süreç, iş ortaklarına geçiş sürecinde rehberlik edecek aşamalı bir yaklaşımla gerçekleştirilecektir.

Faz Başlangıç Tarihi Genel bakış
1 Eki 2022 Cast Web Alıcı SDK'sı, Shaka Player'da HLS içeriğini oynatmak için etkinleştirilebilecek API'ler sunar.
2 2024 'ün 2. yarısı Cast Web Alıcı SDK'sı, HLS içeriği oynatma için varsayılan oynatıcıyı Shaka Player olarak değiştirir.

Web Alıcı SDK'sı mühendislik ekipleri performans odaklı bir yaklaşım izler ve yalnızca Shaka Player'ın performansı MPL'nin temel performansıyla eşit olduğunda bir sonraki aşamaya geçer. Bu değişiklikler cast-sdk-announcements google group'da duyurulacak ve bu kılavuzda güncellenecektir.

Dahil ol

CAF 3.0.0105 sürümünden itibaren, Shaka Player'ı HLS oynatma için kullanmayı etkinleştirmek için uygulama düzeyinde bir yapılandırma vardır. Bu sürümde, yüklemek için desteklenen Shaka Player sürümleri arasından seçim yapabileceğiniz bir API de kullanıma sunuluyor. Bu flag'ler CastReceiverOptions sınıfında useShakaForHls ve shakaVersion özellikleri aracılığıyla sağlanır ve CastReceiverContext başlatıldığında değerlendirilir. HLS için Shaka'yı etkinleştiren tüm uygulamalar, en son HLS iyileştirmelerinden yararlanmak üzere Shaka Player'ın en az 4.3.4 sürümünü ayarlamalıdır. Bu özelliği etkinleştirmek için aşağıdaki kod snippet'ini izleyin:

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = true;

context.start(castReceiverOptions);

İçeriği doğrulayın

İş ortakları, üretim uygulamalarında Shaka Player'ı kullanmayı seçmeden önce içeriklerinin Shaka Player'da oynatılmasını doğrulamalıdır. İçeriklerinizin aşağıda listelenen her bir varyasyonunu test etmenizi öneririz:

  • Yayın türleri: CANLI veya VOD
  • Kapsayıcı biçimleri: TS, MP4 veya temel akışlar
  • Süreksizlikler veya yerleştirilmiş reklam içeren içerikler
  • Şu cihaz türlerinde oynatma: akıllı ekranlar, Chromecast donanım anahtarları, Android TV cihazları, Chromecast Entegre özellikli TV'ler, akıllı hoparlörler

Hata veya beklenmeyen davranış bulursanız hata bildiriminde bulunun. İçeriğinizde kritik oynatma hatası olmadığını doğruladıktan sonra değişiklikleri üretim ortamınıza aktarın.

Devre dışı bırak

Web Alıcı SDK'sı, Shaka Player HLS içeriği oynatma için zaman çizelgesine uygun bir devre dışı bırakma modeline geçecektir. useShakaForHls özelliği, false olan varsayılan değerini true olarak değiştirecek. Bu tarihte uygulamalar, bu özelliği manuel olarak false değerine ayarlayarak HLS oynatma için MPL kullanmayı seçebilir. CastReceiverContext başlatıldığında Web Alıcı SDK'sı, Shaka Player yerine MPL yüklemeye geri döner. Nasıl devre dışı bırakacağınızı öğrenmek için aşağıdaki örneği inceleyin:

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = false;

context.start(castReceiverOptions);

Sorun bildirme

İş ortaklarımıza, HLS içeriklerini oynatırken buldukları sorunları bildirmelerini öneririz. Daha önce de belirtildiği gibi, MPL artık kritik güncellemeleri almayacak. MPL'de herhangi bir sorunla karşılaşırsanız Shaka Player'a geçiş yaptığınızda sorununuzun engellenip engellenmeyeceğini doğrulamak için kılavuzun Etkinleştir bölümündeki adımları uygulayın. Sorun devam ediyorsa veya oynatıcıları değiştirirken farklı bir sorunla karşılaşırsanız aşağıdaki adımları uygulayın.

  1. Sorunu çözmek için shakaVersion'i farklı bir dal sürümüne ayarlamayı deneyin. Örneğin, sorun 4.3 dalında yaşanıyorsa sorunu 4.2.x veya 3.3.x dalındaki en son sürüme ayarlamayı deneyin. En alakalı güncellemelere sahip sürümleri bulmak için Shaka Player sürüm notlarına bakın. shakaVersion API'nin, referans belgelerinde açıklandığı gibi minimum ve maksimum desteklenen bir sürüm olduğunu unutmayın. Regresyon olduğunu gözlemlerseniz sorunu Shaka Player sorun izleyicisinde bildirin.
  2. Oynatıcı yapılandırma parametrelerini değiştirmeyi deneyin. Shaka Player, PlayerConfiguration nesnesi aracılığıyla yapılandırılabilir. WebReceiver SDK'sı bir dizi varsayılan değer tanımlar ve uygulamaların bu yapılandırmayı PlaybackConfig nesnesindeki shakaConfig özelliği aracılığıyla değiştirmesini sağlar. Bu değer, oynatıcı örneğinin oluşturulduğu yükleme süresi sırasında değerlendirilir. Şu kategorideki diğerlerine bakın:

    uygulama yapılandırması ve seçenekleri hakkında daha fazla bilgi edinin. Web Receiver SDK'sı tarafından ayarlanan varsayılan değerler, önerilen değerlerdir.

  3. Sorunun Shaka Player sorun izleyicide veya Cast sorunu izleyicide bildirilip bildirilmediğine bakın. Hataya yorum yapın ve sorununuzu açıklıyorsa ilgili bilgileri ekleyin.

  4. İçeriğinizi Shaka Player demo sitesinde test edin. Sorunun, içeriğinizle ilgili demo sitesinde yeniden oluşturulduğunu tespit ederseniz Shaka Player projesinde hata başvurusunda bulunun.

  5. Yayın uç noktalarında Shaka Player'a özel bir sorun yaşıyorsanız Yayın Sorun İzleyici'de hata bildiriminde bulunun.

SSS

Oyuncuların değişmesi çok fazla soruyu beraberinde getirir. Aşağıda, taşıma sürecinde size yardımcı olacak en sık sorulan soruların yanıtlarını bulabilirsiniz.

Shaka Player'a geçmeli miyim?

HLS içeriği kullanan iş ortaklarımızın taşıma sürecini mümkün olduğunca kısa süre içinde başlatmalarını öneririz. Sonuç olarak uygulamanız, kullanıcılarınıza daha güçlü bir akış deneyimi sunar. Diğer avantajlar, bu kılavuzun Shaka Player avantajları bölümünde açıklanmıştır. İş ortakları, sorunsuz bir geçiş sağlamak için Shaka Player'ı kullanarak uygulamalarının düzgün çalıştığını doğrulamalıdır. İş ortakları içeriklerinin Shaka Player'da düzgün şekilde oynatıldığını doğrulamazsa bazı uygulamalar, Devre dışı bırakma modeline geçme riskiyle karşı karşıya kalabilir.

Oyuncu değiştirirken beklenen çaba düzeyi ne?

İş ortaklarının, kullanıcı deneyiminin HLS ile karşılaştırıldığında benzer veya iyileştirilmiş olduğundan emin olmak için uygulamalarını ve içeriklerini bir test ortamında test etmesi gerekecektir. Bunu yapmak için iş ortaklarının dahili bir ortamda özelliği etkinleştirmesi ve içeriklerinin Shaka Player ile oynatılıp oynatılamayacağını kapsamlı bir şekilde test etmeleri gerekir. İçeriğinizin hangi yönlerine odaklanılacağıyla ilgili ayrıntılar için içeriği doğrulama bölümünü inceleyin. Doğrulandıktan sonra iş ortaklarının, Shaka Player'ın sunduğu avantajlardan yararlanmaya başlamak için üretim uygulama ortamlarına kaydolmak için işareti eklemeleri gerekir. Üst düzeyde, iş ortaklarımızın başarılı bir şekilde geçiş yapması için minimum yazılım geliştirme değişikliği ve çoğunlukla KG gereksinimleri bulunur.

Uygulamam yakında içerik akışı için HLS'yi kullanacak. Ne yapmalıyım?

Oynatma için yeni entegrasyonlarda Shaka Player'ın etkinleştirilmesi gerekir. Uygulamanız uzun vadede daha iyi desteklenecek ve yeni HLS özellikleri ile performans iyileştirmelerinden de yararlanacaktır. Yeni entegrasyonunuzda sorunlar yaşanıyorsa mühendislik ekibine sorunu çözmesi için yeterli zaman tanımak amacıyla en kısa sürede hata bildiriminde bulunun. Başvurunuzun kesin bir son teslim tarihi varsa hem bu bilgiyi hata raporuna ekleyin hem de sorunun etkisini buna göre önceliklendirin. Mühendislik ekibimiz, kullanıcılarınızı uygun şekilde desteklemek için bir çözüm sunmak üzere çalışacaktır.

İçeriğim veya uygulamam Shaka Player ile çalışmıyor. Şimdi ne yapmalıyım?

Shaka Player Projesi'ne veya Cast projesine hata bildiriminde bulunmanız gerekir (Sorun bildirme bölümüne bakın). Cast SDK'sı mühendislik ekibi, bu izleyicileri aktif olarak izlemekte ve mevcut sorunları çözmek için sizinle birlikte çalışacaktır. Bu sorunlar ne kadar erken tespit edilirse çözüm sunmaları için o kadar uzun süre tanınır.

MPL artık kritik güncellemeleri almıyor. Bu durum tam olarak ne anlama geliyor?

MPL, geçmişte yeni HLS özelliklerini benimsedi ve kritik güncellemeler aracılığıyla büyük hatalara yama uyguladı. MPL artık bunları almayacağı için oynatıcıya yeni HLS özellikleri eklenmeyecektir. Benzer şekilde, MPL'de HLS oynatma için bildirilen sorunlar MPL'de düzeltilmez. Bu sorunlar, oynatma için Shaka Player'a geçilerek çözülür. Sorunlar devam ederse Shaka Player'da karşılaşılan sorunlarla birlikte hata bildirilmelidir. İş ortakları, MPL'yi kullanmayı bırakmalıdır.

İçeriğim Smooth Streaming protokolü kullanıyor, bu durum uygulamamı nasıl etkiler?

MPL ikili programları, alıcı uygulamanız tarafından barındırılmaya ve erişilebilir olmaya devam eder. Ancak Smooth Streaming spesifikasyonu dört yıldan uzun bir süredir güncellenmediğinden Smooth Streaming ile ilgili özellik istekleri ve hata düzeltmeleri desteklenmeyecektir. İçeriğiniz için performans güncellemeleri ve destek almaya devam etmek istiyorsanız içeriğinizi DASH veya HLS akış protokolünü kullanacak şekilde taşımanızı öneririz.

İçeriğimde HLS veya Smooth Stream protokolleri kullanılmıyor, bu durum uygulamamı nasıl etkiler?

İçerik kitaplığınız bu akış protokollerinin hiçbirini kullanmıyorsa taşıma işleminden etkilenmezsiniz. Uygulamanızda herhangi bir değişiklik yapmanız gerekmez.