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

Genel Bakış

Cast Web Receiver SDK, çeşitli web akışı protokolleri kullanılarak içerik oynatmayı destekler. Kullanılan protokole bağlı olarak SDK, 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çeriği söz konusu olduğunda Shaka Player yüklenir.

Bundan sonra Cast SDK ve Shaka Player mühendislik ekipleri, Shaka Player'da HLS içerik oynatımının desteklenmesini artırmak için çalışmalarını birleştirecek. MPL artık kritik güncellemeler almayacak. Uygulamanızın HLS içeriklerinin oynatılması için Shaka Player'ı kullanmayı etkinleştirmenizi öneririz.

Shaka Player'ın avantajları

Oyuncuları değiştirme konusunda uygulamalar aşağıdaki avantajlardan yararlanır:

  • Yükleme süresi hataları ve gecikme süresinde iyileştirmeler yapılarak kullanıcılar için daha sağlam yayın oturumları sunulur.
  • En yeni HLS özelliklerinin kullanılmaya devam etmesi.
  • Shaka Player'ın açık kaynaklı yapısı sayesinde oyuncu-içerik uyumluluğu sorunlarıyla ilgili temel neden analizinde daha fazla netlik.
  • 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 yayınlanma sıklığı sık ve Web Receiver SDK'nın yayınlarından bağımsız olduğundan özellik ve hata düzeltme süresinde önemli bir azalma.
  • shakaVersion API'nin sağladığı oynatma ortamı üzerinde daha fazla kontrol.
  • Google'dan artırılmış oynatma desteği: Yol haritasında belirtildiği gibi, Shaka Player'da HLS oynatmaya odaklanan mühendislik kaynakları.

Zaman çizelgesi

Web Receiver SDK, HLS içerik oynatma için varsayılan oynatıcı olarak Shaka Player'ı kullanmaya başlayacak. Bu işlem, iş ortaklarına geçiş sürecinde yol göstermek için aşamalı olarak gerçekleştirilecektir.

Faz Başlangıç Tarihi Genel Bakış
1 Eki 2022 Cast Web Receiver SDK'sı, Shaka Player'da HLS içeriklerinin oynatılması için API'ler sunar.
2 Kas 25 Cast Web Receiver SDK, HLS içerik oynatma için varsayılan oynatıcıyı Shaka Player olarak değiştirir.

Web Receiver SDK mühendislik ekipleri, performansa dayalı bir yaklaşım benimsemektedir ve yalnızca Shaka Player'ın performansı MPL'nin temel performansıyla aynı seviyeye geldiğinde bir sonraki aşamaya geçecektir. 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'dan itibaren, HLS oynatma için Shaka Player'ı kullanmayı etkinleştirmek üzere uygulama düzeyinde bir yapılandırma bulunur. Bu sürüm, yüklenecek Shaka Player sürümlerinin desteklenen aralığından seçim yapmaya olanak tanıyan bir API'yi de kullanıma sunar. Bu işaretler, 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 için en az 4.15.12 sürümünde bir Shaka Player sürümü ayarlamalıdır. Özelliği etkinleştirmek için aşağıdaki kod snippet'ini kullanın:

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

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

context.start(castReceiverOptions);

İçeriği doğrulama

İş ortakları, üretim uygulamalarında Shaka Player'ı kullanmayı etkinleştirmeden önce içeriklerinin Shaka Player'da oynatılmasını doğrulamalıdır. İçeriğinizdeki aşağıdaki varyasyonların her birini test etmenizi öneririz:

  • Akış türleri: CANLI veya VOD
  • Kapsayıcı biçimleri: TS, MP4 veya temel akışlar
  • Kesintili veya yerleştirilmiş reklamlar içeren içerik
  • Aşağıdaki cihaz türlerinde oynatma: akıllı ekranlar, Google Cast dongle'ları, Android TV cihazları, Google Cast özellikli TV'ler, akıllı hoparlörler

Herhangi bir hata veya beklenmeyen davranışla karşılaşırsanız hata bildiriminde bulunun. İçeriğinizde kritik oynatma hataları olmadığını doğruladıktan sonra değişiklikleri üretim ortamınıza aktarın.

Devre dışı bırak

