Migrasi HLS Di Shaka Player

Ringkasan

Cast Web Receiver SDK mendukung pemutaran konten menggunakan beberapa protokol streaming web. Berdasarkan protokol yang digunakan, SDK memuat pemutar untuk menangani pemutaran konten. Dalam hal konten HLS, Library Pemutar Media (MPL) dimuat. Untuk konten DASH, Shaka Player akan dimuat.

Ke depannya, tim engineer Cast SDK dan Shaka Player akan menggabungkan upaya untuk meningkatkan dukungan pemutaran konten HLS di Shaka Player. MPL tidak akan lagi menerima update penting. Sebaiknya Anda memilih untuk menggunakan Shaka Player untuk pemutaran konten HLS aplikasi Anda.

Manfaat Shaka Player

Saat mengubah pemain, aplikasi akan memanfaatkan manfaat berikut:

  • Sesi streaming yang lebih andal untuk pengguna, dengan peningkatan kegagalan waktu pemuatan dan latensi.
  • Lanjutan penerapan fitur HLS terbaru.
  • Meningkatkan kejelasan dalam analisis akar masalah untuk masalah kompatibilitas pemutar-konten karena sifat open source Shaka Player.
  • Codebase pemutar open source memungkinkan partner untuk berkontribusi ke Project Shaka Player.
  • Pengurangan waktu yang signifikan untuk fitur dan perbaikan bug hingga produksi karena ritme rilis Shaka Player sering dan tidak bergantung pada rilis Web Receiver SDK.
  • Kontrol yang lebih besar atas lingkungan pemutaran yang disediakan oleh shakaVersion API.
  • Peningkatan dukungan pemutaran dari Google dengan resource engineering yang berfokus pada pemutaran HLS di Shaka Player seperti yang terlihat di roadmap.

Linimasa

Web Receiver SDK akan bertransisi untuk menggunakan Shaka Player sebagai pemutar default untuk pemutaran konten HLS. Hal ini akan dilakukan dalam pendekatan bertahap untuk memandu partner melalui proses migrasi.

Fase Tanggal Mulai Ringkasan
1 Okt '22 Cast Web Receiver SDK memperkenalkan API untuk ikut serta guna memutar konten HLS di Shaka Player.
2 K1 '25 Cast Web Receiver SDK mengubah pemutar default menjadi Shaka Player untuk pemutaran konten HLS.

Tim engineering Web Receiver SDK menggunakan pendekatan yang berfokus pada performa dan hanya akan melanjutkan ke fase berikutnya jika performa Shaka Player setara dengan performa dasar MPL. Perubahan ini akan diumumkan di grup google cast-sdk-announcements dan diperbarui di panduan ini.

Ikut serta

Mulai dari CAF versi 3.0.0105, ada konfigurasi tingkat aplikasi untuk ikut serta menggunakan Shaka Player untuk pemutaran HLS. Versi ini juga memperkenalkan API untuk memilih dari rentang versi Shaka Player yang didukung untuk dimuat. Flag ini disediakan di class CastReceiverOptions melalui properti useShakaForHls dan shakaVersion, serta dievaluasi saat CastReceiverContext dimulai. Setiap aplikasi yang memilih untuk menggunakan Shaka untuk HLS harus menetapkan versi Shaka Player minimal 4.3.4 untuk memanfaatkan peningkatan HLS terbaru. Untuk memilih ikut serta, ikuti cuplikan kode di bawah:

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

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

context.start(castReceiverOptions);

Memvalidasi konten

Partner harus memvalidasi pemutaran konten mereka di Shaka Player sebelum memilih untuk menggunakan Shaka Player di aplikasi produksi mereka. Sebaiknya uji setiap variasi dalam konten Anda yang tercantum di bawah:

  • Jenis streaming: LIVE atau VOD
  • Format penampung: streaming TS, MP4, atau elemen
  • Konten dengan iklan sematan atau yang tidak berkelanjutan
  • Pemutaran di jenis perangkat berikut: layar smart, dongle Chromecast, perangkat Android TV, TV yang dilengkapi Chromecast, speaker smart

