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

Genel Bakış

Cast Web Receiver SDK'sı, çeşitli web akış protokollerini kullanarak içerik oynatmayı destekler. SDK, kullanılan protokole bağlı olarak içeriğin oynatılmasını sağlayacak bir oynatıcı yükler. HLS içeriği söz konusu olduğunda Media Player Library (MPL) yüklenir. DASH içeriklerinde Shaka Player yüklenir.

Bundan sonra Cast SDK ve Shaka Player mühendislik ekipleri, Shaka Player'da HLS içerik oynatma desteğini artırmak için çalışmalarını birleştirecek. MPL artık kritik güncelleme almayacak. Uygulamanızın HLS içerik oynatması için Shaka Player'ı kullanmayı etkinleştirmenizi öneririz.

Shaka Player avantajları

Uygulamalar, oyuncuları değiştirirken aşağıdaki avantajlardan yararlanır:

  • Yükleme süresi hatalarında ve gecikmede iyileştirmeler yapılarak kullanıcılar için daha güçlü akış oturumları
  • En yeni HLS özelliklerinin kullanıma sunulması devam ediyor.
  • Shaka Player'ın açık kaynak yapısı nedeniyle oyuncu-içerik uyumluluğu sorunlarında temel neden analizi daha net.
  • Açık kaynak oynatıcı kod tabanı, iş ortaklarının Shaka Player Projesi'ne katkıda bulunmasına olanak tanır.
  • Shaka Player'ın sürüm yayınlama sıklığı sık ve Web Receiver SDK'sının sürümlerinden bağımsız olduğundan özellik ve hata düzeltmelerinin üretime geçme süresinde önemli bir azalma
  • 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 odaklanan mühendislik kaynaklarıyla Google'dan daha fazla oynatma desteği.

Zaman çizelgesi

Web Receiver SDK'sı, HLS içerik oynatımı için varsayılan oynatıcı olarak Shaka Player'ı kullanmaya başlayacaktır. Bu işlem, iş ortaklarını taşıma sürecinde yönlendirmek için aşamalı bir yaklaşımla gerçekleştirilecektir.

Faz Başlangıç Tarihi Genel Bakış
1 Ekim 2022 Cast Web Receiver SDK'sı, Shaka Player'da HLS içeriği oynatmak için etkinleştirilecek API'leri kullanıma sunar.
2 2025 'in 1. yarısında Cast Web Receiver SDK'sı, HLS içeriği oynatmak için varsayılan oynatıcıyı Shaka Player olarak değiştirir.

Web Receiver SDK mühendislik ekipleri performans odaklı bir yaklaşım benimsiyor ve yalnızca Shaka Player'ın performansı MPL'nin temel performansıyla aynı seviyeye ulaştığında bir sonraki aşamaya geçecek. Bu değişiklikler cast-sdk-announcements google grubunda duyurulacak ve bu kılavuzda güncellenecektir.

Dahil ol

CAF sürümü 3.0.0105'ten itibaren, HLS oynatma için Shaka Player'ı kullanmak üzere kaydolma işlemini uygulama düzeyinde yapılandırabilirsiniz. Bu sürümde, yüklenecek desteklenen Shaka Player sürümleri arasından seçim yapmanızı sağlayan bir API de kullanıma sunulmuştur. Bu işaretler, useShakaForHls ve shakaVersion mülkleri aracılığıyla CastReceiverOptions sınıfında sağlanır ve CastReceiverContext başlatılırken değerlendirilir. HLS için Shaka'yı etkinleştiren tüm uygulamalar, en son HLS iyileştirmelerinden yararlanmak için en az 4.3.4 sürümüne sahip bir Shaka Player ayarlamalıdır. Etkinleştirmek için aşağıdaki kod snippet'ini uygulayın:

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

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

context.start(castReceiverOptions);

İçeriği doğrulama

