تعرض هذه الصفحة التغييرات التي تم إجراؤها على YouTube Live Streaming API والتعديلات التي تم إجراؤها على المستندات.
12 أكتوبر 2026
يتضمّن هذا التحديث التغييرات التالية:
-
تم تصحيح السمة
snippet.giftEventDetailsلموردliveChatMessageإلىsnippet.giftDetailsلتعكس بدقة الردّ من واجهة برمجة التطبيقات.
18 أغسطس 2026
يتضمّن هذا التحديث التغييرات التالية:
-
تم تعديل مستندات طريقة
liveBroadcasts.updateلتشمل أخطاء جديدة متعلقة بتحقيق الربح:preconditionFailed (412)(السبب:videoNotEligibleForAdsMonetization) وbackendError (503)(السبب:backendError).
17 أغسطس 2026
يتضمّن هذا التحديث التغييرات التالية:
-
تتيح لك السمة الجديدة
snippet.categoryIdفي الموردliveBroadcastضبط فئة الفيديو المرتبطة ببث مباشر وتعديلها واستردادها.
20 يوليو 2026
يتضمّن هذا التحديث التغييرات التالية:
-
يمكن الآن ضبط السمة
monetizationDetails.cuepointSchedule.pauseAdsUntilعلى تاريخ ووقت سابقَين أو على قيمة فارغة لاستئناف عرض الإعلانات.
9 يوليو 2026
يتضمّن هذا التحديث التغييرات التالية:
-
تحدّد الآن مستندات
liveChatBans.insertأنّ السمةsnippet.typeيجب أن تكون إماpermanentأوtemporary.توضّح مستندات
liveChatMessage.insertبدقة أنّquestionTextهي سمة مباشرة لـmetadata، وأنّoptionsهي مصفوفة من العناصر، يحتوي كل منها على حقلoptionText.
1 يونيو 2026
يتضمّن هذا التحديث التغييرات التالية:
-
تتيح لك السمة
contentDetails.availabilityConfigفي الموردliveBroadcastتحديد القيود الجغرافية لبث مباشر، ما يتيح لك إدارة مدى توفّر الأحداث المباشرة في مناطق معيّنة.
26 مارس 2026
يتضمّن هذا التحديث التغييرات التالية:
-
تتيح السمة
snippet.typeالآن القيمة الجديدةgiftEvent. -
يحتوي المورد
liveChatMessageعلى السمة الجديدةsnippet.giftEventDetailsوعناصرها الفرعية التي تتضمّن معلومات عن حدث الهدية.
12 يناير 2026
تتيح واجهة برمجة التطبيقات الآن تفعيل "الإعلانات أثناء التشغيل" وإدراجها تلقائيًا في أحداث البث المباشر.
يمكن لمالك البث اختيار تفعيل "الإعلانات أثناء التشغيل" في البث طالما أنّ البث مؤهّل لعرض هذه الإعلانات. ويمكن للمالك أيضًا إيقاف "الإعلانات أثناء التشغيل" في أي وقت.
إذا كان البث مؤهلاً لعرض "الإعلانات أثناء التشغيل"، يمكن لمالك البث تفعيل ميزة الإدراج التلقائي لهذه الإعلانات. ويمكنهم أيضًا إيقاف الإعلانات الآلية لبث معيّن في أي وقت.
عندما يفعّل مالك البث الإعلانات المبرمَجة، يمكنه تحديد أحد الخيارات التالية:
- السماح لـ YouTube بتحسين إدراج "الإعلانات أثناء التشغيل" يتيح هذا الخيار ثلاثة أوضاع:
- منخفض: إمكانية تحقيق نسبة أقل من الأرباح، وتقديم تجربة مشاهدة أقلّ تقطُّعًا
- متوسط: إمكانية تحقيق مقدار متوسط من الأرباح، وتقديم تجربة مشاهدة متوازنة
- مرتفع: إمكانية تحقيق نسبة أعلى من الأرباح، وتقديم تجربة مشاهدة أكثر تقطُّعًا
- اضبطوا يدويًا استراتيجية إدراج "الإعلانات أثناء التشغيل" والفواصل الزمنية بينها. في هذه الحالة، على المالك إعداد مَعلمتَين:
- استراتيجية جدولة نقاط الإعلان يمكن إدراج نقاط الإشارة في الوقت نفسه لجميع المشاهدين، أو يمكن أن يختلف توقيت نقاط الإشارة من مشاهد إلى آخر. تتيح الاستراتيجية الأخيرة لمنصة YouTube جدولة نقاط الإشارة بمعدّل أعلى، ما يتيح للمشاهدين تلقّي نقاط الإشارة عندما يكونون مؤهّلين لذلك.
- طول الفترة الزمنية بين الفواصل الإعلانية أثناء التشغيل
توضّح المستندات التغييرات التالية في واجهة برمجة التطبيقات لإتاحة هذه الميزة:
- يحتوي الكائن
monetizationDetailsفي الموردliveBroadcastعلى حقول لتفعيل "الإعلانات أثناء التشغيل" وإعدادات الإعلانات المبرمَجة. - يمكن استخدام طريقة
updateلتفعيل "الإعلانات أثناء التشغيل" أو إيقافها. ويمكن استخدام هذه الطريقة أيضًا لإعداد الإعلانات المبرمَجة لبث مباشر. تحدّد المستندات عدة أخطاء جديدة يمكن أن تحدث عند تعديل إعدادات تحقيق الربح وإعدادات الإعلانات المبرمَجة لبث مباشر.
14 يوليو 2025
تم تعديل وصف طريقة liveChatMessages.streamList لتقديم إرشادات حول استخدامات واجهة برمجة التطبيقات streamList.
9 أكتوبر 2023
للاطّلاع على معرّفات الملصقات المرتبطة بملصقات Super Stickers، يمكنك مراجعة ملف CSV هذا.
تم تعديل تعريفات السمة snippet.superStickerDetails.superStickerMetadata.stickerId لمورد liveChatMessage والسمة snippet.superStickerMetadata.stickerId لمورد superChatEvent لتعكس هذه المعلومات.
15 سبتمبر 2023
تتيح واجهة برمجة التطبيقات الآن طريقة جديدة لإدراج الإعلانات في أحداث البث المباشر. بالإضافة إلى
liveCuepoints التي تتيح لك
إدراج فواصل إعلانية يدويًا في البث، يتيح YouTube الآن ميزة لإدراج
فواصل إعلانية أثناء التشغيل تلقائيًا في البث على فترات زمنية ثابتة.
إذا فعّل مالك البث الإعلانات المبرمَجة، يمكنه الاطّلاع على الجوانب التالية من سلوك الإعلانات:
- طول الفاصل الزمني بين الفواصل الإعلانية أثناء التشغيل
- استراتيجية جدولة نقاط الإعلان يمكن إدراج نقاط الإشارة في الوقت نفسه لجميع المشاهدين، أو يمكن أن يختلف توقيت نقاط الإشارة من مشاهد إلى آخر. تتيح الاستراتيجية الأخيرة لمنصة YouTube جدولة نقاط الإشارة بمعدّل أعلى، ما يتيح للمشاهدين تلقّي نقاط الإشارة عندما يكونون مؤهّلين لذلك.
- هي فترة لا يتم خلالها عرض "الإعلانات أثناء التشغيل". في هذه الميزة، يحدّد مالك البث أنّه سيتم إيقاف إدراج "الإعلانات أثناء التشغيل" مؤقتًا حتى وقت معيّن.
توضّح المستندات التغييرات التالية في واجهة برمجة التطبيقات لإتاحة هذه الميزة:
- يحتوي مورد
liveBroadcastالآن على عنصرmonetizationDetails. تشير حقول العنصر إلى ما إذا كان الإدراج التلقائي للإعلانات مفعّلاً للبث، وتحدّد معلومات إضافية لجدولة نقاط الإشارة. - تتيح المَعلمة
partفي الطريقةliveBroadcast.listاستخدام القيمةmonetizationDetails. - يمكن استخدام طريقة
updateلإيقاف إدراج "الإعلانات أثناء التشغيل" مؤقتًا لفترة معيّنة في بث مباشر. تحدّد المستندات الآن أيضًا أخطاء متعدّدة يمكن أن تحدث عند تعديل تفاصيل تحقيق الربح من بث مباشر.
1 أغسطس 2023
يتضمّن هذا التحديث التغييرات التالية:
-
لم تعُد طريقة
liveBroadcasts.updateتتطلّب تحديد قيم للحقول التالية:snippet.titlestatus.privacyStatus
سيؤدي حذف هذه الحقول من الطلب إلى تركها بدون تغيير.
1 تشرين الثاني (نوفمبر) 2022
-
تتيح طريقة
liveBroadcasts.cuepointالجديدة لأي مالك قناة يبثّ محتوًى مباشرًا على YouTube إدراج نقاط إشارة في هذا البث، ما قد يؤدي إلى عرض فواصل إعلانية. تحلّ هذه الطريقة محلّ الطريقةliveCuepoints.insertالتي كانت تتيح لشركاء المحتوى في YouTube فقط إدراج نقاط الإشارة في أحداث البث المباشر.تم تعديل العديد من الأدلة لتوضيح مدى توفّر هذه الطريقة الجديدة.
-
ملاحظة: هذا إشعار عن الإيقاف النهائي.
تم إيقاف طريقة
liveCuepoints.insertنهائيًا. ستتم إزالة طريقةliveCuepoints.insertفي 1 مايو 2023 أو بعد هذا التاريخ. وعلى مستخدمي واجهة برمجة التطبيقات تحديث تطبيقاتهم لاستدعاء الطريقةliveBroadcasts.cuepointبدلاً من ذلك. -
تمت إزالة المستندات الخاصة بطريقة
liveBroadcasts.control. وقد تم نشر إشعار بإيقاف هذه الطريقة نهائيًا في سبتمبر 2020.
1 أكتوبر 2022
يتضمّن هذا التحديث التغييرات التالية:
-
لم تعُد طريقة
liveBroadcasts.updateتتطلّب تحديد قيم للحقول التالية:contentDetails.enableContentEncryptioncontentDetails.enableDvrcontentDetails.enableEmbedcontentDetails.recordFromStartcontentDetails.startWithSlate
سيؤدي حذف هذه الحقول من الطلب إلى تركها بدون تغيير.
-
تمت إزالة المستندات المتعلّقة بحقول
liveBroadcastالقديمة:contentDetails.enableContentEncryptioncontentDetails.startWithSlate
1 أبريل 2022
يتضمّن هذا التحديث التغييرات التالية:
-
تتيح السمة
snippet.typeالآن استخدام قيمتَين جديدتَين:membershipGiftingEventgiftMembershipReceivedEvent
-
يحتوي المورد
liveChatMessageعلى السمة الجديدةsnippet.membershipGiftingDetailsوعناصرها الفرعية التي تتضمّن معلومات حول حدث "إهداء عضوية". وبالمثل، تحتوي السمة الجديدةsnippet.giftMembershipReceivedDetailsوالسمات الفرعية التابعة لها على معلومات حول حدث "تلقّي عضوية مقدَّمة كهدية".
15 سبتمبر 2021
يتضمّن هذا التحديث التغييرات التالية:
-
تتيح السمة
snippet.typeالآن استخدام قيمتَين جديدتَين:newSponsorEventmemberMilestoneChatEvent
-
يحتوي المرجع
liveChatMessageعلى السمة الجديدةsnippet.memberMilestoneChatDetailsوعناصرها الفرعية التي تتضمّن معلومات عن حدث رسالة المحادثة المميّزة الخاصة بالأعضاء. وبالمثل، تحتوي السمة الجديدةsnippet.newSponsorDetailsوالسمات الفرعية التابعة لها على معلومات عن فعالية "الراعي الجديد".
1 كانون الأول (ديسمبر) 2020
تتيح طريقة liveBroadcasts.transition في واجهة برمجة التطبيقات عرض خطأ 403 (Forbidden) جديد يشير إلى أنّ المستخدم قد أرسل عددًا كبيرًا جدًا من الطلبات خلال إطار زمني معيّن. سبب الخطأ هو userRequestsExceedRateLimit.
21 أيلول (سبتمبر) 2020
-
تم تعديل تعريف السمة
status.madeForKidsلموردliveBroadcastلتوضيح أنّ السمة مخصّصة للقراءة فقط. ولا يعكس ذلك تغييرًا في وظائف واجهة برمجة التطبيقات.لتصنيف بث مباشر على أنّه موجّه إلى الأطفال، اضبط السمة
status.selfDeclaredMadeForKidsعلىtrueعند استدعاء الطريقةliveBroadcasts.insertلإنشاء البث. -
ملاحظة: يتضمّن هذا التغيير إشعارًا بالإيقاف النهائي وتعديلاً على إشعار سابق بالإيقاف النهائي.
سيتم إيقاف طريقة
liveBroadcasts.controlنهائيًا في 1 أكتوبر 2020 أو بعد ذلك. بعد هذا التاريخ، ستؤدي جميع الطلبات المرسَلة إلى هذه الطريقة إلى ظهور خطأ "محظور" (403)، وستتم إزالة الطريقة بالكامل لاحقًا. لا يزال بإمكان العملاء تنفيذ لوحاتهم الخاصة من خلال إضافة تراكب إلى الفيديو المرسل إلى خوادم نقل البيانات في YouTube.تم تأجيل تاريخ الإيقاف النهائي الذي تم تحديده في إشعار الإيقاف النهائي الصادر في 16 أبريل 2020، والذي كان من المقرر في الأصل أن يتم في 1 سبتمبر 2020، وسيتم الآن في 1 أكتوبر 2020 أو بعده. وبالتالي، سيتم إيقاف الميزات المضمّنة في إشعار الإيقاف النهائي هذا والطريقة
liveBroadcasts.controlفي الوقت نفسه.
17 يوليو 2020
ملاحظة: هذا تعديل على إشعار سابق بشأن الإيقاف النهائي.
اعتبارًا من 17 آب (أغسطس) 2020، لن يعود الحقل cdn.format في المورد liveStream متاحًا، علمًا أنّه تم إيقافه نهائيًا في نيسان (أبريل) 2016. وستتعذّر الطلبات التي لا تزال تستخدم هذا الحقل اعتبارًا من ذلك التاريخ.
إذا كان الرمز لا يزال يستخدم الحقل cdn.format، يجب تعديله لتحديد عدد اللقطات في الثانية والدقة بشكل منفصل، وذلك باستخدام السمتَين cdn.frameRate وcdn.resolution.
6 يوليو 2020
تم تعديل دليل تقديم محتوى YouTube المباشر عبر HLS ليتضمّن بعض التغييرات:
- تم تعديل المدة المقترَحة لمقطع الوسائط لتصبح من ثانية واحدة إلى أربع ثوانٍ.
- يشرح قسم جديد كيفية الحصول على عنوان URL لنقل البيانات عبر بروتوكول HLS من "استوديو صنّاع المحتوى في YouTube".
-
تم نقل تعليمات تنسيق قيمة المَعلمة
fileإلى القسم الجديد إكمال عنوان URL للعرض وفق بروتوكول HLS. تنطبق هذه التعليمات بغض النظر عمّا إذا تم الحصول على عنوان URL لنقل البيانات عبر HLS من YouTube API أو "استوديو صنّاع المحتوى في YouTube".
بالإضافة إلى ذلك، تعرض المقارنة الجديدة بين بروتوكولات نقل البيانات بروتوكولات نقل البيانات التي يتيحها YouTube وبرامج الترميز المتوافقة مع كل بروتوكول، فضلاً عن معلومات إضافية حول حالات الاستخدام المناسبة لكل بروتوكول.
16 أبريل 2024
يتضمّن هذا التحديث سمة جديدة وإشعارًا بشأن إيقاف سمة نهائيًا:
-
يتيح الآن المورد
liveBroadcastاستخدام السمةcontentDetails.enableAutoStop. تشير السمة إلى ما إذا كان يجب إيقاف البث تلقائيًا بعد دقيقة واحدة تقريبًا من توقّف مالك القناة عن بث الفيديو على البث المباشر المرتبط.تم تعديل مستند دورة حياة البث لشرح كيفية تغيُّر العملية المفصّلة لإنشاء حدث مباشر على YouTube وإدارته في حال ضبط السمتَين
contentDetails.enableAutoStartأوcontentDetails.enableAutoStopعلىtrue. -
ملاحظة: هذا إشعار عن الإيقاف النهائي. ستسري هذه التغييرات في 1 أيلول (سبتمبر) 2020 أو بعد هذا التاريخ. يُشار إلى التاريخ الفعلي الذي تسري فيه التغييرات أدناه باسم تاريخ الإيقاف النهائي.
يشرح هذا التعديل تغييرًا قد يؤدي إلى عطل. ويؤثر هذا التغيير في تطبيقات عملاء واجهة برمجة التطبيقات التي تستخدم موارد
liveStreamوliveBroadcastالتلقائية للقنوات لبث المحتوى المباشر على YouTube. وبشكل خاص، لن يعود بإمكانك استخدام معرّف البث ومعرّف مصدر البيانات المرتبطَين بالبث ومصدر البيانات الدائمَين لبدء أحداث بث جديدة.سيتأثر تطبيقك في حال استيفاء أيّ من الشروط التالية:
- وتتحقّق من قيمة السمة
isDefaultBroadcastلموردliveBroadcast. لن يتم عرض هذه السمة بعد تاريخ الإيقاف النهائي. - وتتحقّق من قيمة السمة
isDefaultStreamلموردliveStream. لن يتم عرض هذه السمة بعد تاريخ الإيقاف النهائي. - يستدعي هذا الطلب الطريقة
liveBroadcasts.listويضبط قيمة المَعلمةbroadcastTypeعلىpersistentأوall. سيتم إيقاف هذه المَعلمة نهائيًا كجزء من هذه التغييرات. اعتبارًا من تاريخ الإيقاف النهائي:- إذا كانت قيمة المَعلمة
broadcastTypeهيpersistent، لن تعرض الطريقةliveBroadcasts.listأي نتائج. - إذا كانت قيمة المَعلمة
broadcastTypeهيall، لن تعرض الطريقةliveBroadcasts.listأحداث بث مباشرة دائمة كانت موجودة قبل ذلك الوقت.
- إذا كانت قيمة المَعلمة
خلال السنوات القليلة الماضية، أنشأت منصة YouTube تلقائيًا بثًا تلقائيًا وحدث بث تلقائيًا للقناة عندما تم تفعيل ميزة البث المباشر في تلك القناة. وكان البث التلقائي متاحًا إلى أجل غير مسمى، ولم يكن مرتبطًا بوقت بدء أو انتهاء، ولم يكن من الممكن حذفه. وبالمثل، كان البث التلقائي يُعتبر مستمرًا. وكانت موجودة دائمًا ولم تكن مرتبطة بحدث معيّن.
اعتبارًا من تاريخ الإيقاف النهائي:
- لن تنشئ منصة YouTube بعد الآن أحداث بث تلقائية. بدلاً من الاعتماد على الموارد التلقائية، يجب أن يتمكّن عملاء واجهة برمجة التطبيقات من إنشاء وإدارة موارد
liveBroadcastوliveStreamوربط هذه الموارد معًا. - إذا كان البث التلقائي والبث المباشر التلقائي لقناة ما نشطَين، أي أنّ القناة تستخدمهما لبث مباشر في وقت سريان الإيقاف النهائي، لن يتأثر البث المباشر الجاري. ومع ذلك، بعد انتهاء هذا البث، لن تتمكّن القناة من استخدام البث التلقائي مرة أخرى.
- إذا لم يكن البث التلقائي والبث المباشر التلقائي لقناة ما نشطَين، سيتجاهل YouTube محاولات استخدام هذه الموارد لبث الفيديو بعد أن يصبح الإيقاف النهائي ساري المفعول.
إذا تأثّر تطبيقك، يُرجى الرجوع إلى المستندات التالية التي ستساعدك في تحديث تطبيقك لكي يستمر في العمل على النحو المتوقّع بعد هذا التغيير:
- يشرح دليل نقل البيانات الجديد الخطوات التي قد يحتاج المطوّرون إلى اتّباعها في عملاء واجهة برمجة التطبيقات الذين يستخدمون حاليًا أحداث البث المباشر التلقائية.
- يقدّم لك دليل دورة حياة البث عملية مفصّلة تشرح كيفية إنشاء حدث مباشر وإدارته على YouTube. توضّح كل خطوة طلبات البيانات من واجهة برمجة التطبيقات أو الإجراءات الأخرى التي يجب اتّخاذها لإكمال إجراء محدّد، وعلى تطبيقك اتّباع هذه العملية عندما يتوقف YouTube عن إتاحة أحداث البث المباشر التلقائية.
- وتتحقّق من قيمة السمة
31 آذار (مارس) 2020
ملاحظة: هذا إشعار عن الإيقاف النهائي.
تم إيقاف المورد sponsor والطريقة sponsors.list نهائيًا واستبدالهما بالمورد member والطريقة members.list.
لن تعود طريقة sponsors.list متاحة اعتبارًا من 30 أيلول (سبتمبر) 2020 أو بعد هذا التاريخ.
على عملاء واجهة برمجة التطبيقات تعديل الطلبات المرسَلة إلى طريقة sponsors.list لاستخدام طريقة members.list بدلاً منها. يُرجى الاطّلاع على سجلّ النُسخ السابقة من YouTube Data API لمزيد من المعلومات حول المرجع الجديد.
11 مارس 2020
تم تعديل قسم نقطة نهاية نقل البيانات في دليل تقديم محتوى YouTube المباشر عبر بروتوكول HLS لتوضيح العملية التي يجب أن يستخدمها برنامج الترميز لإكمال قيمة المَعلمة file= عند إنشاء عناوين URL الأساسية والاحتياطية لنقل البيانات.
4 فبراير 2020
تم تعديل دليل تقديم محتوى YouTube المباشر عبر HLS للإشارة إلى أنّ طلبات DELETE اختيارية وأنّ نقطة نهاية HLS في YouTube تتجاهلها. لأسباب تتعلّق بالأداء، ينصح YouTube العملاء بعدم إرسال طلبات DELETE.
10 يناير 2020
تتيح واجهة برمجة التطبيقات الآن إمكانية تحديد المحتوى الموجّه إلى الأطفال، والذي يُطلق عليه YouTube اسم "محتوى مخصّص للأطفال". مزيد من المعلومات حول المحتوى "المخصّص للأطفال" في "مركز مساعدة YouTube"
-
يتيح المورد
liveBroadcastاستخدام سمتَين جديدتَين لتمكين صنّاع المحتوى والمشاهدين من تحديد المحتوى "المخصّص للأطفال":-
تتيح السمة
selfDeclaredMadeForKidsلصنّاع المحتوى تحديد ما إذا كان البث المباشر موجّهًا للأطفال. يمكن ضبط هذه السمة عند إنشاء بث من خلال الإجراءliveBroadcasts.insert. يُرجى العِلم أنّ هذه السمة لا يتم تضمينها في الردود من واجهة برمجة التطبيقات التي تحتوي على مواردliveBroadcastإلا إذا سمح مالك القناة بطلب البيانات من واجهة برمجة التطبيقات. -
تتيح السمة
madeForKidsلأي مستخدم لواجهة برمجة التطبيقات استرداد حالة "محتوى مخصّص للأطفال" لبث معيّن. على سبيل المثال، قد يتم تحديد الحالة استنادًا إلى قيمة السمةselfDeclaredMadeForKids. يمكنك الانتقال إلى مركز مساعدة YouTube لمزيد من المعلومات حول ضبط إعدادات الجمهور لقناتك أو فيديوهاتك أو أحداث البث المباشر.
-
تتيح السمة
-
في YouTube Data API، يتيح المورد
channelأيضًا استخدام السمتَين الجديدتَينselfDeclaredMadeForKidsوmadeForKids.
لقد عدّلنا أيضًا "بنود خدمة YouTube API" و"سياسات المطوّرين". يُرجى الاطّلاع على سجلّ النُسخ السابقة من بنود خدمة YouTube API لمزيد من المعلومات. ستسري التغييرات على بنود خدمة YouTube API وسياسات المطوّرين في 10 يناير 2020 بتوقيت المحيط الهادئ.
20 أغسطس 2019
تم تعديل قسم المتطلبات في دليل تقديم محتوى YouTube المباشر عبر بروتوكول HLS من خلال إجراء تغييرَين:
- وتوضّح أنّ من أفضل الممارسات تضمين كلّ من المقاطع المعترَف بها والمقاطع المعلّقة في كل قائمة تشغيل وسائط. يقلّل هذا الإجراء من احتمال تخطّي مقطع في حال فقدان "قائمة تشغيل وسائط" من جهة الخادم. على سبيل المثال، يمكنك تضمين ما يصل إلى مقطعين مُعترَف بهما وما يصل إلى خمسة مقاطع معلّقة في كل قائمة تشغيل وسائط.
- أصبح من الضروري الآن إرسال قائمة تشغيل وسائط لكل مقطع وسائط. يتيح ذلك للخادم استرداد البيانات بسرعة في حال فقدان "قائمة تشغيل الوسائط". كانت هذه الممارسة مدرَجة سابقًا كاقتراح.
28 يونيو 2019
أصبح YouTube يتيح الآن نقل البيانات عبر بروتوكول HLS. وبالتالي، تتيح السمة ingestionType في المورد liveStream استخدام القيمة الجديدة hls لتحديد أحداث البث التي يتم نقلها إلى YouTube باستخدام بروتوكول HLS.
يقدّم الدليل الجديد تقديم محتوى YouTube المباشر عبر HLS إرشادات حول استخدام HLS لبث محتوى مباشر إلى YouTube من برنامج ترميز. يهدف الدليل إلى مساعدة مورّدي برامج الترميز في إضافة ميزة إرسال HLS إلى منتجاتهم.
4 أبريل 2019
يتضمّن هذا التحديث التغييرات التالية:
-
تم تعديل مستندات مرجع واجهة برمجة التطبيقات لتوضيح حالات الاستخدام الشائعة لكل طريقة بشكل أفضل وتقديم عيّنات تعليمات برمجية ديناميكية وعالية الجودة من خلال تطبيق واجهة برمجة التطبيقات المصغّر "أداة استكشاف واجهات برمجة التطبيقات". يمكنك الاطّلاع على مستندات الطريقة
liveBroadcasts.listللحصول على مثال. يتوفّر الآن عنصران جديدان في الصفحات التي تصف طرق واجهة برمجة التطبيقات:-
تتيح لك أداة "مستكشف واجهات برمجة التطبيقات" اختيار نطاقات التفويض وإدخال عيّنات من قيم المَعلمات والسمات، ثم إرسال طلبات بيانات من واجهة برمجة التطبيقات والاطّلاع على ردود من واجهة برمجة التطبيقات. يوفّر التطبيق المصغّر أيضًا عرضًا بملء الشاشة يعرض عينات تعليمات برمجية كاملة، والتي يتم تحديثها ديناميكيًا لاستخدام النطاقات والقيم التي أدخلتها.
-
يصف قسم حالات الاستخدام الشائعة حالة استخدام شائعة واحدة أو أكثر للطريقة الموضّحة في الصفحة. على سبيل المثال، يمكنك استدعاء الطريقة
liveBroadcasts.listلاسترداد بيانات حول بث معيّن أو لاسترداد بيانات حول أحداث البث الخاصة بالمستخدم الحالي.يمكنك استخدام الروابط في هذا القسم لتعبئة "مستكشف واجهات برمجة التطبيقات" بقيم نموذجية لحالة الاستخدام أو لفتح "مستكشف واجهات برمجة التطبيقات" بملء الشاشة مع تعبئة هذه القيم مسبقًا. تهدف هذه التغييرات إلى تسهيل الاطّلاع على عيّنات التعليمات البرمجية التي تنطبق مباشرةً على حالة الاستخدام التي تحاول تنفيذها في تطبيقك.
تتوفّر عيّنات التعليمات البرمجية حاليًا للغات Java وJavaScript وPHP وPython وcurl.
-
-
تتضمّن صفحة عيّنات الرموز البرمجية أيضًا واجهة مستخدم جديدة توفّر جميع الميزات نفسها الموضّحة أعلاه. باستخدام هذه الأداة، يمكنك استكشاف حالات استخدام لطرق مختلفة، وتحميل القيم في "مستكشف واجهات برمجة التطبيقات"، وفتح "مستكشف واجهات برمجة التطبيقات" بملء الشاشة للحصول على عينات تعليمات برمجية بلغات Java وJavaScript وPHP وPython.
بالتزامن مع هذا التغيير، تمت إزالة الصفحات التي كانت تعرض سابقًا عينات التعليمات البرمجية المتاحة للغات Java وPHP وPython.
25 شباط (فبراير) 2019
تم تعديل مستندات الموردَين liveChatMessage وsuperChatEvent لتعكس حقيقة أنّ كلا الموردَين يمكن أن يحتوي الآن على معلومات حول Super Stickers. Super Stickers هي نوع من رسائل Super Chat التي تعرض صورة. على غرار رسائل Super Chat الأخرى، يشتري المعجبون رسائل Super Stickers أثناء بث مباشر على YouTube.
- في مورد
liveChatMessage، تم ضبط السمةsnippet.typeعلىsuperStickerEventللإشارة إلى أنّ المورد يحتوي على معلومات حول ملصق Super Sticker. في هذه الحالة، يحتوي المورد أيضًا على العنصرsnippet.superStickerDetailsالذي يتضمّن معلومات إضافية حول ملصق Super Sticker. - في المورد
superChatEvent، يشير المتغيّر المنطقيsnippet.isSuperStickerEventإلى ما إذا كانت رسالة Super Chat هي أيضًا ملصق Super Sticker. إذا كانت الإجابة نعم، يحتوي العنصرsnippet.superStickerMetadataعلى تفاصيل إضافية حول Super Sticker.
5 أبريل 2018
تم تعديل وصف الطريقة superChatEvents.list ليعكس حقيقة أنّ الردّ من واجهة برمجة التطبيقات لم يعُد يحتوي على fanFundingEvents، والتي تم إيقافها نهائيًا في أوائل عام 2017.
3 نيسان (أبريل) 2017
تمت إضافة عيّنات تعليمات برمجية جديدة بلغة Java توضّح كيفية إدراج رسائل المحادثة المباشرة وإضافتها وحذفها. تستدعي النماذج الطرق التالية:
13 فبراير 2017
يتضمّن هذا التحديث التغييرات التالية:
-
تعديلات على المراجع والطرق الحالية
-
تم تعديل طريقة
liveCuepoints.insertلتعكس حقيقة أنّ مَعلمةonBehalfOfContentOwnerمطلوبة حاليًا. بالإضافة إلى ذلك، تم تعديل وصف الطريقة للإشارة إلى أنّ الطلبات المرسَلة إلى هذه الطريقة يجب أن تكون مصرَّحًا بها من حساب مرتبط بمالك محتوى على YouTube.
-
9 فبراير 2017
يتضمّن هذا التحديث التغييرات التالية:
-
تعديلات على المراجع والطرق الحالية
-
تتيح لك المَعلمة
hlالجديدة في طريقةsuperChatEvents.listتحديد أنّه يجب تنسيق قيمة السمةsnippet.displayStringوفقًا لقواعد لغة معيّنة. وتم أيضًا تعديل تعريف هذه السمة وفقًا لذلك.يجب أن تكون قيمة المَعلمة رمز لغة مضمّنًا في القائمة التي تعرضها طريقة
i18nLanguages.list. القيمة التلقائية هيen، ما يعني أنّ الإعداد التلقائي هو تنسيق سلاسل العرض كما يتم استخدامها في اللغة الإنجليزية. على سبيل المثال، يتم تلقائيًا تنسيق السلسلة على النحو التالي:$1.00بدلاً من$1,00.
-
1 فبراير 2017
يتضمّن هذا التحديث التغييرات التالية:
-
المراجع والطرق الجديدة
-
يمثّل المورد الجديد
superChatEventرسالة Super Chat اشتراها أحد المعجبين أثناء بث مباشر على YouTube. في خلاصة المحادثة المباشرة على YouTube، تبرز رسائل Super Chat عن الرسائل الأخرى بطريقتَين:- يتم تمييز رسائل Super Chat بلون معيّن.
- تبقى رسائل Super Chat مثبَّتة في شريط العرض لمدة محددة.
يتم تحديد لون رسالة Super Chat والمدة التي تبقى فيها مثبّتة في شريط الدردشة والحد الأقصى لطول الرسالة استنادًا إلى مبلغ الشراء. يوفّر مركز مساعدة YouTube المزيد من المعلومات حول رسائل Super Chat.
تتيح واجهة برمجة التطبيقات طريقة لإدراج أحداث Super Chat لأحداث البث المباشر في قناة خلال آخر 30 يومًا. تعرض هذه الطريقة أيضًا بيانات حول أحداث "التمويل من المعجبين" (
fanFundingEvents) من آخر بث مباشر للقناة.
-
-
تعديلات على المراجع والطرق الحالية
-
أصبحت السمة
snippet.typeمتوافقة الآن مع القيمةsuperChatEventالتي تشير إلى أنّ المورد يصف Super Chat.بالإضافة إلى ذلك، يحتوي المورد
liveChatMessageعلى السمة الجديدةsnippet.superChatDetails، كما تحتوي العناصر الفرعية على معلومات حول حدث Super Chat. -
أصبحت السمة
cdn.resolutionفي الموردliveStreamتتيح الآن استخدام القيمة2160p.
-
-
الأخطاء الجديدة والمعدَّلة
-
تتيح واجهة برمجة التطبيقات الأخطاء الجديدة التالية:
تفاصيل الخطأ liveBroadcasts.insert،liveBroadcasts.updateتعرض الطريقتان liveBroadcasts.insertوliveBroadcasts.updateأخطاء400(Bad Request) للإشارة إلى أنّ موردliveBroadcastالذي يتم إدراجه أو تعديله يحتوي على قيمة غير صالحة للسمةcontentDetails.enableEmbedأو السمةcontentDetails.projection. أسباب الخطأين الجديدين هيinvalidEmbedSettingوinvalidProjectionعلى التوالي.
-
12 يناير 2017
ملاحظة: هذا إشعار عن الإيقاف النهائي.
بالتزامن مع إصدار ميزة Super Chat الجديدة، أوقف YouTube ميزة "التمويل من المعجبين" نهائيًا، وسيتم إيقاف Fan Funding API في 28 فبراير 2017. اعتبارًا من ذلك التاريخ:
- لن تعرض طريقة
liveChatMessages.listبعد الآن رسائل تتضمّنsnippet.typeمنfanFundingEvent. وبالمثل، لن تحتوي مواردliveChatMessageعلى العنصرsnippet.fanFundingEventDetails. - لن تعرض طريقة
fanFundingEvents.listأي بيانات بعد الآن.
11 أغسطس 2016
يتضمّن هذا التحديث التغييرات التالية:
-
توفّر بنود الخدمة المنشورة حديثًا لخدمات YouTube API (المُشار إليها باسم "البنود المعدَّلة") مجموعة غنية من التعديلات على بنود الخدمة الحالية، وهي موضّحة بالتفصيل في مدوّنة YouTube Engineering and Developers. بالإضافة إلى البنود المعدَّلة التي ستسري اعتبارًا من 10 فبراير 2017، يتضمّن هذا التعديل العديد من المستندات الداعمة للمساعدة في شرح السياسات التي يجب على المطوّرين اتّباعها.
تم شرح المجموعة الكاملة من المستندات الجديدة في سجلّ النُسخ السابقة من "البنود المعدَّلة". بالإضافة إلى ذلك، سيتم أيضًا شرح التغييرات المستقبلية على "البنود المعدَّلة" أو على المستندات الداعمة في سجلّ النُسخ السابقة هذا.
20 مايو 2016
أصبحت منصة YouTube تتيح الآن نقل البيانات باستخدام بروتوكول DASH. وبالتالي، تتيح السمة ingestionType في المورد liveStream استخدام القيمة الجديدة dash لتحديد أحداث البث التي يتم نقلها إلى YouTube باستخدام DASH.
يقدّم الدليل الجديد إرسال محتوى YouTube المباشر عبر DASH إرشادات حول استخدام تنسيق إرسال DASH لبث البيانات المباشرة على YouTube من برنامج ترميز. والهدف من ذلك هو مساعدة مورّدي برامج الترميز في إضافة ميزة تسليم المحتوى باستخدام بروتوكول DASH إلى منتجاتهم.
18 أبريل 2016
يتضمّن هذا التحديث التغييرات التالية:
-
تعديلات على المراجع والطرق الحالية
- تعديلات على المرجع "
liveStream"-
يتيح YouTube الآن أحداث البث بدقة 1440p وبمعدّل 30 أو 60 لقطة في الثانية.
بالإضافة إلى ذلك، يتضمّن المورد
liveStreamسمات جديدة لتحديد عدد اللقطات في الثانية ودقة بيانات الفيديو الواردة:الخصائص cdn.frameRateعدد اللقطات في الثانية لبيانات الفيديو الواردة القيمتان الصالحتان هما 30fpsو60fps.cdn.resolutionدقة بيانات الفيديو الواردة القيم الصالحة للسمة هي: 1440pو1080pو720pو480pو360pو240p. -
وفقًا لإدخال السمتَين
cdn.frameRateوcdn.resolutionللموردliveStream، تم إيقاف السمةcdn.formatللمورد نهائيًا. تحدّد السمةcdn.formatدرجة الدقة وعدد اللقطات في الثانية في قيمة واحدة.ننصحك بالانتقال إلى الحقول الجديدة المتوافقة. في هذه الأثناء، سيستمر عمل "
cdn.format". بالإضافة إلى ذلك، تنجح حاليًا طلبات إدراج أحداث البث المباشر طالما أنّك تحدّد قيمًا للسمةcdn.formatأو السمتَينcdn.frameRateوcdn.resolution. إذا قدّمت قيمًا للسمات الثلاث، قد تعرض واجهة برمجة التطبيقات خطأً إذا لم تكن القيم متوافقة.يُرجى العِلم أنّه على الرغم من إيقاف السمة
cdn.formatنهائيًا، فإنّها تتيح الآن استخدام قيمتَين جديدتَين، هما1440pو1440p_hfr، لتعكس توافق واجهة برمجة التطبيقات مع أحداث البث بدقة 1440p بمعدّل 30 أو 60 لقطة في الثانية.
-
- تعديلان (
liveBroadcast) على المراجع-
يحتوي المورد
liveBroadcastعلى السمات الجديدة التالية:الخصائص contentDetails.boundStreamLastUpdateTimeMsتاريخ ووقت آخر تعديل للبث المباشر الذي تشير إليه السمة contentDetails.boundStreamIdفي البثcontentDetails.projectionتمثّل هذه السمة تنسيق العرض الخاص بالبث. القيمة التلقائية للسمة هي rectangular. القيم الصالحة للسمة هي360وrectangular. -
تم تعديل تعريف السمة
statistics.totalChatCountفي الموردliveBroadcastللإشارة إلى أنّ قيمة السمة تظهر فقط إذا كان البث يتضمّن رسالة محادثة واحدة على الأقل.
-
- تعديلات على المرجع "
liveChatMessage"-
تتيح السمة
snippet.typeاستخدام قيمتَين جديدتَين، هماmessageDeletedEventوuserBannedEvent، تتوافقان مع السمتَين الجديدتَين الموضّحتَين في نقطة التعداد التالية. تم أيضًا تعديل تعريف السمةsnippet.authorChannelIdلتوضيح ما تحدّده قيمة السمة لأنواع الرسائل الجديدة هذه. -
يحتوي المورد
liveChatMessageعلى السمات الجديدة التالية:الخصائص snippet.messageDeletedDetailsيحتوي هذا العنصر على معلومات حول رسالة حذفها أحد المشرفين على المحادثة. لا يظهر العنصر إلا إذا كانت قيمة السمة snippet.typeهيmessageDeletedEvent.snippet.userBannedDetailsيحتوي هذا العنصر على معلومات عن مستخدم تم حظره من المشاركة في المحادثة. يحتوي العنصر أيضًا على معلومات حول الحظر نفسه، أي ما إذا كان الحظر دائمًا أو مؤقتًا. إذا كان الحظر مؤقتًا، تحدّد إحدى سمات العنصر مدة الحظر.
لا يظهر هذا العنصر إلا إذا كانت قيمة السمةsnippet.typeهيuserBannedEvent.
-
- تعديلات على المرجع "
-
الأخطاء الجديدة والمعدَّلة
-
تتيح واجهة برمجة التطبيقات الأخطاء الجديدة التالية:
تفاصيل الخطأ liveBroadcasts.bindتعرض الطريقة liveBroadcasts.bindالخطأ403(Forbidden) للإشارة إلى أنّ المستخدم أرسل عددًا كبيرًا جدًا من الطلبات خلال إطار زمني معيّن. سبب الخطأ هوuserRequestsExceedRateLimit.
تتيح الطريقتانliveBroadcasts.insertوliveBroadcasts.updateالخطأ نفسه.liveStreams.insertتتيح طريقة liveStreams.insertأربعة أخطاء جديدة في400(Bad Request) تحدّد قيمة غير صالحة للسمة في موردliveStreamالذي حاول الطلب إدراجه. تحدّد القائمة التالية أسباب الخطأ والسمات المرتبطة بها:
invalidFormat:cdn.formatinvalidFrameRate:cdn.frameRateinvalidIngestionType:cdn.ingestionTypeinvalidResolution:cdn.resolution
liveStreams.insertتتيح طريقة liveStreams.insertظهور خطأين جديدين في400(Bad Request)، يشير كل منهما إلى أنّ القيمة المطلوبة غير متوفّرة في موردliveStreamالذي حاول الطلب إدراجه. تحدّد القائمة التالية أسباب الخطأ والسمات المرتبطة بها:
frameRateRequired:cdn.frameRateresolutionRequired:cdn.resolution
liveStream، يجب تحديد قيمة للسمةcdn.formatأو للسمتَينcdn.frameRateوcdn.resolution.
- تعرض واجهة برمجة التطبيقات الخطأ
formatRequiredإذا لم تحدّد قيمة لأي من السمات الثلاث. - تعرض واجهة برمجة التطبيقات الخطأ
frameRateRequiredإذا حدّدت قيمة لـcdn.resolutionوليس لـcdn.frameRate. - تعرض واجهة برمجة التطبيقات الخطأ
resolutionRequiredإذا حدّدت قيمة لـcdn.frameRateوليس لـcdn.resolution.
liveStreams.updateتعرض الطريقة liveStreams.updateالخطأ403(Forbidden) إذا حاول الطلب تعديل قيمة أيّ من السمات غير القابلة للتغيير التالية:cdn.formatcdn.frameRatecdn.ingestionTypecdn.resolution
reasonفي ردّ الخطأ هيliveStreamModificationNotAllowed.
-
18 ديسمبر 2015
تتطلّب قوانين الاتحاد الأوروبي تقديم إفصاحات معيّنة للمستخدمين النهائيين في الاتحاد الأوروبي والحصول على موافقتهم. لذلك، بالنسبة إلى المستخدمين النهائيين في الاتحاد الأوروبي، عليك الالتزام بسياسة موافقة المستخدم في الاتحاد الأوروبي. لقد أضفنا إشعارًا بهذا الشرط في بنود خدمة YouTube API.
17 ديسمبر 2015
يتضمّن هذا التحديث التغييرات التالية:
-
المراجع والطرق الجديدة
-
تتيح واجهة برمجة التطبيقات استخدام عدة موارد جديدة لتوفير وظيفة المحادثة في أحداث البث المباشر. يتيح YouTube استخدام وظائف المحادثة المباشرة أثناء أحداث البث المباشر النشطة، وتتيح هذه الموارد وطرقها استرداد رسائل المحادثة بالإضافة إلى الوظائف الإدارية للمحادثة.
الموارد liveChatMessageيمثّل هذا المورد رسالة في محادثة مباشرة على YouTube. يتيح YouTube عدة أنواع من الرسائل، بما في ذلك الرسائل النصية وأحداث "التمويل من المعجبين". تحدّد بعض أنواع الرسائل مرحلة معيّنة من المحادثة، مثل بداية فترة مخصّصة للداعمين فقط أو نهاية المحادثة. تتيح واجهة برمجة التطبيقات استخدام طرق لإدراج رسائل المحادثة المباشرة وإضافتها وحذفها. liveChatModeratorsيحدّد هذا المورد مشرفًا على المحادثة. يمكن للمشرفين تنفيذ بعض الوظائف الإدارية، مثل حظر المستخدمين من المحادثة أو إزالة الرسائل. تتيح واجهة برمجة التطبيقات استخدام طرق لإدراج مشرفي المحادثة المباشرة وإضافتهم وحذفهم. liveChatBansيحدّد هذا المورد مستخدمًا تم حظره من نشر رسائل في محادثة مباشرة معيّنة. ويمكن أن يكون الحظر مؤقتًا أو دائمًا. تتيح واجهة برمجة التطبيقات استخدام طرق لإضافة عمليات حظر المحادثة المباشرة وحذفها. fanFundingEventsيمثّل هذا المورد حدثًا مرتبطًا بميزة "التمويل من المعجبين" على قناة على YouTube. تتيح ميزة "التمويل من المعجبين" للمشاهدين تقديم دعم مالي لمرة واحدة لصنّاع المحتوى في YouTube بشكل طوعي.
تعرض الطريقةfanFundingEvents.listفي واجهة برمجة التطبيقات قائمة بأحداث "التمويل من المعجبين" في القناة. عندما يبدأ المشاهدون أحداث "التمويل من المعجبين" من خلال محادثة مباشرة أثناء بث مباشر تملكه القناة، يتم أيضًا إرسال رسالةfanFundingEventإلى المحادثة المباشرة الخاصة بالبث.
يمكنك الاطّلاع على مزيد من المعلومات حول ميزة "التمويل من المعجبين" في مركز مساعدة YouTube.sponsorsيحدّد المورد sponsorراعيًا لقناة على YouTube. يدفع الراعي رسومًا شهرية للقناة. تظهر شارة بجانب رسائل الداعم في المحادثات المباشرة على القناة، ويمكن للداعمين أيضًا المشاركة في المحادثات المباشرة الحصرية لداعمي القناة، في حال توفّرها.
تُدرج الطريقةsponsors.listفي واجهة برمجة التطبيقات الجهات الراعية للقناة. عندما يشترك المستخدمون في رعاية قناة خلال بث مباشر تملكه تلك القناة، تضيف واجهة برمجة التطبيقات أيضًا رسالةnewSponsorEventإلى المحادثة المباشرة في البث.
يمكنك الاطّلاع على مزيد من المعلومات حول الرعاية في مركز مساعدة YouTube.
-
-
تعديلات على المراجع والطرق الحالية
-
يحتوي المورد
liveBroadcastعلى السمات الجديدة التالية:الخصائص snippet.liveChatIdمعرّف المحادثة المباشرة على بث YouTube المباشر المرتبطة بالبث باستخدام هذا المعرّف، يمكنك استخدام طرق المورد liveChatMessageلاسترداد رسائل المحادثة أو إدراجها أو حذفها. يمكنكم أيضًا إضافة مشرفين على المحادثة أو إزالتهم، أو حظر مستخدمين من المشاركة في المحادثات المباشرة، أو إزالة عمليات الحظر الحالية.contentDetails.closedCaptionsTypeملاحظة: تحلّ هذه السمة محلّ السمة contentDetails.enableClosedCaptions.
تشير هذه السمة إلى ما إذا كانت ميزة الترجمة والشرح مفعّلة للبث، وإذا كانت كذلك، تشير إلى نوع الترجمة والشرح الذي تقدّمه:-
closedCaptionsDisabled: تم إيقاف ميزة "الترجمة والشرح" للبث المباشر. -
closedCaptionsHttpPost: يمكنك إرسال الترجمة عبر HTTP POST إلى عنوان URL لنقل البيانات مرتبط بالبث المباشر. -
closedCaptionsEmbedded: سيتم ترميز الترجمة في بث الفيديو باستخدام تنسيقَي EIA-608 و/أو CEA-708.
contentDetails.enableClosedCaptionsتم إيقاف هذه السمة نهائيًا اعتبارًا من 17 ديسمبر 2015. بدلاً من ذلك، استخدِم السمة contentDetails.closedCaptionsType. بالنسبة إلى عملاء واجهة برمجة التطبيقات الذين يستخدمون هذه السمة حاليًا:- يؤدي ضبط قيمة السمة على
trueإلى ضبط السمةcontentDetails.closedCaptionsTypeعلىclosedCaptionsHttpPost. - يؤدي ضبط قيمة السمة على
falseإلى ضبط السمةcontentDetails.closedCaptionsTypeعلىclosedCaptionsDisabled.
-
-
تتيح لك المَعلمة الجديدة
broadcastTypeفي طريقةliveBroadcasts.listفلترة ردّ من واجهة برمجة التطبيقات لتضمين أحداث البث المباشر أو أحداث البث المستمر أو جميع أحداث البث.البث المستمر هو بث متاح دائمًا وغير مرتبط بحدث معيّن. على وجه التحديد، إنّ البث التلقائي للقناة هو بث دائم، ويمكن الوصول إليه من خلال لوحة التحكّم في البث المباشر في "استوديو صنّاع المحتوى في YouTube". أما عمليات البث الأخرى للقناة، فهي عمليات بث للأحداث.
-
-
يُبلغ الحقل
status.healthStatus.configurationIssues[].typeفي الموردliveStreamعن أخطاء حالة السلامة الجديدة التالية:الأخطاء audioTooManyChannelsيتضمن الصوت أكثر من قانتين في حين يمكن استخدام قناة (أحادية) واحدة أو قناتين (استريو) فقط. يرجى تصحيح عدد القنوات الصوتية. frameRateHighإنّ العدد الحالي للقطات في الثانية مرتفع جدًا. يُرجى ضبط معدّل اللقطات على لقطة في الثانية أو أقل.%(framerate)s -
تم تصحيح تاريخ نشر التعديل السابق على المستندات.
-
الأخطاء الجديدة والمعدَّلة
-
بالإضافة إلى الأخطاء المحدّدة للموارد الجديدة المذكورة أعلاه، تتيح واجهة برمجة التطبيقات الأخطاء الجديدة التالية:
تفاصيل الخطأ liveBroadcasts.updateرمز استجابة HTTP forbidden (403)السبب closedCaptionsTypeModificationNotAllowedالوصف يمكن تعديل قيمة contentDetails.closedCaptionsTypeفقط عندما تكون حالة البثcreatedأوready.liveBroadcasts.updateرمز استجابة HTTP invalidValue (400)السبب invalidEnableClosedCaptionsالوصف في مورد liveBroadcast، لا تتوافق قيمة السمة contentDetails.enableClosedCaptionsمع قيمة الإعدادcontentDetails.closedCaptionType. عدِّل المورد لتضمين سمة واحدة فقط من السمتَين، ثم أعِد إرسال الطلب.
-
19 أغسطس 2015
يتضمّن هذا التحديث التغييرات التالية:
-
المراجع والطرق الجديدة
-
ملاحظة: إنّ المستندات الخاصة بمورد
liveChatوطرقه سرية ولا تظهر إلا لشركاء YouTube المحدّدين.يحتوي مورد
liveChatالجديد على تعليق تم نشره أثناء بث مباشر على YouTube. تتيح واجهة برمجة التطبيقات طريقتَين لهذا المرجع:الطُرق liveChats.listتتيح هذه الطريقة عرض رسائل المحادثة المباشرة في بث معيّن. liveChats.insertأنشِئ رسالة محادثة جديدة. لا يمكن استرداد رسائل المحادثة المباشرة ونشرها إلا أثناء البث المباشر.
-
-
تعديلات على المراجع والطرق الحالية
-
يحتوي المورد
liveStreamعلى السمات الجديدة التالية:الخصائص snippet.isDefaultStreamتشير هذه السمة إلى ما إذا كان هذا البث هو البث التلقائي للقناة. يتوفّر البث التلقائي للقناة إلى أجل غير مسمى، ولا يرتبط به وقت بدء أو انتهاء، ولا يمكن حذفه. يمكنك الاطّلاع على تعريف السمة لمزيد من المعلومات حول طريقة عمل مصادر البيانات التلقائية. status.healthStatusيحتوي هذا العنصر على معلومات يمكن استخدامها لتحديد مشاكل البث وتشخيصها وحلّها. يحتوي العنصر على عدد من السمات الفرعية لمساعدتك في تقييم حالة بث فيديو مباشر.
على وجه التحديد، يسرد العنصرstatus.healthStatus.configurationIssues[]المشاكل التي تؤثر في بث الفيديو. يتضمّن المستند الجديد مشاكل في إعداد موارد LiveStream قائمة بجميع المشاكل التي تبلّغ عنها واجهة برمجة التطبيقات.contentDetails.isReusableتشير هذه السمة إلى ما إذا كان يمكن إعادة استخدام البث، ما يعني أنّه يمكن ربطه بعدة أحداث بث. من الشائع أن يعيد القائمون بالبث استخدام البث نفسه لعدة عمليات بث مختلفة إذا كانت عمليات البث هذه تحدث في أوقات مختلفة. -
يحتوي المورد
liveBroadcastعلى السمات الجديدة التالية:الخصائص snippet.isDefaultBroadcastتشير هذه السمة إلى ما إذا كان هذا البث هو البث التلقائي للقناة. عند تفعيل ميزة البث المباشر في قناة على YouTube، تنشئ المنصة بثًا تلقائيًا وبثًا مباشرًا تلقائيًا للقناة. يحدّد البث كيفية إرسال مالك القناة للفيديو المباشر إلى YouTube، والبث هو الطريقة التي يمكن للمشاهدين من خلالها مشاهدة البث التلقائي. راجِع تعريف السمة لمزيد من المعلومات حول آلية عمل عمليات البث التلقائية. contentDetails.enableLowLatencyتشير هذه السمة إلى ما إذا كان يجب ترميز هذا البث ليكون وقت الاستجابة منخفضًا. يمكن أن يقلّل البث بزمن انتقال منخفض من الوقت الذي يستغرقه ظهور الفيديو للمستخدمين الذين يشاهدون بثًا، ولكن يمكن أن يؤثر أيضًا في درجة الدقة للمشاهدين. statistics.totalChatCountإجمالي عدد رسائل المحادثة المباشرة المرتبطة بالبث تظهر السمة وقيمتها إذا كان البث مرئيًا للمستخدم وكانت ميزة المحادثة المباشرة مفعّلة. يُرجى العِلم أنّ هذه السمة لن تحدّد قيمة بعد انتهاء البث. وبالتالي، لن تحدّد هذه السمة عدد رسائل المحادثة لفيديو مؤرشف لبث مباشر مكتمل.
-
-
الأخطاء الجديدة والمعدَّلة
-
بالإضافة إلى الأخطاء المحدّدة لمورد
liveChatالجديد، تتيح واجهة برمجة التطبيقات الخطأ الجديد التالي:تفاصيل الخطأ liveStreams.updateرمز استجابة HTTP forbidden (403)السبب liveStreamModificationNotAllowedالوصف لا تتيح لك واجهة برمجة التطبيقات تغيير بث قابل لإعادة الاستخدام إلى بث غير قابل لإعادة الاستخدام، أو العكس. لمزيد من المعلومات، يُرجى الاطّلاع على فهم البث المباشر وأحداث البث.
-
21 مايو 2015
يتضمّن هذا التحديث التغييرات التالية:
-
يتيح YouTube الآن بث الفيديو المباشر بمعدّل 60 لقطة في الثانية، ما يعني تشغيل فيديوهات الألعاب وغيرها من الفيديوهات السريعة الحركة بسلاسة أكبر. عند بدء بث مباشر على YouTube بمعدّل 60 عدد اللقطات في الثانية، يتيح YouTube أيضًا البث بمعدّل 30 عدد اللقطات في الثانية على الأجهزة التي لا يتوفّر فيها بعد خيار المشاهدة بمعدّل عدد اللقطات مرتفع.
تتيح السمة
cdn.formatفي الموردliveStreamاستخدام قيمتَين جديدتَين لهذه الميزة:720p_hfrو1080p_hfr.يمكنك الاطّلاع على مدوّنة صنّاع المحتوى في YouTube لمزيد من المعلومات حول هذه الميزة.
21 أغسطس 2014
يتضمّن هذا التحديث التغييرات التالية:
-
تم تعديل تعريف المَعلمة
walltimeفي طريقةliveBroadcasts.controlللإشارة إلى أنّ قيمة السمة يتم تحديدها بتنسيق ISO 8601 (YYYY-MM-DDThh:mm:ss.sssZ). -
تتيح واجهة برمجة التطبيقات الآن الأخطاء التالية:
نوع الخطأ تفاصيل الخطأ الوصف insufficientPermissionsliveStreamingNotEnabledتُرجع جميع الطرق الخاصة بموردَي liveBroadcastوliveStreamهذا الخطأ إذا لم يتم تفعيل المستخدم الذي سمح بطلب البيانات من واجهة برمجة التطبيقات لبث فيديو مباشر على YouTube. قد تتوفّر تفاصيل توضّح سبب عدم تمكّن المستخدم من بث فيديو مباشر في إعدادات قناة المستخدم على https://www.youtube.com/features.rateLimitExceededuserRequestsExceedRateLimitتعرض الطريقتان liveBroadcasts.insertوliveStreams.insertهذا الخطأ للإشارة إلى أنّ المستخدم قد أرسل عددًا كبيرًا جدًا من الطلبات خلال فترة زمنية معيّنة.
2 مايو 2014
يتضمّن هذا التحديث التغييرات التالية:
-
تم تعديل أوصاف المورد
liveStreamوالطريقةliveBroadcasts.bindللإشارة إلى أنّه يمكن ربط بث واحد فقط بدفق فيديو واحد، ولكن يمكن ربط دفق فيديو بأكثر من بث واحد. هذا التغيير هو مجرّد تصحيح للمستندات، ولم يتم تغيير وظيفة واجهة برمجة التطبيقات الأساسية. -
تم تعديل السمة
contentDetails.monitorStream.enableMonitorStreamفي الموردliveBroadcastلتوضيح أنّه إذا كانت قيمة السمة هيtrue، يجب نقل البث إلى الحالةtestingقبل نقله إلى الحالةlive. (إذا كانت قيمة السمة هيfalse، لا يمكن أن يتضمّن البث مرحلةtesting، لذا يمكنك نقل البث مباشرةً إلى الحالةlive. -
تم تعديل السمة
settings.offsetTimeMsفي الموردliveCuepointللإشارة إلى أنّه يجب عدم تحديد قيمة للسمة إذا لم يكن البث يتضمّن بثًا للمراقبة. -
أصبحت جميع الطرق الخاصة بموردَي
liveBroadcastوliveStreamمتوافقة الآن مع مَعلمتَيonBehalfOfContentOwnerوonBehalfOfContentOwnerChannel. تتيح لك هذه المَعلمات استخدام بيانات اعتماد التفويض نفسها لإكمال طلبات البيانات من واجهة برمجة التطبيقات لقنوات مختلفة مرتبطة بمالك المحتوى نفسه. -
تم تعديل مستندات طريقة
liveCuepoints.insertللإشارة إلى أنّه يمكنك ضبط قيمة للسمةsettings.walltimeعند استدعاء هذه الطريقة. -
تحدّد مستندات الأخطاء الآن رمز استجابة HTTP لكل نوع خطأ.
-
تتيح واجهة برمجة التطبيقات الآن الخطأ التالي:
نوع الخطأ تفاصيل الخطأ الوصف insufficientPermissionslivePermissionBlockedتعرض الطرق liveBroadcasts.insertوliveBroadcasts.transitionوliveStreams.insertهذا الخطأ إذا لم يتمكّن المستخدم الذي سمح بالطلب من بث فيديو مباشر على YouTube. قد تتوفّر تفاصيل توضّح سبب عدم تمكّن المستخدم من بث فيديو مباشر في إعدادات قناة المستخدم على https://www.youtube.com/features. -
تم تعديل الخطأ
invalidScheduledStartTimeفي طريقةliveBroadcasts.insertلتوضيح أنّه يجب أن يكون وقت البدء المجدوَل قريبًا بما يكفي من التاريخ الحالي لجدولة البث بشكل موثوق في ذلك الوقت.
13 ديسمبر 2013
يتضمّن هذا التحديث التغييرات التالية:
-
تحدّد السمة الجديدة
status.recordingStatusفي الموردliveBroadcastالحالة الحالية للبث. -
تشير السمة
contentDetails.enableClosedCaptionsالجديدة لموردliveBroadcastإلى ما إذا كان يمكن استيعاب مقاطع الترجمة والشرح للبث. يمكن ضبط قيمة السمة عند إدراج بث أو تعديله، ولكن لا يمكن تعديلها بعد أن يصبح البث في الحالةtestingأوlive. إذا ضبطت هذه السمة علىtrue، سيحدّد موردliveStreamالمرتبط بالبث عنوان URL لنقل البيانات الذي يجب استخدامه لمقاطع الترجمة والشرح في البث. -
أصبحت السمة
snippet.scheduledEndTimeفي الموردliveBroadcastتتيح الآن عرض أحداث البث المجدوَلة للاستمرار إلى أجل غير مسمى. بعد إجراء هذا التغيير، لم تعد السمة مطلوبة في طلباتliveBroadcasts.insertوliveBroadcasts.update.
إذا استرددت موردliveBroadcastلا يحدّد قيمة لهذه السمة، تتم جدولة البث ليستمر إلى أجل غير مسمى. وبالمثل، إذا طلبت الطريقةliveBroadcasts.insertأوliveBroadcasts.updateولم تحدّد قيمة لهذه السمة، ستتم جدولة البث ليستمر إلى أجل غير مسمى. -
يمكن الآن ضبط السمة
contentDetails.recordFromStartلموردliveBroadcastعلىfalseفقط إذا كان مسموحًا للقناة التي تبثّ المحتوى بإيقاف تسجيلات أحداث البث المباشر، علمًا أنّ القيمة التلقائية لهذه السمة كانتtrue.إذا لم تكن قناتك تملك الإذن لإيقاف التسجيلات، وحاولت إدراج بث تم ضبط السمة
recordFromStartفيه علىfalse، ستعرض واجهة برمجة التطبيقات الخطأForbidden. بالإضافة إلى ذلك، إذا لم تكن قناتك تملك هذا الإذن وحاولت تعديل بث لضبط السمةrecordFromStartعلىfalse، ستعرض واجهة برمجة التطبيقات الخطأmodificationNotAllowed. -
لم يعُد مورد
liveBroadcastيحتوي على السمةenableArchiveالتي تم ذكرها في أوصاف السمتَينcontentDetails.enableDvrوcontentDetails.enableEmbed. -
تم تعديل قائمة القيم الصالحة للسمة
status.lifeCycleStatusفي الموردliveBroadcastلتشمل وصفًا لكل حالة. -
تحدّد السمة
settings.walltimeالجديدة لموردliveCuepointالتاريخ والوقت اللذين يجب إدراج نقطة الإشارة فيهما. تعرض واجهة برمجة التطبيقات خطأً إذا حاول طلب إدراج نقطة تلميح تحدّد قيمة لهذه السمة وللسمةsettings.offsetTimeMs. -
يحتوي عنصر
contentDetailsالجديد في موردliveStreamعلى معلومات حول البث. في الوقت الحالي، السمة الوحيدة للعنصر هيcontentDetails.closedCaptionsIngestionUrl، وهي تحدّد عنوان URL لنقل مقاطع الترجمة والشرح المرتبطة ببث الفيديو. -
تم تعديل قائمة القيم الصالحة للسمة
status.streamStatusفي الموردliveStreamلتشمل وصفًا لكل حالة. -
تتيح لك المَعلمة الجديدة
walltimeفي طريقةliveBroadcasts.controlتحديد تاريخ ووقت حدوث تغيير في لوحة العرض. تعرض واجهة برمجة التطبيقات خطأً إذا حدّد الطلب قيمة لهذه المَعلمة وللمَعلمةoffsetTimeMs. -
في الردّ من واجهة برمجة التطبيقات على طلب
liveBroadcasts.list، تغيّرت قيمة السمةkindمنyoutube#liveBroadcastListإلىyoutube#liveBroadcastListResponse. -
في الردّ من واجهة برمجة التطبيقات على طلب
liveStreams.list، تغيّرت قيمة السمةkindمنyoutube#liveStreamListإلىyoutube#liveStreamListResponse. -
تم إيقاف السمة
eventIdنهائيًا من كل منliveBroadcastListResponseوliveStreamListResponse. -
تتيح واجهة برمجة التطبيقات الأخطاء الجديدة التالية:
نوع الخطأ تفاصيل الخطأ الوصف invalidValueconflictingTimeFieldsتعرض الطريقة liveBroadcasts.controlهذا الخطأ إذا كان طلبك يحدّد قيمًا للمَعلمتَينoffsetTimeMsوwalltime. يمكن أن يحذف الطلب كلتا المَعلمتَين أو يحدّد قيمة لإحدى المَعلمتَين.invalidValueinvalidWalltimeتعرض الطريقة liveBroadcasts.controlهذا الخطأ إذا كانت قيمة المَعلمةwalltimeغير صالحة.forbiddenenableClosedCaptionsModificationNotAllowedتعرض الطريقة liveBroadcasts.updateهذا الخطأ إذا حاولت تعديل قيمةcontentDetails.enableClosedCaptionsوكانت حالة البث ليستcreatedأوready.invalidValueconflictingTimeFieldsتعرض الطريقة liveCuepoints.insertهذا الخطأ إذا كان طلبك يحدّد قيمًا للسمتَينsettings.offsetTimeMsوsettings.walltime. يمكن أن يحذف الطلب كلتا السمتَين أو يحدّد قيمة لإحدى السمتَين.بالإضافة إلى ذلك، لم تعُد طريقة
liveStreams.updateتتيح ظهور خطأcdnRequiredمشابه للخطأ الذي تتيحه طريقةliveStreams.insert.
10 مايو 2013
يتضمّن هذا التحديث التغييرات التالية:
-
لم يعُد YouTube يحدّد ميزات وخدمات واجهة برمجة التطبيقات التجريبية. بدلاً من ذلك، نقدّم الآن قائمة بواجهات برمجة تطبيقات YouTube التي تخضع لسياسة الإيقاف النهائي.
2 مايو 2013
يتضمّن هذا التحديث التغييرات التالية:
-
تتيح لك طريقة
liveBroadcasts.controlالجديدة تفعيل أو إيقاف إعدادات العرض لشاشة عرض تظهر في بث مباشر جارٍ. إذا تأخر بثّك المباشر، يمكنك أيضًا استخدام هذه الطريقة لتحديد فارق زمني يحدث فيه التغيير المطلوب في لوحة الإعلانات. -
تم تعديل تعريفات السمات التالية لتوضيح أنّه يجب ضبط قيم السمات في حال تعديل الجزء
contentDetailsمن موردliveBroadcast: -
لم يعُد المرجع
status.streamStatusفي الموردliveStreamيتيح استخدام القيمةdeletedكحالة بث محتملة. -
تمت مراجعة المعلومات التي تعرضها واجهة برمجة التطبيقات للعديد من رسائل الخطأ من أجل شرح سبب حدوث أخطاء معيّنة بشكل أفضل. تتيح واجهة برمجة التطبيقات أيضًا العديد من الأخطاء الجديدة.
27 مارس 2013
يتضمّن هذا التحديث التغييرات التالية:
-
تم تغيير السمات التالية في المورد
liveBroadcast:- تمت إعادة تسمية الموقع
startWithSlateCuepointإلىstartWithSlate. - تمت إعادة تسمية الموقع
enableArchiveإلىrecordFromStart. - تم إيقاف العنصر
slateSettingsنهائيًا وإزالته من المستندات. وتمّت أيضًا إزالة رسائل الخطأ المتعلّقة بالعنصرslateSettingsأو سماته. أخيرًا، تمت إزالة قسم "عرض لوحات المعلومات" من دليل البدء.
- تمت إعادة تسمية الموقع
-
لم تعُد واجهة برمجة التطبيقات تتيح إمكانية إدراج لوحات ضمن البث باستخدام طريقة
liveCuepoints.insert. تم تحديث المستندات التالية لتعكس هذا التغيير:-
لم تعُد هذه الوظيفة مذكورة في صفحة الفهرس ودليل البدء والبرنامج التعليمي دورة حياة البث.
-
لم تعُد السمة
settings.cueTypeالخاصة بموردliveCuepointتتيح استخدامslateكقيمة للسمة. (القيمة الوحيدة المسموح بها هيad. -
تم إيقاف السمة
settings.eventStateالخاصة بموردliveCuepointنهائيًا وإزالتها من المستندات.
-
18 مارس 2013
يتضمّن هذا التحديث التغييرات التالية:
-
تم تعديل جميع رسائل الخطأ في واجهة برمجة التطبيقات لتوضيح الأخطاء المحتملة بشكل أكبر، وتقديم إرشادات حول كيفية حل مشكلة إن أمكن.
-
قد تعرض واجهة برمجة التطبيقات الآن عدة أخطاء جديدة. تحدّد القائمة أدناه الخطأ وطريقة واجهة برمجة التطبيقات التي قد تعرض هذا الخطأ:
liveBroadcasts.insert– يجب أن يكون وقت انتهاء البث المجدوَل بعد وقت بدئه المجدوَل.-
liveBroadcasts.insert: يحدّد البث حالة خصوصية غير صالحة. -
liveBroadcasts.update: لا يحتوي المورد على قيمة للسمةcontentDetails.enableArchiveأو لا يضبط قيمة لها. -
liveBroadcasts.update: لا يحتوي المورد على قيمة للسمةcontentDetails.enableContentEncryptionأو لا يضبط قيمة لها. -
liveBroadcasts.update: لا يحتوي المورد على قيمة للسمةcontentDetails.enableDvrأو لا يضبط قيمة لها. -
liveStreams.insert: يجب أن يتراوح طول عنوان المقتطف بين حرف واحد و128 حرفًا. -
liveStreams.update: لا يحتوي المورد على قيمة للسمةsnippet.titleأو لا يضبط قيمة لها.
-
تم تعديل مستندات مرجع
liveStreamلتوضيح أنّ البث المتعدّد الوجهات وWebM ليسا من طرق الإدخال المتوافقة كما تمت الإشارة إليه سابقًا. وتم تعديل قائمة التنسيقات للسمةcdn.formatوفقًا لذلك، وتمت إزالة العنصرcdn.multicastIngestionInfoوسماته الفرعية من مستندات المرجع. بالإضافة إلى ذلك، تمت إزالة السمةhttpمن قائمة قيمcdn.ingestionTypeالمسموح بها.