Jika Anda menemukan error atau perilaku yang tidak terduga, laporkan bug. Setelah Anda dapat memverifikasi bahwa tidak ada kegagalan pemutaran kritis dalam konten, kirimkan perubahan ke lingkungan produksi.

Nonaktifkan

Web Receiver SDK akan bertransisi ke model keikutsertaan untuk pemutaran konten HLS Shaka Player sesuai dengan linimasa. Properti useShakaForHls akan mengubah nilai defaultnya dari false menjadi true. Pada saat itu, aplikasi dapat memilih untuk menggunakan MPL untuk pemutaran HLS dengan menetapkan properti ini secara manual ke false. Saat CastReceiverContext dimulai, Web Receiver SDK akan kembali memuat MPL, bukan Shaka Player. Lihat contoh di bawah untuk mengetahui cara memilih tidak ikut:

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

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

context.start(castReceiverOptions);

Laporkan masalah

Sebaiknya partner kami melaporkan masalah apa pun yang mereka temukan saat memutar konten HLS. Seperti yang disebutkan, MPL tidak akan lagi menerima update penting. Jika ada masalah dengan MPL, ikuti langkah-langkah di bagian Ikut serta dalam panduan untuk memverifikasi apakah beralih ke Shaka Player akan menghentikan masalah Anda. Ikuti langkah-langkah di bawah jika masalah masih ada atau jika Anda mengalami masalah lain saat beralih pemain.

  1. Coba tetapkan shakaVersion ke versi cabang yang berbeda untuk menyelesaikan masalah. Misalnya, jika masalah terjadi di cabang 4.3, coba tetapkan ke rilis terbaru dalam versi 4.2.x atau 3.3.x. Lihat catatan rilis Shaka Player untuk menemukan rilis dengan update yang paling relevan. Perhatikan bahwa shakaVersion API memiliki versi minimum dan maksimum yang didukung seperti yang dijelaskan dalam dokumentasi referensi. Jika Anda mengamati bahwa ada regresi, laporkan masalah tersebut di issuetracker Shaka Player.
  2. Coba ubah parameter konfigurasi pemutar. Shaka Player dapat dikonfigurasi melalui objek PlayerConfiguration. Web Receiver SDK menentukan kumpulan nilai default dan memungkinkan aplikasi mengubah konfigurasi ini melalui properti shakaConfig dalam objek PlaybackConfig. Hal ini dievaluasi selama waktu pemuatan saat instance pemain dibuat. Lihat lainnya di

    konfigurasi dan opsi aplikasi. Nilai default yang ditetapkan oleh Web Receiver SDK adalah nilai yang direkomendasikan.

  3. Lihat apakah masalah telah dilaporkan di issuetracker Shaka Player atau issuetracker Cast. Berikan komentar tentang bug dan tambahkan informasi yang relevan jika bug tersebut juga menjelaskan masalah Anda.

  4. Uji konten Anda di situs demo Shaka Player. Jika Anda menemukan bahwa masalah tersebut muncul kembali di situs demo untuk konten Anda, laporkan bug ke project Shaka Player.

  5. Laporkan bug di Issue Tracker Transmisi jika Anda mengalami masalah unik pada Shaka Player di endpoint transmisi.

FAQ

Mengubah pemain dapat menimbulkan banyak pertanyaan. Di bawah ini, Anda akan menemukan jawaban atas pertanyaan umum untuk membantu memandu Anda melalui proses migrasi.

Haruskah saya bermigrasi ke Shaka Player?

Sebaiknya partner kami yang menggunakan konten HLS memulai proses migrasi sesegera mungkin. Hasilnya, aplikasi Anda akan memberikan pengalaman streaming yang lebih andal bagi pengguna. Manfaat lainnya diuraikan di bagian Manfaat Shaka Player dalam panduan ini. Partner harus memverifikasi bahwa aplikasi mereka berfungsi dengan benar menggunakan Shaka Player untuk memastikan transisi yang lancar. Beberapa aplikasi mungkin berisiko saat Web Receiver SDK bertransisi ke model tidak ikut jika partner tidak memverifikasi bahwa konten mereka diputar dengan benar di Shaka Player terlebih dahulu.