İş ortakları, Shaka Player'ı üretim uygulamalarında kullanmayı tercih etmeden önce Shaka Player'da içerik oynatma işlemlerini doğrulamalıdır. Aşağıda listelenen içerik varyasyonlarının her birini test etmenizi öneririz:

  • Yayın türleri: CANLI veya VOD
  • Kapsayıcı biçimleri: TS, MP4 veya temel akışlar
  • Kesintili veya yerleşik reklam içeren içerikler
  • Aşağıdaki cihaz türlerinde oynatma: akıllı ekranlar, Chromecast dongle'ları, Android TV cihazları, Chromecast Entegre özellikli TV'ler, akıllı hoparlörler

Herhangi bir hata veya beklenmedik davranışla karşılaşırsanız hata kaydı gönderin. İçeriğinizde önemli oynatma hatası olmadığını doğruladıktan sonra değişiklikleri üretim ortamınıza aktarın.

Devre dışı bırak

Web Receiver SDK'sı, zaman çizelgesine göre Shaka Player HLS içerik oynatma için kapsam dışında kalma modeline geçecektir. useShakaForHls mülkünün varsayılan değeri false yerine true olarak değişir. Bu durumda uygulamalar, bu özelliği manuel olarak false olarak ayarlayarak HLS oynatma için MPL'yi kullanmayı seçebilir. CastReceiverContext başladığında Web Receiver SDK'sı, Shaka Player yerine MPL yüklemeye geri döner. Kapsam dışında kalmayı nasıl seçeceğinizi öğrenmek için aşağıdaki örneğe bakın:

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

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

context.start(castReceiverOptions);

Sorun bildirme

İş ortaklarımızı, HLS içeriğini oynatırken karşılaştıkları sorunları bildirmeye teşvik ediyoruz. Daha önce de belirtildiği gibi, MPL artık kritik güncellemeler almayacak. MPL ile ilgili herhangi bir sorunla karşılaşırsanız Shaka Player'a geçmenin sorununuzun çözülüp çözülmeyeceğini doğrulamak için rehberin Etkinleştirme bölümündeki adımları uygulayın. Sorun devam ediyorsa veya oynatıcı değiştirirken farklı bir sorunla karşılaşırsanız aşağıdaki adımları uygulayın.

  1. Sorunu çözmek için shakaVersion'yi farklı bir dal sürümüne ayarlamayı deneyin. Örneğin, sorun 4.3 dalında yaşanıyorsa 4.2.x veya 3.3.x sürümlerindeki en son sürüme ayarlamayı deneyin. En alakalı güncellemeleri içeren sürümleri bulmak için Shaka Player sürüm notlarını inceleyin. shakaVersion API'nin, referans dokümanlarında ayrıntılı olarak açıklandığı üzere minimum ve maksimum desteklenen bir sürümü olduğunu unutmayın. Gerileme 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. Web Receiver SDK'sı bir dizi varsayılan değer tanımlar ve uygulamaların PlaybackConfig nesnesindeki shakaConfig mülkü aracılığıyla bu yapılandırmayı değiştirmesine olanak tanır. Bu değer, oynatıcı örneği oluşturulduğunda yükleme sırasında değerlendirilir. Şu kategorideki diğerlerine bakın:

    uygulama yapılandırması ve seçenekleri. Web Receiver SDK'sı tarafından ayarlanan varsayılan değerler önerilen değerlerdir.

  3. Sorunun Shaka Player sorun takipçisinde veya Cast sorun takipçisinde bildirilip bildirilmediğini kontrol edin. Hatayı yorumlayın ve sorununuzu da açıklıyorsa ilgili bilgileri ekleyin.

  4. İçeriğinizi Shaka Player demo sitesinde test edin. Sorunun içeriğinizin demo sitesinde de tekrarlandığını fark ederseniz Shaka Player projesinde hata kaydı oluşturun.

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

SSS

Oyuncuları değiştirmek birçok soruyu beraberinde getirebilir. Taşıma sürecinde size yol göstermek için en sık sorulan soruların yanıtlarını aşağıda bulabilirsiniz.

Shaka Player'a geçmeli miyim?

