این صفحه تغییرات YouTube Live Streaming API و بهروزرسانیهای اسناد را فهرست میکند. در این تغییرات ثبت نام کنید .
9 اکتبر 2023
فقط برای مرجع، میتوانید شناسههای برچسب مربوط به کدام Super Sticker را در این فایل CSV بیابید. تعاریف ویژگی snippet.superStickerDetails.superStickerMetadata.stickerId
منبع liveChatMessage
و ویژگی snippet.superStickerMetadata.stickerId
منبع superChatEvent
هر دو به روز شده اند تا این اطلاعات را منعکس کنند.
15 سپتامبر 2023
API اکنون از روش جدیدی برای درج تبلیغات در پخش زنده پشتیبانی می کند. علاوه بر liveCuepoints
، که به شما امکان میدهد وقفههای تبلیغاتی را بهصورت دستی در یک پخش قرار دهید، YouTube اکنون از ویژگی درج خودکار وقفههای تبلیغات میانرویل در پخش در فواصل زمانی ثابت پشتیبانی میکند.
اگر مالک پخش آگهیهای خودکار را فعال کند، میتواند جنبههای زیر از رفتار آگهی را مشاهده کند:
- طول فاصله بین وقفه های تبلیغاتی میان رول.
- استراتژی زمان بندی برای نقاط نشانه تبلیغاتی نقطه نشانه را می توان به طور همزمان برای همه بینندگان درج کرد یا زمان بندی نقاط نشانه می تواند از بیننده ای به بیننده دیگر متفاوت باشد. استراتژی اخیر YouTube را قادر میسازد تا نقطههای نشانه را با نرخ افزایشی برنامهریزی کند که به بینندگان اجازه میدهد در صورت واجد شرایط بودن، نقاط نشانه دریافت کنند.
- دوره ای که در طی آن تبلیغات میان دوره ای نمایش داده نمی شود. برای این ویژگی، مالک پخش مشخص می کند که درج تبلیغات میان رول تا زمان خاصی متوقف شود.
اسناد تغییرات API زیر را برای پشتیبانی از این ویژگی منعکس می کند:
- منبع
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 یا پس از آن حذف خواهد شد. کاربران API باید برنامههای خود را بهروزرسانی کنند تا بهجای آن با روش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
-
ویژگی جدید
snippet.membershipGiftingDetails
منبعliveChatMessage
و فرزندان آن حاوی اطلاعاتی درباره رویداد عضویت هدیه است. به طور مشابه، ویژگی جدیدsnippet.giftMembershipReceivedDetails
و فرزندان آن حاوی اطلاعاتی درباره رویداد Gift Membership Received هستند.
15 سپتامبر 2021
این به روز رسانی شامل تغییرات زیر است:
ویژگی
snippet.type
اکنون از دو مقدار جدید پشتیبانی می کند:-
newSponsorEvent
-
memberMilestoneChatEvent
-
ویژگی جدید
snippet.memberMilestoneChatDetails
منبعliveChatMessage
و فرزندان آن حاوی اطلاعاتی درباره رویداد Member Milestone Chat هستند. به طور مشابه، ویژگی جدیدsnippet.newSponsorDetails
و فرزندان آن حاوی اطلاعاتی درباره رویداد New Sponsor هستند.
1 دسامبر 2020
روش liveBroadcasts.transition
API از یک خطای جدید 403
( Forbidden
) پشتیبانی می کند، که نشان می دهد کاربر در یک بازه زمانی معین درخواست های زیادی ارسال کرده است. دلیل خطا userRequestsExceedRateLimit
است.
21 سپتامبر 2020
تعریف ویژگی
status.madeForKids
منبعliveBroadcast
به روز شده است تا مشخص شود این ویژگی فقط خواندنی است. این نشان دهنده تغییر در عملکرد API نیست.برای تعیین پخش زنده بهعنوان کارگردانی کودک، هنگام فراخوانی روش
liveBroadcasts.insert
برای ایجاد پخش، ویژگیstatus.selfDeclaredMadeForKids
را رویtrue
تنظیم کنید.توجه: این تغییر شامل یک اعلامیه منسوخ شدن و یک به روز رسانی به یک اعلامیه منسوخ قبلی است.
روش
liveBroadcasts.control
در تاریخ 1 اکتبر 2020 یا بعد از آن منسوخ خواهد شد. پس از آن تاریخ، همه تماسهای این روش یک خطای ممنوعه (403) را برمیگرداند و این روش بعداً به طور کامل حذف خواهد شد. مشتریان همچنان میتوانند با افزودن یک پوشش به ویدیوی ارسال شده به سرورهای جذب YouTube، جدول خود را پیادهسازی کنند.تاریخ منسوخ شدن اعلامیه منسوخ شدن اعلام شده در 16 آوریل 2020 ، که در ابتدا برای 1 سپتامبر 2020 برنامه ریزی شده بود، به تعویق افتاد و اکنون در یا بعد از 1 اکتبر 2020 اتفاق می افتد. بنابراین، ویژگی های موجود در آن اعلامیه منسوخ شدن و
liveBroadcasts.control
روشliveBroadcasts.control
همه به طور همزمان منسوخ خواهد شد.
17 جولای 2020
توجه: این بهروزرسانی یک اعلامیه قبلی منسوخ شدن است.
قسمت cdn.format
منبع liveStream
که در آوریل 2016 منسوخ شده بود، از 17 آگوست 2020 دیگر پشتیبانی نمیشود. درخواستهایی که همچنان از آن فیلد استفاده میکنند تا آن تاریخ ناموفق خواهند بود.
اگر کد شما همچنان از فیلد cdn.format
استفاده میکند، باید بهروزرسانی شود تا با استفاده از ویژگیهای cdn.frameRate
و cdn.resolution
، نرخ فریم و وضوح تصویر را جداگانه مشخص کند.
6 جولای 2020
ارائه محتوای زنده YouTube از طریق راهنمای HLS با چند تغییر بهروزرسانی شده است:
- مدت زمان توصیه شده برای یک بخش رسانه به یک تا چهار ثانیه به روز شده است.
- بخش جدیدی نحوه به دست آوردن URL انتقال HLS از YouTube Creator Studio را توضیح می دهد.
- دستورالعملهای قالببندی مقدار پارامتر
file
به بخش جدید تکمیل URL ورودی HLS منتقل شده است. این دستورالعملها صرفنظر از اینکه نشانی اینترنتی انتقال HLS از YouTube API یا YouTube Creator Studio گرفته شده باشد اعمال میشوند.
علاوه بر این، مقایسه پروتکل جذب جدید، پروتکلهای جذبی را که YouTube پشتیبانی میکند، کدکهای پشتیبانی شده برای هر پروتکل و اطلاعات اضافی در مورد موارد استفاده مناسب برای هر پروتکل فهرست میکند.
16 آوریل 2020
این به روز رسانی شامل یک ویژگی جدید و یک اعلامیه انحلال است:
منبع
liveBroadcast
اکنون از ویژگیcontentDetails.enableAutoStop
پشتیبانی می کند. این ویژگی نشان میدهد که آیا پخش باید بهطور خودکار حدود یک دقیقه پس از توقف پخش ویدیو توسط مالک کانال در جریان ویدیوی محدود، متوقف شود.اگر ویژگی های
contentDetails.enableAutoStart
یاcontentDetails.enableAutoStop
را رویtrue
تنظیم کنید، عمر یک سند پخش به روز شده است تا توضیح دهد که چگونه فرآیند گام به گام ایجاد و مدیریت یک رویداد زنده YouTube تغییر می کند.توجه: این یک اعلامیه منسوخ شدن است. این تغییرات در تاریخ 1 سپتامبر 2020 یا پس از آن اعمال خواهند شد. تاریخ واقعی اعمال تغییرات در زیر به عنوان تاریخ انحلال نامیده می شود.
این به روز رسانی یک تغییر بالقوه شکسته را توضیح می دهد. این برنامه بر برنامههای سرویس گیرنده API که از منابع
liveStream
مستقیم وliveBroadcast
پیشفرض کانالها برای پخش محتوای زنده در YouTube استفاده میکنند، تأثیر میگذارد. به طور خاص، شناسه پخش و شناسه پخش مرتبط با پخش و پخش مداوم دیگر برای شروع پخش جدید کار نمی کنند.اگر هر یک از موارد زیر درست باشد، برنامه شما تحت تأثیر قرار خواهد گرفت:
- این مقدار ویژگی
isDefaultBroadcast
منبعliveBroadcast
را بررسی می کند. این ملک پس از تاریخ انحلال مسترد نخواهد شد. - این مقدار ویژگی
isDefaultStream
منبعliveStream
را بررسی می کند. این ملک پس از تاریخ انحلال مسترد نخواهد شد. - متد
liveBroadcasts.list
فراخوانی می کند و مقدار پارامترbroadcastType
را رویpersistent
یاall
تنظیم می کند. این پارامتر به عنوان بخشی از این تغییرات منسوخ خواهد شد. از تاریخ انصراف:- اگر مقدار پارامتر
broadcastType
persistent
باشد، روشliveBroadcasts.list
هیچ نتیجهای را بر نمیگرداند. - اگر مقدار پارامتر
broadcastType
all
باشد، روشliveBroadcasts.list
پخشهای مداومی را که قبل از آن زمان وجود داشته است را برنمیگرداند.
- اگر مقدار پارامتر
به عنوان پسزمینه، در چند سال گذشته، YouTube بهطور خودکار یک جریان پیشفرض و یک پخش پیشفرض برای یک کانال زمانی که آن کانال برای پخش زنده فعال شده بود، ایجاد کرده است. جریان پیشفرض بهطور نامحدود وجود داشت، زمان شروع یا پایان مرتبط با آن نداشت و نمیتوان آن را حذف کرد. به طور مشابه، پخش پیش فرض دائمی در نظر گرفته شد. همیشه وجود داشته و مقید به یک رویداد خاص نبوده است.
از تاریخ انصراف:
- YouTube دیگر پخشها و جریانهای پیشفرض ایجاد نمیکند. به جای تکیه بر منابع پیشفرض، مشتریان API باید بتوانند منابع
liveBroadcast
وliveStream
را ایجاد و مدیریت کنند و آن منابع را به یکدیگر متصل کنند. - اگر پخش پیشفرض و پخش جریانی پیشفرض یک کانال بهطور فعال فعال باشند، به این معنی که کانال از آنها برای پخش زنده در زمانی که منسوخ میشود استفاده میکند، پخش در حال انجام تحت تأثیر قرار نمیگیرد. با این حال، پس از پایان آن پخش، کانال نمیتواند دوباره از پخش پیشفرض و جریان پیشفرض استفاده کند.
- اگر پخش پیشفرض و پخش جریانی پیشفرض یک کانال بهطور فعال فعال نباشد، پس از اجرای لغو، YouTube تلاشها برای استفاده از آن منابع برای پخش ویدیو را نادیده میگیرد.
اگر برنامه شما تحت تأثیر قرار گرفته است، لطفاً به اسناد زیر مراجعه کنید، که به شما کمک می کند برنامه خود را به روز کنید تا همچنان مطابق با این تغییر کار کند:
- یک راهنمای انتقال جدید تلاش میکند تا مراحلی را که توسعهدهندگان ممکن است نیاز داشته باشند در کلاینتهای API که در حال حاضر از پخشها و جریانهای پیشفرض استفاده میکنند، توضیح دهد.
- راهنمای پخش زنده شما را در یک فرآیند گام به گام راهنمایی می کند که نحوه ایجاد و مدیریت یک رویداد زنده در YouTube را توضیح می دهد. هر مرحله تماسهای API یا سایر مواردی را که باید برای انجام یک اقدام خاص انجام دهید توضیح میدهد، و زمانی که YouTube پشتیبانی از پخشها و پخشهای پیشفرض را متوقف کرد، برنامه شما باید این فرآیند را دنبال کند.
- این مقدار ویژگی
31 مارس 2020
توجه: این یک اعلامیه منسوخ شدن است.
روش منبع sponsor
و sponsors.list
منسوخ شده و با روش member
منبع و members.list
جایگزین شده است.
روش sponsors.list
دیگر در 30 سپتامبر 2020 یا پس از آن پشتیبانی نخواهد شد. مشتریان API باید تماسها را به روش sponsors.list
بهروزرسانی کنند تا از روش members.list
استفاده کنند. لطفاً برای اطلاعات بیشتر درباره منبع جدید ، سابقه بازبینی YouTube Data API را ببینید.
11 مارس 2020
بخش نقطه پایانی انتقال محتوای زنده YouTube از طریق راهنمای HLS بهروزرسانی شده است تا فرآیندی را که یک رمزگذار باید برای تکمیل مقدار پارامتر file=
هنگام تشکیل URLهای اصلی و پشتیبان استفاده کند، روشن کند.
4 فوریه 2020
ارائه محتوای زنده YouTube از طریق راهنمای HLS بهروزرسانی شده است تا توجه داشته باشد که درخواستهای DELETE
اختیاری هستند و نقطه پایانی HLS YouTube آنها را نادیده میگیرد. به دلایل عملکرد، YouTube به مشتریان توصیه میکند درخواستهای DELETE
را ارسال نکنند.
10 ژانویه 2020
API اکنون از توانایی شناسایی محتوای هدایتشده برای کودکان پشتیبانی میکند که YouTube آن را «ساخته شده برای کودکان» مینامد. در مرکز راهنمای YouTube درباره محتوای «ساخته شده برای کودکان» بیشتر بدانید .
- منبع
liveBroadcast
از دو ویژگی جدید پشتیبانی می کند تا به سازندگان محتوا و بینندگان امکان شناسایی محتوای «ساخته شده برای بچه ها» را بدهد:- ویژگی
selfDeclaredMadeForKids
به سازندگان محتوا این امکان را می دهد تا مشخص کنند که آیا پخش زنده محتوایی برای کودکان است یا خیر. این ویژگی را می توان هنگام ایجاد پخش از طریق متدliveBroadcasts.insert
تنظیم کرد. توجه داشته باشید که این ویژگی فقط در پاسخهای API که حاوی منابعliveBroadcast
هستند در صورتی گنجانده میشود که مالک کانال درخواست API را مجاز کرده باشد. - ویژگی
madeForKids
هر کاربر API را قادر میسازد تا وضعیت «ساخته شده برای بچهها» یک پخش را بازیابی کند. برای مثال، وضعیت ممکن است بر اساس مقدار ویژگیselfDeclaredMadeForKids
تعیین شود. برای اطلاعات بیشتر درباره تنظیم مخاطب برای کانال، ویدیوها یا پخشهای خود، به مرکز راهنمایی YouTube مراجعه کنید.
- ویژگی
- در YouTube Data API، منبع
channel
از ویژگیهای جدیدselfDeclaredMadeForKids
وmadeForKids
نیز پشتیبانی میکند.
ما همچنین شرایط خدمات YouTube API Services و خطمشیهای برنامهنویس را بهروزرسانی کردهایم. لطفاً برای اطلاعات بیشتر به شرایط خدمات YouTube API Services - Revision History مراجعه کنید. تغییرات در شرایط خدمات YouTube API Services و خطمشیهای برنامهنویس از 10 ژانویه 2020 به وقت اقیانوس آرام اعمال میشود.
20 آگوست 2019
بخش الزامات ارائه محتوای زنده YouTube از طریق راهنمای HLS با دو تغییر بهروزرسانی شده است:
- توضیح میدهد که گنجاندن بخشهای تأیید شده و بخشهای برجسته در هر فهرست پخش رسانه، بهترین روش است. این عمل باعث میشود در صورت گم شدن فهرست پخش رسانهای در سمت سرور، احتمال رد شدن یک بخش کمتر شود. برای مثال، میتوانید حداکثر دو بخش تأیید شده و حداکثر پنج بخش برجسته را در هر فهرست پخش رسانه اضافه کنید.
- اکنون ارسال یک فهرست پخش رسانه برای هر بخش رسانه الزامی است. این به سرور امکان میدهد در صورت گم شدن فهرست پخش رسانه، به سرعت بازیابی شود. این عمل قبلاً به عنوان یک توصیه ذکر شده بود.
28 ژوئن 2019
YouTube اکنون از جذب HLS پشتیبانی می کند. بر این اساس، ویژگی ingestionType
منبع liveStream
از مقدار جدید hls
برای شناسایی جریانهای دریافت شده در YouTube با استفاده از HLS پشتیبانی میکند.
ارائه جدید محتوای زنده YouTube از طریق راهنمای HLS دستورالعملهایی را برای استفاده از HLS برای پخش جریانی محتوای زنده به YouTube از یک رمزگذار ارائه میکند. هدف این راهنما کمک به فروشندگان رمزگذار است که پشتیبانی تحویل HLS را به محصولات خود اضافه کنند.
4 آوریل 2019
این به روز رسانی شامل تغییرات زیر است:
اسناد مرجع API برای توضیح بهتر موارد استفاده رایج برای هر روش و ارائه نمونه کد پویا و با کیفیت بالا از طریق ویجت APIs Explorer به روز شده است. برای مثال به مستندات روش
liveBroadcasts.list
مراجعه کنید. اکنون دو عنصر جدید در صفحات وجود دارد که روشهای API را توصیف میکنند:ویجت APIs Explorer به شما امکان میدهد محدودههای مجوز را انتخاب کنید، پارامترهای نمونه و مقادیر ویژگی را وارد کنید، و سپس درخواستهای API واقعی را ارسال کنید و پاسخهای API واقعی را ببینید. ویجت همچنین یک نمای تمام صفحه ارائه می دهد که نمونه های کامل کد را نشان می دهد که به صورت پویا برای استفاده از محدوده ها و مقادیری که وارد کرده اید به روز می شوند.
بخش موارد استفاده متداول یک یا چند مورد استفاده متداول را برای روش توضیح داده شده در صفحه توضیح می دهد. برای مثال، میتوانید برای بازیابی دادههای مربوط به یک پخش خاص یا برای بازیابی اطلاعات مربوط به پخشهای کاربر فعلی، روش
liveBroadcasts.list
را فراخوانی کنید.میتوانید از پیوندهای موجود در آن بخش برای پر کردن APIs Explorer با مقادیر نمونه برای مورد استفاده خود یا برای باز کردن APIs Explorer تمام صفحه با مقادیری که قبلاً پر شدهاند، استفاده کنید. هدف از این تغییرات، دیدن نمونههای کدی است که مستقیماً در مورد استفادهای که میخواهید در برنامه کاربردی خود پیادهسازی کنید، قابل اجرا هستند.
نمونه کد در حال حاضر برای جاوا، جاوا اسکریپت، پی اچ پی، پایتون و کرل پشتیبانی می شود.
صفحه نمونه کد همچنین دارای یک رابط کاربری جدید است که همه ویژگی های مشابهی را که در بالا توضیح داده شد ارائه می دهد. با استفاده از آن ابزار، میتوانید موارد استفاده را برای روشهای مختلف کاوش کنید، مقادیر را در APIs Explorer بارگیری کنید، و APIs Explorer تمام صفحه را باز کنید تا نمونههای کد را در جاوا، جاوا اسکریپت، PHP و پایتون دریافت کنید.
در ارتباط با این تغییر، صفحاتی که قبلاً نمونه کدهای موجود برای جاوا، پی اچ پی و پایتون را فهرست کرده بودند حذف شدند.
25 فوریه 2019
مستندات منابع liveChatMessage
و superChatEvent
بهروزرسانی شده است تا منعکس کننده این واقعیت باشد که هر دو منبع اکنون میتوانند حاوی اطلاعاتی درباره Super Stickers باشند. Super Sticker ها نوعی پیام Super Chat هستند که یک تصویر را نمایش می دهند. مانند دیگر Super Chat ها، پیام Super Sticker توسط یکی از طرفداران در جریان پخش زنده YouTube خریداری می شود.
- در یک منبع
liveChatMessage
، ویژگیsnippet.type
اکنون رویsuperStickerEvent
تنظیم شده است تا نشان دهد که منبع حاوی اطلاعاتی درباره Super Sticker است. در آن صورت، منبع همچنین حاوی شیsnippet.superStickerDetails
است که حاوی اطلاعات اضافی درباره Super Sticker است. - در یک منبع
superChatEvent
،snippet.isSuperStickerEvent
boolean نشان می دهد که آیا پیام Super Chat نیز یک Super Sticker است یا خیر. اگر چنین است، شیsnippet.superStickerMetadata
حاوی جزئیات بیشتری درباره Super Sticker است.
5 آوریل 2018
شرح روش superChatEvents.list
بهروزرسانی شده است تا منعکس کننده این واقعیت باشد که پاسخ API دیگر حاوی fanFundingEvents
نیست، که در اوایل سال 2017 منسوخ شده بودند.
3 آوریل 2017
نمونه کدهای جدید جاوا اضافه شده است که نحوه فهرست کردن ، درج و حذف پیام های چت زنده را نشان می دهد. نمونه ها روش های زیر را فراخوانی می کنند:
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 Chats از دو جهت از پیامهای دیگر متمایز است:- سوپر چت ها با یک رنگ برجسته می شوند.
- Super Chat برای مدت زمان معینی در تیک تیک پین می ماند.
رنگ Super Chat، مدت زمانی که پین میشود و حداکثر طول پیام، همگی با مقدار خرید تعیین میشوند. مرکز راهنمای YouTube اطلاعات بیشتری درباره Super Chats دارد.
API از روشی برای فهرست کردن رویدادهای Super Chat برای پخشهای زنده کانال در 30 روز گذشته پشتیبانی میکند. این روش همچنین دادههای مربوط به رویدادهای سرمایهگذاری طرفداران (
fanFundingEvents
) را از آخرین پخش زنده کانال برمیگرداند.
به روز رسانی منابع و روش های موجود
ویژگی
snippet.type
اکنون از مقدارsuperChatEvent
پشتیبانی می کند که نشان می دهد منبع یک Super Chat را توصیف می کند.علاوه بر این، ویژگی جدید
snippet.superChatDetails
منبعliveChatMessage
و فرزندان آن حاوی اطلاعاتی درباره رویداد Super Chat هستند.ویژگی
cdn.resolution
منبعliveStream
اکنون از مقدار2160p
پشتیبانی می کند.
خطاهای جدید و به روز شده
API از خطاهای جدید زیر پشتیبانی می کند:
جزئیات خطا 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 را منسوخ کرده است و Fan Funding API در 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 برای پخش جریانی داده های زنده در YouTube از یک رمزگذار ارائه می دهد. در نظر گرفته شده است که به فروشندگان رمزگذار کمک کند تا پشتیبانی تحویل DASH را به محصولات خود اضافه کنند.
18 آوریل 2016
این به روز رسانی شامل تغییرات زیر است:
به روز رسانی منابع و روش های موجود
- به روز رسانی منابع
liveStream
یوتیوب اکنون از پخش جریانی با وضوح 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
مشخص کنید، در حال حاضر موفق میشوند. اگر مقادیری را برای هر سه ویژگی ارائه کنید، در صورتی که مقادیر مطابقت نداشته باشند، API ممکن است با خطا مواجه شود.توجه داشته باشید که اگرچه ویژگی
cdn.format
منسوخ شده است، اما اکنون از دو مقدار جدید،1440p
و1440p_hfr
پشتیبانی میکند تا پشتیبانی API از جریانهای 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
باشد.
- به روز رسانی منابع
خطاهای جدید و به روز شده
API از خطاهای جدید زیر پشتیبانی می کند:
جزئیات خطا 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
مشخص کنید.- API یک خطای
formatRequired
را برمیگرداند اگر مقداری برای هر یک از سه ویژگی مشخص نکنید. - اگر مقداری را برای
cdn.resolution
و نهcdn.frameRate
مشخص کنید، API یک خطایframeRateRequired
برمیگرداند. - اگر مقداری را برای
cdn.frameRate
و نهcdn.resolution
مشخص کنید، API یک خطایresolutionRequired
را برمیگرداند.
liveStreams.update
روش liveStreams.update
یک خطای403
(Forbidden
) را برمیگرداند اگر درخواست سعی کند مقدار هر یک از ویژگیهای غیرقابل تغییر زیر را تغییر دهد:-
cdn.format
-
cdn.frameRate
-
cdn.ingestionType
-
cdn.resolution
reason
پاسخ به خطاliveStreamModificationNotAllowed
است.-
18 دسامبر 2015
قوانین اتحادیه اروپا (EU) ایجاب می کند که افشای مشخصی باید به کاربران نهایی در اتحادیه اروپا داده شود و از آنها رضایت گرفته شود. بنابراین، برای کاربران نهایی در اتحادیه اروپا، باید از سیاست رضایت کاربر اتحادیه اروپا پیروی کنید. ما در شرایط خدمات YouTube API خود اطلاعیه ای درباره این الزام اضافه کرده ایم.
17 دسامبر 2015
این به روز رسانی شامل تغییرات زیر است:
منابع و روش های جدید
API از چندین منبع جدید برای پشتیبانی از عملکرد چت برای پخش زنده پشتیبانی می کند. YouTube از عملکرد چت زنده در طول پخش زنده فعال پشتیبانی می کند و این منابع و روش های آنها از بازیابی پیام های چت و همچنین عملکردهای مدیریتی برای چت پشتیبانی می کنند.
منابع liveChatMessage
این منبع پیامی را در یک چت زنده YouTube نشان می دهد. YouTube از چندین نوع پیام، از جمله پیامهای متنی و رویدادهای تأمین مالی طرفداران پشتیبانی میکند. برخی از انواع پیام ها، مرحله خاصی از چت را شناسایی می کنند، مانند شروع دوره فقط حامیان مالی یا پایان چت. API از روش هایی برای فهرست کردن، درج و حذف پیام های چت زنده پشتیبانی می کند. liveChatModerators
این منبع یک مدیر چت را شناسایی می کند. گردانندگان می توانند برخی از عملکردهای مدیریتی مانند ممنوعیت کاربران از چت یا حذف پیام ها را انجام دهند. API از روش هایی برای فهرست کردن، درج و حذف ناظران چت زنده پشتیبانی می کند. liveChatBans
این منبع کاربری را شناسایی می کند که از ارسال پیام به یک چت زنده خاص منع شده است. ممنوعیت ها می تواند موقت یا دائمی باشد. API از روش هایی برای درج و حذف ممنوعیت های چت زنده پشتیبانی می کند. fanFundingEvents
این منبع یک رویداد سرمایهگذاری طرفداران را در یک کانال YouTube نشان میدهد. سرمایهگذاری طرفداران راهی برای بینندگان فراهم میکند تا داوطلبانه از سازندگان YouTube با یکبار حمایت پولی حمایت کنند.
روشfanFundingEvents.list
API رویدادهای تأمین مالی طرفداران کانال را فهرست می کند. رویدادهای Fan Funding که از طریق یک چت زنده در طول پخش زنده متعلق به کانال آغاز می شود، همچنین یک پیامfanFundingEvent
را به چت زنده پخش راه اندازی می کند.
در مرکز راهنمایی YouTube درباره تأمین مالی طرفداران بیشتر بدانید.sponsors
منبع sponsor
، حامی مالی یک کانال YouTube را شناسایی می کند. اسپانسر ماهانه هزینه ای را به یک کانال می پردازد. نشانی در کنار پیامهای حامی مالی در چتهای زنده کانال نشان داده میشود و حامیان مالی نیز میتوانند در چتهای زنده منحصراً برای حامیان مالی کانال شرکت کنند، در صورت بروز چنین اتفاقی.
روشsponsors.list
API حامیان مالی کانال را فهرست می کند. هنگامی که کاربران برای حمایت از یک کانال در طول پخش زنده متعلق به آن کانال ثبت نام می کنند، API همچنین یک پیام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
استفاده کنید. برای کلاینتهای API که قبلاً از این ویژگی استفاده میکنند:- تنظیم مقدار ویژگی روی
true
معادل تنظیم خاصیتcontentDetails.closedCaptionsType
رویclosedCaptionsHttpPost
است. - تنظیم مقدار ویژگی بر روی
false
معادل تنظیم ویژگیcontentDetails.closedCaptionsType
بر رویclosedCaptionsDisabled
است.
-
پارامتر جدید
broadcastType
روشliveBroadcasts.list
به شما امکان می دهد یک پاسخ API را فیلتر کنید تا شامل پخش رویداد، پخش مداوم یا همه پخش ها شود.پخش مداوم پخشی است که همیشه وجود دارد و به رویداد خاصی وابسته نیست. به طور خاص، پخش پیشفرض کانال یک پخش دائمی است و از طریق داشبورد زنده در استودیوی سازندگان YouTube قابل دسترسی است. از دیگر برنامه های این کانال پخش رویداد است.
قسمت
status.healthStatus.configurationIssues[].type
منبعliveStream
خطاهای وضعیت سلامت جدید زیر را گزارش میکند:خطاها audioTooManyChannels
صدا بیش از دو کانال دارد، اما تنها یک کانال (مونو) یا دو (استریو) پشتیبانی میشود. لطفا تعداد کانال های صوتی را تصحیح کنید. frameRateHigh
The current framerate is too high. Please set the framerate to %(framerate)s
fps or less.The publication date of the previous documentation update was corrected.
New and updated errors
In addition to errors defined for the new resources listed above, the API supports the following new errors:
Error details liveBroadcasts.update
HTTP Response Code forbidden (403)
Reason closedCaptionsTypeModificationNotAllowed
Description The contentDetails.closedCaptionsType
value can only be modified when the broadcast is in thecreated
orready
status.liveBroadcasts.update
HTTP Response Code invalidValue (400)
Reason invalidEnableClosedCaptions
Description In the liveBroadcast resource , the value of the contentDetails.enableClosedCaptions
property is incompatible with the value of thecontentDetails.closedCaptionType
setting. Modify the resource to only include one of the two properties, and then resubmit the request.
August 19, 2015
This update contains the following changes:
New resources and methods
Note: Documentation for the
liveChat
resource and its methods is confidential and only visible to select YouTube partners.The new
liveChat
resource contains a comment posted during a live broadcast on YouTube. The API supports two methods for this resource:مواد و روش ها liveChats.list
List live chat messages for a broadcast. liveChats.insert
Create a new chat message. Live chat messages can only be retrieved and posted while a broadcast is live.
Updates to existing resources and methods
The
liveStream
resource contains the following new properties:خواص snippet.isDefaultStream
Indicates whether this stream is the default stream for the channel. A channel's default stream exists indefinitely, does not have a start or end time associated with it, and cannot be deleted. See the property's definition for more information about how default streams work. status.healthStatus
This object contains information that could be used to identify, diagnose and resolve streaming problems. The object contains a number of child properties to help you evaluate the health of a live video stream.
In particular, thestatus.healthStatus.configurationIssues[]
object lists issues affecting a video stream. A new document, Configuration Issues for LiveStream Resources , lists all of the issues that the API reports.contentDetails.isReusable
Indicates whether the stream is reusable, which means that it can be bound to multiple broadcasts. It is common for broadcasters to reuse the same stream for many different broadcasts if those broadcasts occur at different times. The
liveBroadcast
resource contains the following new properties:خواص snippet.isDefaultBroadcast
Indicates whether this broadcast is the default broadcast for the channel. When a YouTube channel is enabled for live streaming, YouTube creates a default stream and a default broadcast for the channel. The stream defines how the channel owner sends live video to YouTube, and the broadcast is how viewers can see the default stream. See the property's definition for more information about how default broadcasts work. contentDetails.enableLowLatency
Indicates whether this broadcast should be encoded for low-latency streaming. A low-latency stream can reduce the amount of time it takes for video to be visible to users watching a broadcast, though it can also impact the resolution for viewers of the stream. statistics.totalChatCount
The total number of live chat messages associated with the broadcast. The property and its value are present if the broadcast is visible to the user and has the live chat feature enabled. Note that this property will not specify a value after the broadcast ends. So, this property would not identify the number of chat messages for an archived video of a completed live broadcast.
New and updated errors
In addition to errors defined for the new
liveChat
resource, the API supports the following new error:Error details liveStreams.update
HTTP Response Code forbidden (403)
Reason liveStreamModificationNotAllowed
Description The API does not allow you to change a reusable stream to be non-reusable, or vice versa. For more information, see Understanding Broadcasts and Streams
May 21, 2015
This update contains the following changes:
YouTube now supports live video streaming at 60 frames per second (fps), which means smoother playback for gaming and other fast-action videos. When you start a live stream on YouTube at 60fps, YouTube also makes the stream available in 30fps on devices where high-frame-rate viewing is not yet available.
The
liveStream
resource'scdn.format
property supports two new values for this feature:720p_hfr
and1080p_hfr
.See the YouTube Creators Blog for more information about this feature.
August 21, 2014
This update contains the following changes:
The definition of the
liveBroadcasts.control
method'swalltime
parameter has been updated to note that the property value is specified in ISO 8601 format (YYYY-MM-DDThh:mm:ss.sssZ
).The API now supports the following errors:
Error type Error detail Description insufficientPermissions
liveStreamingNotEnabled
All methods for the liveBroadcast
andliveStream
resources return this error if the user that authorized the API request has not been enabled to stream live video on YouTube. Details explaining why the user cannot stream live video may be available in the user's channel settings at https://www.youtube.com/features .rateLimitExceeded
userRequestsExceedRateLimit
The liveBroadcasts.insert
andliveStreams.insert
methods both return this error to indicate that the user has sent too many requests within a given timeframe.
May 2, 2014
This update contains the following changes:
The descriptions of the
liveStream
resource and of theliveBroadcasts.bind
method have been updated to note that a broadcast can only be bound to one video stream, but a video stream can be bound to more than one broadcast. This change is solely a correction to the documentation; the underlying API functionality has not changed.The
liveBroadcast
resource'scontentDetails.monitorStream.enableMonitorStream
property has been updated to explain that if the property's value istrue
, then you must transition your broadcast to thetesting
state before you can transition it to thelive
state. (If the property's value isfalse
, your broadcast cannot have atesting
stage, so you can transition the broadcast directly to thelive
state.The
liveCuepoint
resource'ssettings.offsetTimeMs
property has been updated to note that you should not specify a value for the property if your broadcast does not have a monitor stream.All of the methods for the
liveBroadcast
andliveStream
resources now support theonBehalfOfContentOwner
andonBehalfOfContentOwnerChannel
parameters. These parameters allow you to use the same authorization credentials to complete API requests for different channels associated with the same content owner.The
liveCuepoints.insert
method's documentation has been updated to note that you can set a value for thesettings.walltime
property when calling that method.The error documentation now specifies the HTTP response code for each error type.
The API now supports the following error:
Error type Error detail Description insufficientPermissions
livePermissionBlocked
The liveBroadcasts.insert
,liveBroadcasts.transition
, andliveStreams.insert
methods return this error if the user that authorized the request is unable to stream live video on YouTube. Details explaining why the user cannot stream live video may be available in the user's channel settings at https://www.youtube.com/features .The
liveBroadcasts.insert
method'sinvalidScheduledStartTime
error has been updated to clarify that the scheduled start time must be close enough to the current date that a broadcast could be reliably scheduled at that time.
December 13, 2013
This update contains the following changes:
The
liveBroadcast
resource's newstatus.recordingStatus
property identifies the broadcast's current status.The
liveBroadcast
resource's newcontentDetails.enableClosedCaptions
property indicates whether closed captions can be ingested for the broadcast. The property value can be set when you insert or update a broadcast, but it cannot be updated once the broadcast is in thetesting
orlive
state. If you set this property totrue
, then theliveStream
resource that is bound to the broadcast will specify the ingestion URL to use for the broadcast's closed captions.The
liveBroadcast
resource'ssnippet.scheduledEndTime
property now supports broadcasts that are scheduled to continue indefinitely. With this change, the property is no longer required inliveBroadcasts.insert
andliveBroadcasts.update
requests.
If you retrieve aliveBroadcast
resource that does not specify a value for this property, then the broadcast is scheduled to continue indefinitely. Similarly, if you call theliveBroadcasts.insert
orliveBroadcasts.update
method and do not specify a value for this property, the broadcast will be scheduled to continue indefinitely.The
liveBroadcast
resource'scontentDetails.recordFromStart
property, which already had a default value oftrue
, can now only be set tofalse
if the broadcasting channel is allowed to disable recordings for live broadcasts.If your channel does not have permission to disable recordings, and you attempt to insert a broadcast with the
recordFromStart
property set tofalse
, the API will return aForbidden
error. In addition, if your channel does not have that permission and you attempt to update a broadcast to set therecordFromStart
property tofalse
, the API will return amodificationNotAllowed
error.The
liveBroadcast
resource no longer contains anenableArchive
property, which had been mentioned in the descriptions of thecontentDetails.enableDvr
andcontentDetails.enableEmbed
properties.The list of valid values for the
liveBroadcast
resource'sstatus.lifeCycleStatus
property has been updated to include a description of each status.The
liveCuepoint
resource's newsettings.walltime
property specifies the date and time at which the cuepoint should be inserted. The API returns an error if a request tries to insert a cuepoint that specifies a value for this property and for thesettings.offsetTimeMs
property.The new
contentDetails
object in aliveStream
resource contains information about the stream. Currently, the object's only property iscontentDetails.closedCaptionsIngestionUrl
, which specifies the ingestion URL for closed captions associated with the video stream.The list of valid values for the
liveStream
resource'sstatus.streamStatus
property has been updated to include a description of each status.The
liveBroadcasts.control
method's newwalltime
parameter lets you specify the date and time when a slate change will occur. The API returns an error if a request specifies a value for this parameter and for theoffsetTimeMs
parameter.In the API response to a
liveBroadcasts.list
request, the value of thekind
property has changed fromyoutube#liveBroadcastList
toyoutube#liveBroadcastListResponse
.In the API response to a
liveStreams.list
request, the value of thekind
property has changed fromyoutube#liveStreamList
toyoutube#liveStreamListResponse
.The
eventId
property has been deprecated from both theliveBroadcastListResponse
and theliveStreamListResponse
.The API supports the following new errors:
Error type Error detail Description invalidValue
conflictingTimeFields
The liveBroadcasts.control
method returns this error if your request specifies values for theoffsetTimeMs
andwalltime
parameters. A request can either omit both parameters or specify a value for one of the two parameters.invalidValue
invalidWalltime
The liveBroadcasts.control
method returns this error if thewalltime
parameter's value is invalid.forbidden
enableClosedCaptionsModificationNotAllowed
The liveBroadcasts.update
method returns this error if you attempt to update thecontentDetails.enableClosedCaptions
value and the broadcast's status is notcreated
orready
.invalidValue
conflictingTimeFields
The liveCuepoints.insert
method returns this error if your request specifies values for thesettings.offsetTimeMs
andsettings.walltime
properties. A request can either omit both properties or specify a value for one of the two properties.In addition, the
liveStreams.update
method no longer supports acdnRequired
error similar to the one that theliveStreams.insert
method supports.
May 10, 2013
This update contains the following changes:
YouTube no longer identifies experimental API features and services. Instead, we now provide a list of YouTube APIs that are subject to the deprecation policy .
May 2, 2013
This update contains the following changes:
The new
liveBroadcasts.control
method enables you to toggle the display settings for a slate that displays in the broadcast stream for a broadcast that is already in progress. If your broadcast stream is delayed, you can also use this method to specify a time offset when the requested slate change will occur.The definitions of the following properties have been updated to explain that the property values must be set if you update a
liveBroadcast
resource'scontentDetails
part:The
liveStream
resource'sstatus.streamStatus
no longer supports the valuedeleted
as a possible stream status.The information that the API returns for many error messages has been revised to better explain why particular errors occurred. The API also supports several new errors.
March 27, 2013
This update contains the following changes:
The following properties have changed in the
liveBroadcast
resource:- The
startWithSlateCuepoint
property has been renamed tostartWithSlate
. - The
enableArchive
property has been renamed torecordFromStart
. - The
slateSettings
object has been deprecated and removed from the documentation. Error messages related to theslateSettings
object or its properties have also been removed. Finally, the "Displaying Slates" section of the Getting started guide has been removed.
- The
The API no longer supports the ability to insert in-stream slates using the
liveCuepoints.insert
method. The following documents have been updated to reflect this change:The index page , Getting started guide, and Life of a broadcast tutorial no longer mention this functionality.
The
liveCuepoint
resource'ssettings.cueType
property no longer supportsslate
as a property value. (The only supported value isad
.The
liveCuepoint
resource'ssettings.eventState
property has been deprecated and removed from the documentation.
March 18, 2013
This update contains the following changes:
All of the API's error messages have been updated to more clearly explain possible errors and, when possible, offer guidance about how to fix them.
The API may now return several new errors. The list below identifies the error and the API method that might return that error:
-
liveBroadcasts.insert
– A broadcast's scheduled end time must be after its scheduled start time. -
liveBroadcasts.insert
– The broadcast specifies an invalid privacy status. -
liveBroadcasts.update
– The resource does not contain or does not set a value for thecontentDetails.enableArchive
property. -
liveBroadcasts.update
– The resource does not contain or does not set a value for thecontentDetails.enableContentEncryption
property. -
liveBroadcasts.update
– The resource does not contain or does not set a value for thecontentDetails.enableDvr
property. -
liveStreams.insert
– The snippet title must be between 1 and 128 characters long. -
liveStreams.update
– The resource does not contain or does not set a value for thesnippet.title
property.
-
The
liveStream
resource documentation has been updated to reflect that multicast and WebM are not supported ingestion methods as previously indicated. The list of formats for thecdn.format
property has been updated accordingly, and thecdn.multicastIngestionInfo
object and its child properties have been removed from the resource's documentation. In addition,http
has been removed from the list of supportedcdn.ingestionType
values.