Web Receiver SDK, zaman çizelgesine göre Shaka Player HLS içeriklerinin oynatılması için devre dışı bırakma modeline geçiş yapacak. useShakaForHls özelliği, varsayılan değerini false yerine true olarak değiştirecek. Bu sırada uygulamalar, bu özelliği manuel olarak false olarak ayarlayarak HLS oynatma için MPL'yi kullanmayı seçebilir. CastReceiverContext başlatıldığında Web Receiver SDK, Shaka Player yerine MPL'yi yüklemeye geri döner. Kapsam dışında kalma işleminin nasıl yapılacağını öğ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çeriklerini oynatırken karşılaştıkları sorunları bildirmeye teşvik ediyoruz. Belirtildiği gibi, MPL artık kritik güncellemeler almayacak. MPL ile ilgili sorunlar yaşarsanız Shaka Player'a geçmenin sorununuzu çözüp çözmeyeceğini doğrulamak için rehberin Etkinleştirme bölümündeki adımları uygulayın. Sorun devam ediyorsa veya oynatıcılar arasında geçiş yaparken farklı bir sorunla karşılaşırsanız aşağıdaki adımları uygulayın.

  1. Sorunu çözmek için shakaVersion öğesini farklı bir dal sürümüne ayarlamayı deneyin. Örneğin, sorun 4.15 dalında yaşanıyorsa başka bir daldaki en son sürümü 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 belgelerinde ayrıntılı olarak açıklandığı gibi desteklenen minimum ve maksimum sürümü olduğunu unutmayın. Regresyon olduğunu fark ederseniz sorunu Shaka Player Issue Tracker'da 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, bir dizi varsayılan değer tanımlar ve uygulamaların PlaybackConfig nesnesindeki shakaConfig özelliği aracılığıyla bu yapılandırmayı değiştirmesine olanak tanır. Bu, oynatıcı örneği oluşturulduğunda yükleme süresi boyunca değerlendirilir. Daha fazla bilgiyi Uygulama yapılandırması ve seçenekleri başlıklı makalede bulabilirsiniz. Web Alıcı SDK'sı tarafından ayarlanan varsayılan değerler önerilen değerlerdir.
  3. Sorunun Shaka Player sorun izleyicisinde veya Cast sorun izleyicisinde bildirilip bildirilmediğini kontrol edin. Hata hakkında yorum yapın ve sorununuzu da açıklıyorsa ilgili bilgileri ekleyin.
  4. İçeriğinizi Shaka Player demo sitesinde test edin. İçeriğinizin demo sitesinde sorunun tekrarlandığını görürseniz Shaka Player projesiyle ilgili bir hata kaydı oluşturun.
  5. Cast uç noktalarında Shaka Player'a özgü bir sorun yaşıyorsanız Cast Sorun İzleyici'de hata bildiriminde bulunun.

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çeriklerini kullanan iş ortaklarımızın taşıma sürecini en kısa sürede başlatmasını öneririz. Bu sayede uygulamanız, kullanıcılarınıza daha iyi bir yayın deneyimi sunar. Diğer avantajlar bu kılavuzun Shaka Player avantajları bölümünde açıklanmıştır. İş ortakları, sorunsuz bir geçiş için uygulamalarının Shaka Player ile 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ğrulamadıkları takdirde bazı uygulamalar, Web Receiver SDK'sıkapsam dışında kalma modeline geçiş yaptığında risk altında olabilir.

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

İş 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. Bunu yapmak için iş ortaklarının dahili bir ortamda özelliği etkinleştirmesi ve içeriklerinin Shaka Player kullanılarak oynatılabildiğini kapsamlı bir şekilde test etmesi gerekir. İçeriğinizin hangi yönlerine odaklanmanız gerektiği hakkında ayrıntılı bilgi için içeriği doğrulama başlıklı makaleyi inceleyin. Doğrulandıktan sonra iş ortaklarının, Shaka Player'ın sunduğu avantajlardan yararlanmaya başlamak için üretim uygulaması ortamlarına etkinleştirme işaretini eklemeleri gerekir. Genel olarak, iş ortaklarımızın başarılı bir şekilde taşıma yapması için minimum düzeyde yazılım geliştirme değişikliği ve çoğunlukla kalite güvencesi gereksinimleri vardır.

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

Yeni entegrasyonlarda oynatma için Shaka Player'ın kullanılması gerekir. Uygulamanız uzun vadede daha iyi desteklenir ve yeni HLS özelliklerinden ve performans iyileştirmelerinden de yararlanır. Yeni entegrasyonunuzda sorun yaşıyorsanız mühendislik ekibine sorunu çözmek için yeterli zamanı tanımak üzere en kısa sürede hata bildiriminde bulunun. Uygulamanızın son tarihi yakında ise bu bilgiyi hata raporuna ekleyin ve buna göre öncelik vermek için hatanın etkisini de belirtin. Mühendislik ekibimiz, kullanıcılarınıza yeterli destek sağ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 projesiyle ilgili bir hata kaydı oluşturmalısınız (bkz. Sorunları bildirme). Cast SDK mühendislik ekibi bu izleyicileri aktif olarak izliyor ve mevcut sorunları çözmek için sizinle birlikte çalışıyor. Bu sorunlar ne kadar erken tespit edilirse düzeltme sunmak için o kadar fazla zamanları olur.

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

MPL, geçmişte yeni HLS özelliklerini kullanıma sunmak ve büyük hataları düzeltmek için kritik güncellemeler yayınlamıştır. MPL artık bu özellikleri 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çilerek çözülmelidir. Sorunlar devam ederse Shaka Player'da karşılaşılan ilgili sorunlarla ilgili bir hata kaydı oluşturulmalıdır. İş ortakları MPL kullanımını bırakmalıdır.

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

MPL ikilileri, alıcı uygulamanız tarafından barındırılmaya ve erişilmeye devam eder. Ancak Smooth Streaming spesifikasyonu dört yıldan uzun süredir güncellenmediği için Smooth Streaming ile ilgili özellik istekleri ve hata düzeltmeleri desteklenmeyecektir. İçeriğinizle ilgili performans güncellemeleri ve destek almaya devam etmek için 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ızda bu akış protokollerinden biri kullanılmıyorsa taşıma işleminden etkilenmezsiniz. Uygulamanızda herhangi bir değişiklik yapmanız gerekmez.