تعرض هذه الصفحة التغييرات في 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 جدولة نقاط الإشارات بمعدّل أعلى، ما يسمح للمشاهدين بتلقّي نقاط الإشارات عندما يكونون مؤهّلين لذلك.
- طول الفاصل الزمني بين الفواصل الإعلانية أثناء التشغيل
توضّح المستندات التغييرات التالية في واجهة برمجة التطبيقات لإتاحة هذه الميزة:
- يحتوي عنصر
liveBroadcastالخاص بالمرجعmonetizationDetailsعلى حقول لتفعيل "الإعلانات أثناء التشغيل" وإعدادات الإعلانات المبرمَجة. - يمكن استخدام طريقة
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
ملاحظة: هذا تعديل على إشعار سابق بشأن الإيقاف النهائي.
لن يعود الحقل cdn.format الخاص بالمرجع liveStream، والذي تم إيقافه نهائيًا في أبريل 2016، متاحًا اعتبارًا من 17 أغسطس 2020. وستتعذّر الطلبات التي لا تزال تستخدم هذا الحقل اعتبارًا من ذلك التاريخ.
إذا كان الرمز لا يزال يستخدم الحقل cdn.format، يجب تعديله لتحديد عدد اللقطات في الثانية والدقة بشكل منفصل، وذلك باستخدام السمتَين cdn.frameRate وcdn.resolution.
6 يوليو 2020
تم تعديل دليل بث محتوى YouTube المباشر عبر HLS ليتضمّن بعض التغييرات:
- تم تعديل المدة المقترَحة لشريحة الوسائط لتصبح من ثانية واحدة إلى أربع ثوانٍ.
- يتضمّن هذا القسم الجديد شرحًا حول كيفية الحصول على عنوان URL خاص بنقل البيانات وفق بروتوكول HTTP (HLS) من "استوديو صنّاع المحتوى على YouTube".
-
تم نقل التعليمات الخاصة بتنسيق قيمة المَعلمة
fileإلى القسم الجديد إكمال عنوان URL للعرض وفق بروتوكول HLS. تنطبق هذه التعليمات بغض النظر عمّا إذا تم الحصول على عنوان URL لنقل البيانات عبر HLS من YouTube API أو "استوديو صنّاع المحتوى في 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للحصول على مثال. هناك الآن عنصران جديدان في الصفحات التي تصف طرق واجهة برمجة التطبيقات:-
تتيح لك أداة "مستكشف واجهات برمجة التطبيقات" اختيار نطاقات التفويض وإدخال عيّنات من قيم المَعلمات والسمات، ثم إرسال طلبات بيانات من واجهة برمجة التطبيقات والاطّلاع على ردود من واجهة برمجة التطبيقات. يوفّر التطبيق المصغّر أيضًا عرضًا بملء الشاشة يعرض عينات تعليمات برمجية كاملة، والتي يتم تحديثها ديناميكيًا لاستخدام النطاقات والقيم التي أدخلتها.
-
يصف قسم حالات الاستخدام الشائعة حالة استخدام شائعة واحدة أو أكثر للطريقة الموضّحة في الصفحة. على سبيل المثال، يمكنك استدعاء طريقة
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 Stickers. في هذه الحالة، يحتوي العنصرsnippet.superStickerMetadataعلى تفاصيل إضافية حول Super Stickers.
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، يتضمّن هذا التعديل العديد من المستندات الداعمة للمساعدة في شرح السياسات التي يجب على المطوّرين اتّباعها.
يمكنك الاطّلاع على المجموعة الكاملة من المستندات الجديدة في سجلّ النُسخ السابقة من "البنود المعدَّلة". بالإضافة إلى ذلك، سيتم أيضًا شرح التغييرات المستقبلية على "البنود المعدَّلة" أو على المستندات الداعمة في سجلّ النُسخ السابقة هذا. يمكنك الاشتراك في خلاصة RSS التي تعرض التغييرات في سجلّ النُسخ السابقة من خلال رابط في ذلك المستند.
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[]المشاكل التي تؤثر في بث فيديو. يتضمّن مستند جديد بعنوان مشاكل الإعداد لموارد البث المباشر جميع المشاكل التي تبلغ عنها واجهة برمجة التطبيقات.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 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المسموح بها.