نقل بيانات مشغِّل HLS في Shaka

نظرة عامة

تتيح حزمة تطوير البرامج (SDK) لجهاز استقبال الويب Cast تشغيل المحتوى باستخدام عدة بروتوكولات بث على الويب. استنادًا إلى البروتوكول المستخدَم، تُحمّل حزمة تطوير البرامج (SDK) مشغّلاً لمعالجة تشغيل المحتوى. وفي حالة محتوى HLS، يتم تحميل Media Player Library (MPL). وفي حالة محتوى DASH، يتم تحميل Shaka Player.

ومن الآن فصاعدًا، يوحّد الفريق الهندسي لحزمة تطوير البرامج (SDK) لتقنية البث وبرنامج Shaka Player الفريق الهندسي لتعزيز إمكانية عرض محتوى HLS على Shaka Player. لن تتلقّى MPL التحديثات المُهمة بعد ذلك. لذلك، ننصحك بالموافقة على استخدام Shaka Player لتشغيل محتوى HLS في تطبيقك.

مزايا Shaka Player

عند تغيير اللاعبين، تستفيد التطبيقات من المزايا التالية:

  • جلسات بث أكثر فعالية للمستخدمين، مع تحسينات في الإخفاقات في وقت التحميل ووقت الاستجابة.
  • مواصلة استخدام أحدث ميزات HLS:
  • زيادة الوضوح في تحليل الأسباب الأساسية لمشاكل التوافق مع محتوى المشغّل بسبب طبيعة برنامج Shaka Player المفتوح المصدر
  • يتيح قاعدة رموز المشغّلات المفتوحة المصدر للشركاء المساهمة في مشروع Shaka Player.
  • انخفاض بشكل كبير في الوقت اللازم لمعالجة المشاكل والأخطاء في عملية الإنتاج، لأنّ وتيرة إصدار Shaka Player متكرّرة ومستقلة عن إصدارات حزمة Web Receiver SDK.
  • مزيد من التحكّم في بيئة التشغيل التي توفّرها واجهة برمجة التطبيقات shakaVersion:
  • توفير إمكانية تشغيل أكبر من Google من خلال توفير مراجع هندسية تركّز على تشغيل البث المباشر وفق بروتوكول HTTP (HLS) في Shaka Player، كما أوضحنا في خطة تحقيق الأهداف

المخطط الزمني

ستنتقل حزمة تطوير البرامج (SDK) الخاصة بجهاز الاستقبال على الويب إلى استخدام Shaka Player كمشغّل تلقائي لتشغيل محتوى HLS. وسيتم إجراء ذلك على أساس مرحلي لتوجيه الشركاء خلال عملية النقل.

المرحلة Start Date نظرة عامة
1 تشرين الأول (أكتوبر) 2022 توفّر حزمة تطوير البرامج (SDK) لجهاز استقبال الويب لتكنولوجيا Google Cast واجهات برمجة تطبيقات لتفعيل محتوى HLS على مشغّل Shaka Player.
2 النصف الثاني من عام 2024 تعمل حزمة تطوير البرامج (SDK) الخاصة بجهاز استقبال الويب للبث على تغيير المشغّل التلقائي إلى مشغِّل Shaka لتشغيل محتوى HLS.

تتّبع الفِرق الهندسية لحزمة تطوير البرامج (SDK) الخاصة بأجهزة استقبال الويب نهجًا يستند إلى الأداء، وستنتقل فقط إلى المرحلة التالية عندما يكون أداء Shaka Player مقارنةً بالأداء الأساسي لـ MPL. سيتم الإعلان عن هذه التغييرات في مجموعة Googlecast-sdk-annations وتعديلها في هذا الدليل.

التفعيل

بدءًا من الإصدار 3.0.0105 من CAF، ستتوفر إعدادات على مستوى التطبيق للتفعيل لاستخدام Shaka Player لتشغيل المحتوى وفق بروتوكول HTTP (HLS). يوفّر هذا الإصدار أيضًا واجهة برمجة تطبيقات للاختيار من بين مجموعة متوافقة من إصدارات Shaka Player التي يمكن تحميلها. تتوفر هذه العلامات في الفئة CastReceiverOptions من خلال السمتَين useShakaForHls وshakaVersion، ويتم تقييمها عند بدء استخدام CastReceiverContext. في حال تفعيل Shaka لتطبيق HLS، يجب ضبط إصدار Shaka Player من 4.3.4 على الأقل للاستفادة من أحدث تحسينات HLS. لتفعيل الميزة، اتّبِع مقتطف الرمز أدناه:

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

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

context.start(castReceiverOptions);

التحقُّق من صحة المحتوى

على الشركاء أن يتحققوا من صحة تشغيل المحتوى على Shaka Player قبل الموافقة على استخدام Shaka Player في تطبيق الإنتاج. وننصح باختبار كل شكل من الأشكال المختلفة للمحتوى أدناه:

  • أنواع البث: "بث مباشر" أو "فيديوهات مسجّلة"
  • تنسيقات الحاويات: TS أو MP4 أو مجموعات البث الأولية
  • المحتوى الذي يتضمّن توقّفًا أو إعلانات مُضمَّنة
  • التشغيل على أنواع الأجهزة التالية: الشاشات الذكية، ومفاتيح Chromecast الإلكترونية، وأجهزة Android TV، وأجهزة التلفزيون المزوّدة بتقنية Chromecast Built-in، ومكبّرات الصوت الذكية

