تسرد هذه الصفحة التغييرات في YouTube Live Streaming API وتعديلات المستندات. الاشتراك في سجلّ التغيير هذا
14 يوليو 2025
تم تعديل وصف الطريقة liveChatMessages.streamList
لتقديم إرشادات حول استخدامات واجهة برمجة التطبيقات streamList.
9 أكتوبر 2023
للمرجعية فقط، يمكنك الاطّلاع على أرقام تعريف الملصقات المرتبطة بملصقات Super Stickers في ملف CSV هذا.
تم تعديل تعريفَي السمتَين snippet.superStickerDetails.superStickerMetadata.stickerId
وsnippet.superStickerMetadata.stickerId
في المرجعَين liveChatMessage
وsuperChatEvent
على التوالي لتعكسا هذه المعلومات.
15 سبتمبر 2023
تتيح واجهة برمجة التطبيقات الآن طريقة جديدة لإدراج الإعلانات في البث المباشر. بالإضافة إلى
liveCuepoints
، التي تتيح لكم
إدراج فواصل إعلانية يدويًا في البث، يتيح YouTube الآن ميزة إدراج
فواصل إعلانية أثناء التشغيل تلقائيًا في البث على فترات زمنية ثابتة.
إذا فعّل مالك البث المباشر الإعلانات المبرمَجة، يمكنه الاطّلاع على الجوانب التالية من سلوك الإعلانات:
- طول الفترة الفاصلة بين فواصل "الإعلانات أثناء التشغيل"
- استراتيجية جدولة نقاط الإشارات في الإعلانات يمكن إدراج نقاط الإشارات بشكل متزامن لجميع المشاهدين أو يمكن أن يختلف توقيت نقاط الإشارات من مشاهد إلى آخر. تتيح الاستراتيجية الأخيرة لـ YouTube جدولة نقاط الإشارات بمعدّل أعلى، ما يسمح للمشاهدين بتلقّي نقاط الإشارات عندما يكونون مؤهّلين لذلك.
- فترة لا يتم خلالها عرض "الإعلانات أثناء التشغيل"، ويحدّد مالك البث أنّه سيتم إيقاف إدراج "الإعلانات أثناء التشغيل" مؤقتًا حتى وقت معيّن.
تعكس المستندات التغييرات التالية في واجهة برمجة التطبيقات لإتاحة هذه الميزة:
- يحتوي المرجع
liveBroadcast
الآن على عنصرmonetizationDetails
. تشير حقول العنصر إلى ما إذا كان إدراج الإعلانات تلقائيًا مفعّلاً للبث، وتحدّد معلومات إضافية لجدولة نقاط الإشارات. - تتوافق المَعلمة
part
الخاصة بالطريقةliveBroadcast.list
مع القيمةmonetizationDetails
. - يمكن استخدام الطريقة
update
لإيقاف إدراج الإعلانات أثناء التشغيل مؤقتًا لفترة معيّنة خلال بث مباشر. تحدّد المستندات أيضًا الآن عدة أخطاء يمكن أن تحدث عند تعديل تفاصيل تحقيق الربح من بث مباشر.
1 أغسطس 2023
يتضمّن هذا التحديث التغييرات التالية:
-
لم يعُد يتطلّب استخدام طريقة
liveBroadcasts.update
تحديد قيم للحقول التالية:snippet.title
status.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.enableContentEncryption
contentDetails.enableDvr
contentDetails.enableEmbed
contentDetails.recordFromStart
contentDetails.startWithSlate
سيؤدي حذف هذه الحقول من الطلب إلى تركها بدون تغيير.
-
تمت إزالة مستندات الحقول القديمة
liveBroadcast
:contentDetails.enableContentEncryption
contentDetails.startWithSlate
1 أبريل 2022
يتضمّن هذا التحديث التغييرات التالية:
-
تتيح السمة
snippet.type
الآن قيمتَين جديدتَين:membershipGiftingEvent
giftMembershipReceivedEvent
-
يحتوي العنصر الجديد
liveChatMessage
في المورد على السمةsnippet.membershipGiftingDetails
الجديدة والعناصر التابعة لها، وهي تتضمّن معلومات عن فعالية "تقديم العضويات كهدية". وبالمثل، يحتوي العنصرsnippet.giftMembershipReceivedDetails
الجديد والعناصر الفرعية التابعة له على معلومات حول حدث "العضوية المدفوعة التي تمّ تلقّيها كهدية".
15 سبتمبر 2021
يتضمّن هذا التحديث التغييرات التالية:
-
تتيح السمة
snippet.type
الآن قيمتَين جديدتَين:newSponsorEvent
memberMilestoneChatEvent
-
يحتوي العنصر الجديد
snippet.memberMilestoneChatDetails
الخاص بالموردliveChatMessage
والعناصر الفرعية التابعة له على معلومات حول حدث "رسالة المحادثة المميّزة الخاصة بالأعضاء". وبالمثل، يحتوي العنصر الجديد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
ملاحظة: هذا تعديل على إشعار سابق بشأن الإيقاف النهائي.
لن يعود الحقل cdn.format
الخاص بمورد liveStream
، والذي تم إيقافه نهائيًا في نيسان (أبريل) 2016، متاحًا اعتبارًا من 17 آب (أغسطس) 2020. واعتبارًا من هذا التاريخ، ستتعذّر الطلبات التي لا تزال تستخدم هذا الحقل.
إذا كان الرمز البرمجي لا يزال يستخدم الحقل cdn.format
، يجب تعديله لتحديد معدّل عرض اللقطات ودقة الوضوح بشكل منفصل باستخدام السمتَين cdn.frameRate
وcdn.resolution
.
6 تموز (يوليو) 2020
تم تعديل دليل عرض محتوى YouTube المباشر باستخدام بروتوكول HLS من خلال إجراء بعض التغييرات:
- تم تعديل المدة المقترَحة لـ Media Segment لتتراوح بين ثانية واحدة وأربع ثوانٍ.
- يتضمّن هذا القسم الجديد شرحًا حول كيفية الحصول على عنوان URL لإدخال بيانات HLS من "استوديو منشئي المحتوى على YouTube".
-
تم نقل التعليمات الخاصة بتنسيق قيمة المَعلمة
file
إلى القسم الجديد إكمال عنوان URL الخاص بعرض المحتوى وفق بروتوكول HLS. تنطبق هذه التعليمات بغض النظر عمّا إذا تم الحصول على عنوان URL الخاص بنقل بيانات HLS من واجهة برمجة التطبيقات في YouTube أو من "استوديو YouTube".
بالإضافة إلى ذلك، تعرض مقارنة بروتوكولات النقل الجديدة بروتوكولات النقل التي يتيحها YouTube، وبرامج الترميز المتوافقة مع كل بروتوكول، ومعلومات إضافية حول حالات الاستخدام المناسبة لكل بروتوكول.
16 نيسان (أبريل) 2020
يتضمّن هذا التحديث موقعًا جديدًا وإشعارًا بإيقاف ميزة نهائيًا:
-
يتيح مصدر
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
للحصول على مثال. تتضمّن الصفحات التي تصف طرق واجهة برمجة التطبيقات عنصرَين جديدَين:-
تتيح لك أداة APIs Explorer اختيار نطاقات التفويض وإدخال قيم نموذجية للمعلمات والسمات، ثم إرسال طلبات فعلية إلى واجهة برمجة التطبيقات والاطّلاع على الردود الفعلية من واجهة برمجة التطبيقات. توفّر الأداة أيضًا عرضًا بملء الشاشة يعرض نماذج رموز برمجية كاملة يتم تعديلها بشكلٍ ديناميكي لاستخدام النطاقات والقيم التي أدخلتها.
-
يصف قسم حالات الاستخدام الشائعة حالة استخدام شائعة واحدة أو أكثر للطريقة الموضّحة في الصفحة. على سبيل المثال، يمكنك استدعاء الطريقة
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
الذي يتضمّن معلومات إضافية عن "الملصق العجيب". - في مرجع
superChatEvent
، يشير القيمة المنطقيةsnippet.isSuperStickerEvent
إلى ما إذا كانت رسالة Super Chat هي أيضًا ملصق Super Stickers. في هذه الحالة، يحتوي العنصر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 ميزة "التمويل من المعجبين"، وسيتم إيقاف واجهة برمجة التطبيقات الخاصة بها في 28 فبراير 2017. واعتبارًا من ذلك التاريخ:
- لن تعرض الطريقة
liveChatMessages.list
بعد الآن الرسائل التي تتضمّنsnippet.type
بقيمةfanFundingEvent
. وبالمثل، لن تحتوي مراجعliveChatMessage
على العنصرsnippet.fanFundingEventDetails
. - لن تعرِض الطريقة
fanFundingEvents.list
بيانات بعد الآن.
11 أغسطس 2016
يتضمّن هذا التحديث التغييرات التالية:
-
توفّر "بنود الخدمة المعدَّلة" الخاصة بخدمات YouTube API، والتي تم نشرها مؤخرًا وتمت مناقشتها بالتفصيل في مدوّنة "الهندسة والتطوير في YouTube"، مجموعة كبيرة من التعديلات على بنود الخدمة الحالية. بالإضافة إلى البنود المعدَّلة التي ستصبح سارية اعتبارًا من 10 فبراير 2017، يتضمّن هذا التعديل عدة مستندات مساعِدة للمساعدة في توضيح السياسات التي يجب أن يلتزم بها المطوّرون.
يمكنك الاطّلاع على المجموعة الكاملة من المستندات الجديدة في سجلّ التعديلات على "بنود الخدمة" المعدَّلة. بالإضافة إلى ذلك، سيتم أيضًا توضيح التغييرات المستقبلية على "البنود المعدَّلة" أو المستندات الداعمة في سجلّ المراجعات هذا. يمكنك الاشتراك في خلاصة RSS تعرض التغييرات في سجلّ النُسخ السابقة هذا من خلال رابط في ذلك المستند.
20 مايو 2016
يتيح YouTube الآن إدخال بيانات DASH. وبناءً على ذلك، تتيح السمة ingestionType
الخاصة بمورد liveStream
القيمة الجديدة dash
لتحديد المحتوى الذي تم تحميله إلى YouTube باستخدام DASH.
يقدّم الدليل الجديد إرسال محتوى مباشر على YouTube باستخدام DASH إرشادات حول استخدام تنسيق DASH Delivery لبث البيانات المباشرة على 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.format
invalidFrameRate
:cdn.frameRate
invalidIngestionType
:cdn.ingestionType
invalidResolution
:cdn.resolution
liveStreams.insert
تتيح الطريقة liveStreams.insert
خطأين جديدين من النوع400
(Bad Request
)، يشير كل منهما إلى عدم توفّر قيمة مطلوبة في الموردliveStream
الذي حاولت الطلب إدراجه. تحدّد القائمة التالية أسباب الخطأ والسمات المرتبطة بها:
frameRateRequired
:cdn.frameRate
resolutionRequired
: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.format
cdn.frameRate
cdn.ingestionType
cdn.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[]
المشاكل التي تؤثر في بث الفيديو. يتضمّن مستند جديد بعنوان مشاكل الضبط لموارد البث المباشر قائمة بجميع المشاكل التي تبلغ عنها واجهة برمجة التطبيقات.contentDetails.isReusable
تُستخدَم لتحديد ما إذا كان يمكن إعادة استخدام البث، ما يعني أنّه يمكن ربطه بعمليات بث متعددة. من الشائع أن يعيد المذيعون استخدام البث المباشر نفسه في العديد من عمليات البث المختلفة إذا كانت عمليات البث هذه تحدث في أوقات مختلفة. -
يتضمّن المرجع
liveBroadcast
السمات الجديدة التالية:الخصائص snippet.isDefaultBroadcast
تحدّد هذه السمة ما إذا كان هذا البث هو البث التلقائي للقناة. عند تفعيل ميزة البث المباشر على قناة YouTube، ينشئ 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
). -
تتيح واجهة برمجة التطبيقات الآن الأخطاء التالية:
نوع الخطأ تفاصيل الخطأ الوصف insufficientPermissions
liveStreamingNotEnabled
تعرض جميع طرق الموارد liveBroadcast
وliveStream
هذا الخطأ إذا لم يكن مسموحًا للمستخدم الذي سمح بطلب البيانات من واجهة برمجة التطبيقات ببث فيديو مباشر على YouTube. قد تتوفّر تفاصيل توضّح سبب عدم إمكانية بث الفيديو مباشرةً في إعدادات قناة المستخدم على https://www.youtube.com/features.rateLimitExceeded
userRequestsExceedRateLimit
تعرض الطريقتان 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 لكل نوع من أنواع الخطأ.
-
تتيح واجهة برمجة التطبيقات الآن الخطأ التالي:
نوع الخطأ تفاصيل الخطأ الوصف insufficientPermissions
livePermissionBlocked
تعرض الطرق 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 الخاص بالاستيعاب الذي سيتم استخدامه لإنشاء ترجمة وشرح للبث المباشر. -
يتيح الآن العنصر
liveBroadcast
استخدام السمةsnippet.scheduledEndTime
مع عمليات البث المجدوَلة للاستمرار إلى أجل غير مسمى. بعد هذا التغيير، لن تعود السمة مطلوبة في طلباتliveBroadcasts.insert
وliveBroadcasts.update
.
إذا استرجعت مصدرliveBroadcast
لا يحدّد قيمة لهذه السمة، سيتم تحديد موعد استمرار البث إلى أجل غير مسمى. وبالمثل، إذا استدعيت الطريقةliveBroadcasts.insert
أوliveBroadcasts.update
ولم تحدّد قيمة لهذه السمة، سيتم تحديد موعد لمواصلة البث إلى أجل غير مسمى. -
لا يمكن الآن ضبط السمة
contentDetails.recordFromStart
الخاصة بالموردliveBroadcast
، والتي كانت تتضمّن القيمة التلقائيةtrue
، علىfalse
إلا إذا كانت القناة الباثة مخوّلة إيقاف التسجيلات للبث المباشر.إذا لم يكن لدى قناتك الإذن بإيقاف التسجيلات، وحاولت إدراج بث مع ضبط قيمة السمة
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
. -
تتيح واجهة برمجة التطبيقات الأخطاء الجديدة التالية:
نوع الخطأ تفاصيل الخطأ الوصف invalidValue
conflictingTimeFields
تعرض الطريقة liveBroadcasts.control
هذا الخطأ إذا كان طلبك يحدّد قيمًا للمَعلمتَينoffsetTimeMs
وwalltime
. يمكن أن يتجاهل الطلب كلتا المَعلمتَين أو يحدّد قيمة لإحداهما.invalidValue
invalidWalltime
تعرض الطريقة liveBroadcasts.control
هذا الخطأ إذا كانت قيمة المَعلمةwalltime
غير صالحة.forbidden
enableClosedCaptionsModificationNotAllowed
تعرض الطريقة liveBroadcasts.update
هذا الخطأ إذا حاولت تعديل قيمةcontentDetails.enableClosedCaptions
وكانت حالة البث المباشر ليستcreated
أوready
.invalidValue
conflictingTimeFields
تعرض الطريقة liveCuepoints.insert
هذا الخطأ إذا كان طلبك يحدّد قيمًا للسمتَينsettings.offsetTimeMs
وsettings.walltime
. يمكن أن يتجاهل الطلب كلتا السمتَين أو يحدّد قيمة لإحدى السمتَين.بالإضافة إلى ذلك، لم تعُد الطريقة
liveStreams.update
تتيح ظهور الخطأcdnRequired
المشابه للخطأ الذي تتيحه الطريقةliveStreams.insert
.
10 مايو 2013
يتضمّن هذا التحديث التغييرات التالية:
-
لم يعُد YouTube يحدّد الميزات والخدمات التجريبية في واجهة برمجة التطبيقات. بدلاً من ذلك، نوفّر الآن قائمة بواجهات YouTube API التي تخضع لسياسة الإيقاف النهائي.
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
المسموح بها.