Berapa tingkat upaya yang diharapkan saat mengganti pemain?

Partner harus menguji aplikasi dan konten mereka di lingkungan pengujian untuk memastikan bahwa pengalaman pengguna serupa atau lebih baik jika dibandingkan dengan HLS. Untuk melakukannya, partner harus mengaktifkan fitur ini di lingkungan internal dan menguji secara menyeluruh bahwa konten mereka dapat diputar menggunakan Shaka Player. Lihat memvalidasi konten untuk mengetahui detail tentang aspek konten yang harus difokuskan. Setelah divalidasi, partner harus menambahkan tanda untuk ikut serta di lingkungan aplikasi produksi mereka untuk mulai memanfaatkan manfaat yang disediakan oleh Shaka Player. Pada tingkat tinggi, ada perubahan pengembangan software minimal dan sebagian besar persyaratan QA agar partner kami berhasil melakukan migrasi.

Aplikasi saya akan segera menggunakan HLS untuk melakukan streaming konten. Apa yang harus saya lakukan?

Integrasi baru harus memilih untuk menggunakan Shaka Player untuk pemutaran. Aplikasi Anda akan didukung dengan lebih baik dalam jangka panjang dan juga akan memanfaatkan fitur HLS baru dan peningkatan performa. Jika integrasi baru Anda mengalami masalah, laporkan bug sesegera mungkin agar tim engineering memiliki cukup waktu untuk menyelesaikan masalah tersebut. Jika aplikasi Anda memiliki batas waktu yang ketat, sertakan informasi tersebut dalam laporan bug serta dampaknya untuk memprioritaskannya sebagaimana mestinya. Tim engineer kami akan berupaya memberikan solusi untuk mendukung pengguna Anda secara memadai.

Konten atau aplikasi saya tidak berfungsi dengan Shaka Player, apa yang harus saya lakukan?

Anda harus melaporkan bug ke Project Shaka Player atau project Cast (lihat Melaporkan masalah). Tim engineering Cast SDK secara aktif memantau pelacak ini dan akan bekerja sama dengan Anda untuk menyelesaikan masalah yang ada. Makin cepat masalah ini terdeteksi, makin banyak waktu yang dimiliki untuk memberikan perbaikan.

MPL tidak lagi menerima update penting, apa sebenarnya yang dimaksud dengan hal tersebut?

Secara historis, MPL telah mengadopsi fitur HLS baru dan memperbaiki bug utama melalui update penting. Setelah MPL tidak lagi menerimanya, fitur HLS baru tidak akan ditambahkan ke pemutar. Demikian pula, masalah apa pun yang dilaporkan untuk pemutaran HLS di MPL tidak akan diperbaiki di MPL. Masalah ini akan diatasi dengan beralih ke Shaka Player untuk pemutaran. Jika masalah berlanjut, bug harus dilaporkan dengan masalah yang relevan yang dihadapi di Shaka Player. Partner harus berhenti menggunakan MPL.

Konten saya menggunakan protokol Smooth Streaming, bagaimana pengaruhnya terhadap aplikasi saya?

Biner MPL akan tetap dihosting dan dapat diakses oleh aplikasi penerima Anda. Namun, permintaan fitur dan perbaikan bug terkait Smooth Streaming tidak akan didukung karena spesifikasi Smooth Streaming belum diperbarui selama lebih dari empat tahun. Sebaiknya migrasikan konten Anda untuk menggunakan protokol streaming DASH atau HLS agar dapat terus menerima pembaruan performa dan dukungan untuk konten Anda.

Konten saya tidak menggunakan protokol HLS atau Smooth Stream. Bagaimana pengaruhnya terhadap aplikasi saya?

Jika library konten Anda tidak menggunakan salah satu protokol streaming tersebut, migrasi tidak akan memengaruhi Anda. Tidak ada perubahan yang diperlukan dalam aplikasi Anda.