HLS içeriği kullanan iş ortaklarımızın taşıma sürecini bir an önce başlatmalarını öneririz. Sonuç olarak, uygulamanız kullanıcılarınıza daha güçlü bir akış deneyimi sunar. Bu kılavuzun Shaka Player avantajları bölümünde daha fazla avantaj açıklanmaktadır. İş ortakları, sorunsuz bir geçiş sağlamak için uygulamalarının Shaka Player'ı kullanarak düzgün çalıştığını doğrulamalıdır. İş ortakları, içeriklerinin Shaka Player'da düzgün şekilde oynatıldığını önceden doğrulamazsa bazı uygulamalar Web Receiver SDK'sının devre dışı bırakma modeline geçişi nedeniyle risk altında olabilir.

Oyuncu değiştirirken ne kadar çaba gösterilmesi beklenir?

İş ortaklarının, kullanıcı deneyiminin HLS'ye kıyasla benzer veya daha iyi olduğundan emin olmak için uygulamalarını ve içeriklerini bir test ortamında test etmeleri gerekir. Bunun için iş ortaklarının, özelliği dahili bir ortamda etkinleştirmesi ve içeriklerinin Shaka Player'ı kullanarak oynatılabilmesini kapsamlı bir şekilde test etmesi gerekir. İçeriğinizin hangi yönlerine odaklanacağınız hakkında ayrıntılı bilgi için içerik doğrulama bölümüne bakın. Doğrulama yapıldıktan sonra iş ortaklarının, Shaka Player'ın sunduğu avantajlardan yararlanmaya başlamak için üretim uygulama ortamlarına etkinleştirme işaretini eklemesi gerekir. Genel olarak, iş ortaklarımızın başarılı bir şekilde geçiş yapması için minimum düzeyde yazılım geliştirme değişikliği ve çoğunlukla QA koşulları vardır.

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

Yeni entegrasyonlar, oynatma için Shaka Player'ı etkinleştirmelidir. Uygulamanız uzun vadede daha iyi desteklenir ve yeni HLS özelliklerinden ve performans iyileştirmelerinden yararlanır. Yeni entegrasyonunuzda sorun yaşıyorsanız mühendislik ekibine sorunu çözmesi için yeterli süre tanımak amacıyla en kısa sürede hata kaydı oluşturun. Başvurunuzun son tarihi yakınsa öncelik vermek için bu bilgiyi ve etkinin ne olduğunu hata raporuna ekleyin. Mühendislik ekibimiz, kullanıcılarınızın ihtiyaçlarını karşılayacak bir çözüm sunmak için çalışacaktır.

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

Shaka Player projesi veya Cast projesi için bir hata kaydı göndermeniz gerekir (Sorunları bildirme bölümüne bakın). Cast SDK mühendislik ekibi bu izleyicileri etkin bir şekilde izliyor ve mevcut sorunları çözmek için sizinle birlikte çalışıyor. Bu sorunların ne kadar erken tespit edildiği, düzeltme sunmak için ne kadar zamana sahip olacaklarını belirler.

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

MPL, geçmişte kritik güncellemeler aracılığıyla yeni HLS özelliklerini benimsemiş ve önemli hataları düzeltmiştir. MPL artık bu bilgileri almayacağından oynatıcıya yeni HLS özellikleri eklenmeyecek. Benzer şekilde, MPL'de HLS oynatmayla ilgili bildirilen sorunlar MPL'de düzeltilmez. Bu sorunlar, oynatma için Shaka Player'a geçildiğinde çözülecektir. Sorunlar devam ederse Shaka Player'da karşılaşılan ilgili sorunlarla ilgili bir hata kaydı oluşturulmalıdır. İş ortakları MPL'yi kullanmayı bırakmalıdır.

İçeriğimde Smooth Streaming protokolü kullanılıyor. Bu durum başvurumu nasıl etkiler?

MPL ikili dosyaları barındırılmaya devam eder ve alıcı uygulamanız tarafından erişilebilir. Ancak Smooth Streaming spesifikasyonu dört yıldan uzun süredir güncellenmediğinden, Smooth Streaming ile ilgili özellik istekleri ve hata düzeltmeleri desteklenmeyecek. İçeriğiniz için performans güncellemeleri ve destek almaya devam etmek üzere 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 başvurumu nasıl etkiler?

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