إذا وجدت أي أخطاء أو سلوك غير متوقع، يمكنك الإبلاغ عن خطأ. بعد أن تتحقق من عدم وجود إخفاقات ملحّة في تشغيل المحتوى، افرض التغييرات على بيئة الإنتاج.

إيقاف

سيتم نقل حزمة تطوير برامج استقبال الويب إلى نموذج لإيقاف تشغيل محتوى Shaka Player HLS وفقًا للمخطط الزمني. ستغيّر السمة useShakaForHls قيمتها التلقائية من false إلى true. في ذلك الوقت، يمكن للتطبيقات اختيار استخدام MPL لتشغيل بروتوكول HLS من خلال ضبط هذه السمة يدويًا على false. عند بدء تشغيل CastReceiverContext، ستعود حزمة تطوير البرامج (SDK) لـ Web افتراضية (SDK) إلى تحميل MPL بدلاً من Shaka Player. يُرجى الاطّلاع على النموذج أدناه لمعرفة كيفية الإيقاف:

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

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

context.start(castReceiverOptions);

الإبلاغ عن المشاكل

ونحن نشجّع شركائنا على الإبلاغ عن أي مشاكل يتم رصدها عند تشغيل محتوى HLS. وكما أسلفنا، لن تتلقّى MPL بعد الآن التحديثات المُهمّة. إذا واجهت أيّ مشاكل في MPL، يُرجى اتّباع الخطوات الواردة في قسم التفعيل في الدليل للتأكّد ممّا إذا كان التبديل إلى Shaka Player سيؤدي إلى إزالة حظر المشكلة. اتّبِع الخطوات أدناه إذا كانت المشكلة لا تزال قائمة أو إذا واجهت مشكلة مختلفة عند تبديل المشغّلات.

  1. جرِّب ضبط shakaVersion على إصدار فرعي مختلف لحل المشكلة. على سبيل المثال، إذا حدثت المشكلة في فرع 4.3، جرِّب ضبطها على أحدث إصدار في الإصدارَين 4.2.x أو 3.3.x. يمكنك الاطّلاع على ملاحظات إصدار Shaka Player للاطّلاع على الإصدارات التي تتضمّن التحديثات الأكثر صلة. يُرجى العِلم أنّ واجهة برمجة التطبيقات shakaVersion تتضمّن الحدّ الأدنى والحد الأقصى للإصدار المتوافق كما هو موضّح في المستندات المرجعية. إذا لاحظت حدوث انحدار، يمكنك الإبلاغ عن المشكلة في Shaka Player issuetracker.
  2. حاوِل تغيير معلَمات إعداد المشغّل. ويمكن ضبط Shaka Player من خلال الكائن PlayerConfiguration. تحدد حزمة تطوير البرامج (SDK) لجهاز استقبال الويب مجموعة من القيم التلقائية وتسمح للتطبيقات بتعديل هذه الإعدادات من خلال السمة shakaConfig في الكائن PlaybackConfig. يتم تقييم ذلك أثناء وقت التحميل عند إنشاء مثيل المشغّل. الاطّلاع على المزيد في

    إعدادات التطبيق وخياراته. والقيم التلقائية التي تحدّدها حزمة تطوير برامج استقبال الويب هي القيم المقترَحة.

  3. تحقَّق مما إذا تم الإبلاغ عن المشكلة من خلال أداة تتبع مشاكل Shaka Player أو من خلال أداة تتبُّع مشاكل البث. علّق على الخطأ وأضف أي معلومات ذات صلة إذا كانت تصف مشكلتك أيضًا.

  4. اختبِر المحتوى الخاص بك على موقع Shaka Player الإلكتروني التجريبي. إذا وجدت أن المشكلة تتكرّر في الموقع الإلكتروني التجريبي للمحتوى الخاص بك، عليك الإبلاغ عن خطأ باستخدام مشروع Shaka Player.

  5. يمكنك الإبلاغ عن خطأ في "أداة تتبُّع مشاكل البث" إذا كنت تواجه مشكلة فريدة في Shaka Player عند نقاط نهاية البث.

الأسئلة الشائعة

من الممكن أن يثير تغيير اللاعبين الكثير من الأسئلة. ستجد أدناه الأسئلة الأكثر شيوعًا التي تمت الإجابة عنها للمساعدة في إرشادك خلال عملية النقل.

هل يجب عليّ الانتقال إلى Shaka Player؟

