نظرة عامة
هذا الدليل مخصّص لمطوّري تطبيقات عملاء واجهة برمجة التطبيقات التي تستخدم الموردَين التلقائيَين liveStream وliveBroadcast في قنوات على YouTube لبثّ المحتوى المباشر. يهدف هذا الدليل إلى مساعدتك في التأكّد من أنّ تطبيقك يتعامل بسلاسة مع إيقاف أحداث البث التلقائية وأحداث البث المباشر التلقائية، وهو مناسب لك إذا كانت أي من العبارات التالية تنطبق على تطبيقك:
- تتحقّق من قيمة السمة
isDefaultBroadcastلموردliveBroadcast. - يتحقّق من قيمة السمة
isDefaultStreamالخاصة بالموردliveStream. يتم استدعاء الطريقة
liveBroadcasts.listوضبط قيمة المَعلمةbroadcastTypeعلىpersistent. اعتبارًا من تاريخ الإيقاف النهائي:- إذا كانت قيمة المَعلمة
broadcastTypeهيpersistent، لن تعرض الطريقةliveBroadcasts.listأي نتائج. - إذا كانت قيمة المَعلمة
broadcastTypeهيall، لن تعرض طريقةliveBroadcasts.listأحداث البث المباشر المستمرة التي كانت موجودة قبل ذلك الوقت.
- إذا كانت قيمة المَعلمة
إذا تأثّر تطبيقك، يُرجى الرجوع إلى قسم تحديث تطبيقك الذي يوضّح التغييرات الإجرائية التي قد يحتاج تطبيقك إلى إجرائها نتيجةً لعملية الإيقاف النهائي هذه. يحدّد هذا القسم خطوات معيّنة في دليل مراحل البث قد لا يتّبعها عميل واجهة برمجة التطبيقات عادةً إذا كان يستخدم حاليًا البث التلقائي.
ما الذي يحدث؟
منذ عام 2015، أنشأت منصة YouTube تلقائيًا بثًا تلقائيًا وبثًا تلقائيًا للقناة عندما تم تفعيل البث المباشر في تلك القناة. كان البث التلقائي متاحًا إلى أجل غير مسمى ولم يكن من الممكن حذفه. وبالمثل، كان البث التلقائي يُعتبر مستمرًا. كانت هذه السمة موجودة دائمًا، ولم يكن لها وقت بدء أو انتهاء مرتبط بها، ولم تكن مرتبطة بحدث معيّن.
واعتبارًا من تاريخ الإيقاف النهائي المذكور أعلاه، لن ينشئ YouTube بعد الآن أحداث بث مباشر وفيديوهات بث مباشر تلقائية. يؤثر هذا التغيير في تطبيقات العملاء التي تعتمد على هذه الموارد لبث المحتوى المباشر. وسيؤثر أيضًا في التطبيقات التي يتم فيها تخصيص واجهة المستخدم للتمييز بين هذه الموارد التلقائية وعمليات البث الأخرى التي أنشأها مالكو القنوات.
بدلاً من الاعتماد على الموارد التلقائية، على عملاء واجهة برمجة التطبيقات إنشاء موارد liveBroadcast وliveStream وإدارتها وربط هذه الموارد ببعضها.
تعديل طلبك
للاطّلاع سريعًا على المصطلحات، يمثّل البث حدثًا يمكن مشاهدته على YouTube أثناء حدوثه، ودفق البيانات هو آلية إرسال محتوى الفيديو الفعلي إلى YouTube. يمكن ربط البث المباشر بمصدر بيانات واحد فقط.
نقل البيانات من عمليات البث التلقائية
قبل هذا الإيقاف النهائي، كان بإمكان عملاء واجهة برمجة التطبيقات الاختيار بين استخدام البث التلقائي للقناة أو إنشاء بث خاص بحدث معيّن. كان البث التلقائي عبارة عن مصدر دائم يمكن إعادة استخدامه لأحداث متعددة، بينما مصدر البث الخاص بالحدث هو مصدر يُستخدم مرة واحدة ويتوافق مع فيديو على YouTube واحد فقط.
يستخدم تطبيق العميل البث التلقائي إذا استدعى الطريقة liveBroadcasts.list وقام بأي مما يلي:
- وتضبط قيمة المَعلمة
broadcastTypeعلىpersistent. يستردّ هذا الطلب البث التلقائي فقط. - يتم ضبط قيمة المَعلمة
broadcastTypeعلىall، ثم يتم تحديد موردliveBroadcastفي ردّ واجهة برمجة التطبيقات الذي تكون قيمة السمةisDefaultBroadcastفيه هيtrue.
بعد إيقاف هذه الميزة نهائيًا، سيسمح YouTube فقط ببث الأحداث المباشرة المخصّصة لفعالية معيّنة.
وهذا يعني أنّه بدلاً من الاعتماد على البث التلقائي، يجب أن تنشئ تطبيقات العميل موارد liveBroadcast لكل حدث بث فردي.
لإنشاء مرجع liveBroadcast، استخدِم طريقة liveBroadcasts.insert.
يمكنك الاطّلاع على شرح لهذه العملية في الخطوة 1.1 من دليل "دورة حياة البث".
إذا لم تكن واجهة المستخدم توفّر هذه الميزة، يجب أن توفّر أيضًا آليات تتيح للمستخدمين التمييز بين أحداث البث المباشر القادمة واختيار ما يناسبهم منها.
نقل البيانات من مصادر البيانات التلقائية
يتيح لك البث نقل محتوى صوتي وفيديو إلى YouTube، ويحدّد إعدادات كيفية بث المحتوى إلى YouTube. من الشائع أن يعيد المذيعون استخدام البث نفسه في العديد من عمليات البث المختلفة إذا كانت عمليات البث هذه تحدث في أوقات مختلفة.
على الرغم من أنّ تطبيقك لا يمكنه استخدام البث التلقائي، يمكنه إنشاء بث قابل لإعادة الاستخدام لكل عملية بث. لإنشاء مورد liveStream،
استخدِم طريقة liveStreams.insert
واتّبِع التعليمات الواردة في الخطوة 1.2 من دليل "دورة حياة البث". بشكل تلقائي، تكون ساحات المشاركات التي تم إنشاؤها حديثًا قابلة لإعادة الاستخدام. ومع ذلك، يمكنك ضبط السمة contentDetails.isReusable على false لإنشاء أحداث بث مخصّصة للاستخدام الواحد وإقامة علاقة فردية بين أحداث البث المباشر وأحداث البث.
تحتوي القائمة التالية على السمات الأربع التي يمكنك ضبطها عند إنشاء بث جديد، بالإضافة إلى عنوان البث ووصف البث. تعرض القائمة القيم التي تستخدمها مجموعات البيانات التلقائية لكل سمة، وهي على الأرجح الإعدادات التي تريد استخدامها في تطبيق عميل إذا كنت بصدد الانتقال من استخدام مجموعات البيانات التلقائية.
-
cdn.frameRate-variable cdn.ingestionType-rtmp-
cdn.resolution-variable contentDetails.isReusabletrue
ربط أحداث البث بمصادر البيانات
يجب ربط كل مورد liveBroadcast ببث واحد بالضبط قبل أن يبدأ البث المباشر على YouTube. (لا يرتبط البث بأي أحداث بث في وقت إنشائه).
تمت معالجة عملية الربط تلقائيًا للبث التلقائي الذي كان مرتبطًا بشكل وثيق بالبث التلقائي. ومع ذلك، بعد تاريخ الإيقاف النهائي، يجب أن تتولّى تطبيقات العميل إدارة هذه العملية لجميع عمليات البث.
لربط بث مباشر بقناة، استدعِ طريقة
liveBroadcasts.bind كما هو موضّح في الخطوة 1.3 من دليل "دورة حياة البث المباشر".
- إذا كنت تستخدم بثًا قابلاً لإعادة الاستخدام، يمكنك إنشاء بث واحد ثم ربط كل بث مباشر بهذا البث.
- إذا لم تكن تستخدم بثًا قابلاً لإعادة الاستخدام، عليك إنشاء بث مباشر وبث، ثم ربطهما معًا.
اختبار البث
عند عدم استخدام البث التلقائي، يتوفّر لك خيار اختبار البث. لإجراء اختبار، يمكنك تضمين مشغّل يتيح لك معاينة فيديو البث كما سيظهر لمشاهدي YouTube، ولكن لا يظهر البث للمشاهدين الآخرين.
إذا كان عميل واجهة برمجة التطبيقات قد استخدم في السابق البث التلقائي وتريد إضافة مرحلة اختبار إلى عملية البث، يُرجى الاطّلاع على المرحلة 3 من دليل "دورة حياة البث".
إذا أردت اختبار البث، عليك ضبط السمة contentDetails.monitorStream.enableMonitorStream على true والسمة contentDetails.enableAutoStart على false عند إدراج بث. هذه هي القيم التلقائية لكلتا السمتَين.
استخدام ميزتَي "البدء التلقائي" و"الإيقاف التلقائي"
كان البث التلقائي يبدأ تلقائيًا كلّما بدأت ببث فيديو على قناة البث التلقائية. وبالمثل، انتهى البث التلقائي بعد أن توقفت عن بث الفيديو. بعد ذلك، أصبحت كل جلسة بث تستخدم هذه الموارد التلقائية فيديو في قناتك.
على الرغم من أنّ ميزتَي البدء التلقائي والإيقاف التلقائي كانتا الإعداد التلقائي لأحداث البث التلقائية، إلا أنّهما اختياريتان ويجب تفعيلهما لأحداث البث الأخرى. إذا أردت استخدام هذه الميزات، عليك ضبط قيم السمتَين contentDetails.enableAutoStart وcontentDetails.enableAutoStop على true عند إدراج بث. هاتان الميزتان مستقلتان، لذا يمكنك اختيار
استخدام إحداهما دون الأخرى.
إذا لم تفعّل ميزتَي البدء التلقائي والإيقاف التلقائي لعمليات البث الجديدة، على عميل واجهة برمجة التطبيقات استدعاء طريقة liveBroadcasts.transition لتعديل حالة البث عند بدء بث الفيديو وإنهائه. في دليل "دورة حياة البث"، يمكنك الاطّلاع على الخطوة 4.3 والخطوة 5.2 للحصول على تعليمات حول كيفية إدارة عمليات الانتقال هذه في بداية البث ونهايته.