وننصح شركائنا الذين يستخدمون محتوى HLS ببدء عملية النقل في أقرب وقت ممكن. نتيجة لذلك، سيوفر تطبيقك تجربة بث أكثر فعالية للمستخدمين. تم توضيح المزيد من الفوائد في قسم مزايا شاكا Player من هذا الدليل. وعلى الشركاء التأكّد من أنّ تطبيقاتهم تعمل بشكل سليم باستخدام Shaka Player لضمان عملية انتقال سلسة. قد تكون بعض التطبيقات معرّضة لخطر نقل حزمة تطوير البرامج (SDK) لجهاز الاستقبال عبر الويب إلى نموذج إيقاف إذا لم يتحقّق الشركاء مسبقًا من تشغيل المحتوى بشكل صحيح على Shaka Player.

ما هو مستوى الجهد المتوقّع عند تغيير اللاعبين؟

سيحتاج الشركاء إلى اختبار التطبيق والمحتوى في بيئة اختبار لضمان الحصول على تجربة مشابهة أو محسّنة مقارنةً بتجربة HLS. لتنفيذ ذلك، على الشركاء تفعيل الميزة في بيئة داخلية واختبار إمكانية تشغيل المحتوى الخاص بهم بالكامل باستخدام Shaka Player. يمكنك الاطّلاع على التحقق من المحتوى للحصول على تفاصيل حول الجوانب التي يجب التركيز عليها في المحتوى. بعد أن يتم التحقّق من صحة البيانات، على الشركاء إضافة العلامة للموافقة عليها في بيئة طلب الإنتاج لبدء الاستفادة من المزايا التي يوفّرها Shaka Player. وعلى مستوى عالٍ، يتم إجراء تغييرات طفيفة في تطوير البرامج ومعظمها من متطلبات ضمان الجودة لكي يتمكّن شركاؤنا من نقل البيانات بنجاح.

سيستخدم تطبيقي قريبًا HLS لبث المحتوى، ما الذي يجب عليّ فعله؟

ويجب تفعيل ميزة Shaka Player لتشغيل المحتوى في عمليات الدمج الجديدة. ستتم إتاحة تطبيقك بشكل أفضل على المدى الطويل، وسيستفيد أيضًا من ميزات HLS الجديدة وتحسينات الأداء. إذا واجهت عملية الدمج الجديدة مشاكل، يُرجى الإبلاغ عن الخطأ في أقرب وقت ممكن لمنح الفريق الهندسي وقتًا كافيًا لحل المشكلة. إذا كان الموعد النهائي لطلبك ضيقًا، فقم بتضمين هذه المعلومات في تقرير الخطأ بالإضافة إلى تأثيرها لتحديد الأولويات وفقًا لذلك. سيعمل فريقنا الهندسي على تقديم حل لدعم المستخدمين بشكل كافٍ.

لا يتوافق المحتوى أو التطبيق مع Shaka Player، فماذا بعد؟

عليك الإبلاغ عن الخطأ باستخدام مشروع Shaka Player أو مشروع Cast (راجِع الإبلاغ عن المشاكل). يعمل فريق هندسة Cast SDK على مراقبة أجهزة التتبع هذه بنشاط، وسيتعاون معك لحل أي مشكلات قائمة. كلما تم اكتشاف هذه المشكلات مبكرًا، زاد الوقت المتاح لهم لإصلاح المشكلة.

لم تعد MPL تتلقى تحديثات مهمة، فماذا يعني ذلك بالضبط؟

في السابق، اعتمدت MPL ميزات جديدة لبروتوكول HLS وصحّحت الأخطاء الرئيسية من خلال التحديثات المهمة. وبما أنّ MPL ستتوقف عن تلقّيها، لن تتم إضافة ميزات HLS جديدة إلى المشغّل. وبالمثل، لن يتم حلّ أي مشاكل تم الإبلاغ عنها في MPL عند تشغيل بروتوكول HLS على MPL. يجب حلّ هذه المشاكل من خلال الانتقال إلى مشغِّل Shaka للتشغيل. وفي حال استمرار المشاكل، يجب تسجيل خطأ يعرض المشكلة(المشاكل) ذات الصلة التي واجهت Shaka Player. يجب على الشركاء الابتعاد عن استخدام MPL.

المحتوى الخاص بي يستخدم بروتوكول البث السلس، كيف يؤثر ذلك في تطبيقي؟

ستظل برامج MPL الثنائية مستضافة ويمكن الوصول إليها من خلال تطبيق المتلقي. ومع ذلك، لن تتم إتاحة أي طلبات ميزات متعلّقة بالبث السلس أو أي إصلاحات للأخطاء بسبب عدم تعديل مواصفات البث السلس منذ أكثر من أربع سنوات. ننصحك بنقل المحتوى لاستخدام بروتوكول البث DASH أو HLS لمواصلة تلقّي تحديثات بشأن الأداء ودعم المحتوى الخاص بك.

المحتوى الخاص بي لا يستخدم بروتوكول HLS أو بروتوكول البث السلس، كيف يؤثر ذلك في تطبيقي؟

وإذا كانت مكتبة المحتوى لا تستخدم أيًا من بروتوكولَي البث هذين، لن تتأثر بعملية نقل البيانات. لا يلزم إجراء أي تغييرات في طلبك.