این صفحه تغییرات 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
همه به طور همزمان منسوخ می شوند.
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
است، به این معنی که رفتار پیشفرض قالببندی رشتههای نمایشی است که در زبان انگلیسی استفاده میشوند. برای مثال، بهطور پیشفرض، یک رشته به جای 100$1.00
به صورت$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 Creator قابل دسترسی است. پخش های دیگر این کانال پخش رویداد است.
وضعیت منبع
liveStream
status.healthStatus.configurationIssues[].type
گزارش خطاهای جدید وضعیت بهداشتی زیر را گزارش می کند:خطاها audioTooManyChannels
این صدا بیش از دو کانال دارد ، اما فقط یک کانال (مونو) یا دو کانال (استریو) پشتیبانی می شود. لطفاً تعداد کانال های صوتی را اصلاح کنید. frameRateHigh
فریمر فعلی خیلی زیاد است. لطفاً فریم را روی آن تنظیم کنید %(framerate)s
fps یا کمتر.تاریخ انتشار به روزرسانی اسناد قبلی اصلاح شد.
خطاهای جدید و به روز شده
علاوه بر خطاهای تعریف شده برای منابع جدید ذکر شده در بالا ، API از خطاهای جدید زیر پشتیبانی می کند:
جزئیات خطا 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 ارسال شده است. API از دو روش برای این منبع پشتیبانی می کند:روش ها liveChats.list
پیام های چت زنده را برای پخش لیست کنید. liveChats.insert
یک پیام چت جدید ایجاد کنید. پیام های چت زنده فقط می توانند در حالی که پخش زنده است ، بازیابی و ارسال شوند.
به روز رسانی منابع و روشهای موجود
منبع
liveStream
شامل خواص جدید زیر است:خواص snippet.isDefaultStream
نشان می دهد که آیا این جریان جریان پیش فرض کانال است یا خیر. جریان پیش فرض یک کانال به طور نامحدود وجود دارد ، زمان شروع یا پایان را در ارتباط با آن ندارد و نمی توان حذف کرد. برای کسب اطلاعات بیشتر در مورد نحوه کار پیش فرض ، به تعریف ملک مراجعه کنید. status.healthStatus
این شی حاوی اطلاعاتی است که می تواند برای شناسایی ، تشخیص و حل مشکلات جریان استفاده شود. این شیء شامل تعدادی از خصوصیات کودک برای کمک به شما در ارزیابی سلامت یک جریان ویدیویی زنده است.
به طور خاص ،status.healthStatus.configurationIssues[]
شیء مواردی را که بر یک جریان ویدیویی تأثیر می گذارد ، لیست می کند. یک سند جدید ، مسائل پیکربندی برای منابع Livestream ، تمام موضوعاتی را که API گزارش می دهد ، لیست می کند.contentDetails.isReusable
نشان می دهد که آیا جریان قابل استفاده مجدد است ، به این معنی که می تواند به چندین پخش محدود شود. در صورتی که این پخش ها در زمان های مختلف اتفاق می افتد ، پخش کنندگان برای پخش مجدد یکسان برای بسیاری از پخش های مختلف استفاده می کنند. منبع
liveBroadcast
شامل خواص جدید زیر است:خواص snippet.isDefaultBroadcast
نشان می دهد که آیا این پخش پخش پیش فرض برای کانال است یا خیر. هنگامی که یک کانال YouTube برای پخش مستقیم فعال می شود ، YouTube یک جریان پیش فرض و پخش پیش فرض برای کانال ایجاد می کند. این جریان چگونه صاحب کانال ویدیوی زنده را به YouTube ارسال می کند ، و پخش این است که بینندگان می توانند جریان پیش فرض را ببینند. برای کسب اطلاعات بیشتر در مورد نحوه کار پیش فرض ، به تعریف ملک مراجعه کنید. contentDetails.enableLowLatency
نشان می دهد که آیا این پخش باید برای جریان کم تأخیر رمزگذاری شود. یک جریان با تأخیر کم می تواند مدت زمان لازم برای فیلم را برای کاربرانی که در حال تماشای پخش هستند ، کاهش دهد ، اگرچه می تواند بر وضوح بینندگان جریان تأثیر بگذارد. statistics.totalChatCount
تعداد کل پیام های چت زنده مرتبط با پخش. اگر پخش برای کاربر قابل مشاهده باشد و ویژگی چت زنده را فعال کند ، این ملک و ارزش آن موجود است. توجه داشته باشید که این ویژگی پس از پایان پخش ، مقداری را مشخص نمی کند. بنابراین ، این ویژگی تعداد پیام های گپ را برای یک فیلم بایگانی شده از یک پخش زنده کامل مشخص نمی کند.
خطاهای جدید و به روز شده
علاوه بر خطاهای تعریف شده برای منبع جدید
liveChat
، API از خطای جدید زیر پشتیبانی می کند:جزئیات خطا liveStreams.update
کد پاسخ HTTP forbidden (403)
دلیل liveStreamModificationNotAllowed
توضیحات API به شما اجازه نمی دهد که یک جریان قابل استفاده مجدد را غیر قابل استفاده یا برعکس تغییر دهید. برای اطلاعات بیشتر ، به درک پخش ها و جریان ها مراجعه کنید
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
).API اکنون از خطاهای زیر پشتیبانی می کند:
نوع خطا جزئیات خطا توضیحات insufficientPermissions
liveStreamingNotEnabled
در صورتی که کاربر که درخواست API را مجاز به پخش فیلم زنده در YouTube نکرده است ، تمام روش های مربوط به منابع liveBroadcast
وliveStream
این خطا را برمی گرداند. جزئیات توضیح می دهد که چرا کاربر نمی تواند فیلم زنده را پخش کند ممکن است در تنظیمات کانال کاربر در https://www.youtube.com/features در دسترس باشد.rateLimitExceeded
userRequestsExceedRateLimit
روشهای liveBroadcasts.insert
وliveStreams.insert
هر دو این خطا را برمی گردانند تا نشان دهد کاربر درخواست های زیادی را در یک بازه زمانی معین ارسال کرده است.
2 مه 2014
این به روز رسانی شامل تغییرات زیر است:
توضیحات مربوط به منبع
liveStream
و روشliveBroadcasts.bind
به روز شده است تا توجه داشته باشید که یک پخش فقط می تواند به یک جریان ویدیویی محدود شود ، اما یک جریان ویدیویی می تواند به بیش از یک پخش محدود شود. این تغییر صرفاً تصحیح مستندات است. عملکرد API اساسی تغییر نکرده است.contentDetails.monitorStream.enableMonitorStream
از منابعliveBroadcast
Resource به روز شده است تا توضیح دهد که اگر ارزش این ملکtrue
است ، باید قبل از انتقال آن به حالتlive
، پخش خود را به حالتtesting
منتقل کنید. (اگر ارزش این ملکfalse
باشد ، پخش شما نمی تواند مرحلهtesting
داشته باشد ، بنابراین می توانید پخش را مستقیماً به حالتlive
منتقل کنید.settings.offsetTimeMs
منبعliveCuepoint
به روز شده است تا توجه داشته باشید که اگر پخش شما جریان مانیتور را ندارد ، نباید ارزش این ملک را تعیین کنید.تمام روش های منابع
liveBroadcast
وliveStream
اکنون از پارامترهایonBehalfOfContentOwner
وonBehalfOfContentOwnerChannel
پشتیبانی می کنند. این پارامترها به شما امکان می دهد از همان اعتبار مجوز برای تکمیل درخواست های API برای کانال های مختلف مرتبط با همان صاحب محتوا استفاده کنید.مستندات روش
liveCuepoints.insert
به روز شده است تا توجه داشته باشید که می توانید هنگام فراخوانی آن روش ، مقداری را برای ویژگی هایsettings.walltime
تنظیم کنید.مستندات خطا اکنون کد پاسخ HTTP را برای هر نوع خطا مشخص می کند.
API اکنون از خطای زیر پشتیبانی می کند:
نوع خطا جزئیات خطا توضیحات insufficientPermissions
livePermissionBlocked
روشهای liveBroadcasts.insert
،liveBroadcasts.transition
وliveStreams.insert
این خطا را برمی گردانند اگر کاربر مجاز به درخواست نتواند ویدیوی زنده را در YouTube پخش کند. جزئیات توضیح می دهد که چرا کاربر نمی تواند فیلم زنده را پخش کند ممکن است در تنظیمات کانال کاربر در https://www.youtube.com/features در دسترس باشد.خطای
liveBroadcasts.insert
Method ، خطایinvalidScheduledStartTime
به روز شده است تا روشن شود که زمان شروع برنامه ریزی شده باید به اندازه کافی نزدیک به تاریخ فعلی باشد که یک پخش در آن زمان قابل اطمینان باشد.
13 دسامبر 2013
این به روز رسانی شامل تغییرات زیر است:
status.recordingStatus
جدید منبعliveBroadcast
Resource.RecordingStatus وضعیت فعلی پخش را مشخص می کند.contentDetails.enableClosedCaptions
NewliveBroadcast
Resource نشان می دهد که آیا می توان زیرنویس های بسته را برای پخش مصرف کرد. مقدار خاصیت را می توان هنگام وارد کردن یا به روزرسانی پخش ، تنظیم کرد ، اما پس از پخش پخش درtesting
یا حالتlive
، نمی توان آن را به روز کرد. اگر این خاصیت راtrue
تنظیم کنید ، پس از آن منبعliveStream
که به پخش محدود می شود ، URL مصرف را برای استفاده برای زیرنویس های بسته پخش شده مشخص می کند.snippet.scheduledEndTime
داراییliveBroadcast
Resource در حال حاضر از پخش هایی که قرار است به طور نامحدود ادامه یابد ، پشتیبانی می کند. با این تغییر ، این ملک دیگر در درخواست هایliveBroadcasts.insert
وliveBroadcasts.update
مورد نیاز نیست.
اگر یک منبعliveBroadcast
را بازیابی کنید که مقداری برای این ویژگی را مشخص نمی کند ، برنامه پخش قرار است به طور نامحدود ادامه یابد. به همین ترتیب ، اگر با روشliveBroadcasts.insert
یاliveBroadcasts.update
تماس بگیرید و مقداری برای این ویژگی مشخص نکنید ، برنامه پخش به طور نامحدود برنامه ریزی خواهد شد.contentDetails.recordFromStart
، که قبلاً مقدار پیش فرضtrue
را داشت ، اکنون فقط می تواند بهfalse
تنظیم شودliveBroadcast
اگر کانال پخش مجاز به غیرفعال کردن ضبط ها برای پخش های زنده باشد.اگر کانال شما اجازه غیرفعال کردن ضبط ها را ندارد ، و شما سعی می کنید یک پخش را با ویژگی
recordFromStart
تنظیم شده رویfalse
وارد کنید ، API یک خطایForbidden
را برمی گرداند. علاوه بر این ، اگر کانال شما این مجوز را نداشته باشد و شما سعی می کنید یک پخش را به روز کنید تا ویژگیrecordFromStart
را رویfalse
تنظیم کنید ، API خطایmodificationNotAllowed
برمی گرداند.منبع
liveBroadcast
دیگر حاوی یک ویژگیenableArchive
نیست ، که در توضیحاتcontentDetails.enableDvr
وcontentDetails.enableEmbed
ذکر شده است.لیست مقادیر معتبر برای
status.lifeCycleStatus
منبعliveBroadcast
به روز شده است تا شرح هر وضعیت را شامل شود.settings.walltime
جدید منبعliveCuepoint
. Properties زمان و زمان و زمانی را که باید در آن وارد شود ، مشخص می کند. اگر یک درخواست سعی کند یک cuepoint را که یک مقدار برای این خاصیت و برایsettings.offsetTimeMs
را مشخص می کند ، خطایی را بازگرداند.شیء New
contentDetails
در یک منبعliveStream
حاوی اطلاعاتی در مورد جریان است. در حال حاضر ، تنها خاصیت شیءcontentDetails.closedCaptionsIngestionUrl
است ، که URL مصرف را برای زیرنویس های بسته مرتبط با جریان ویدیو مشخص می کند.لیست مقادیر معتبر برای
status.streamStatus
منابعliveStream
به روز شده است تا شرح هر وضعیت را شامل شود.پارامتر جدید
walltime
روشliveBroadcasts.control
به شما امکان می دهد تاریخ و زمان تغییر صفحه را مشخص کنید. در صورتی که یک درخواست مقدار برای این پارامتر و پارامترoffsetTimeMs
را مشخص کند ، API خطایی را برمی گرداند.در پاسخ API به یک درخواست
liveBroadcasts.list
، ارزش خاصیتkind
ازyoutube#liveBroadcastList
بهyoutube#liveBroadcastListResponse
تغییر کرده است.در پاسخ API به درخواست
liveStreams.list
، ارزش خاصیتkind
ازyoutube#liveStreamList
بهyoutube#liveStreamListResponse
تغییر یافته است.ویژگی
eventId
از هر دوliveBroadcastListResponse
وliveStreamListResponse
کاهش یافته است.API از خطاهای جدید زیر پشتیبانی می کند:
نوع خطا جزئیات خطا توضیحات invalidValue
conflictingTimeFields
اگر درخواست شما مقادیر مربوط به پارامترهای offsetTimeMs
وwalltime
را مشخص کند ، روشliveBroadcasts.control
این خطا را برمی گرداند. یک درخواست می تواند هر دو پارامتر را حذف کند یا یک مقدار را برای یکی از دو پارامتر مشخص کند.invalidValue
invalidWalltime
اگر مقدار پارامتر walltime
نامعتبر باشد ، روشliveBroadcasts.control
این خطا را برمی گرداند.forbidden
enableClosedCaptionsModificationNotAllowed
روش liveBroadcasts.update
در صورت تلاش برای به روزرسانیcontentDetails.enableClosedCaptions
این خطا را برمی گرداند و وضعیت پخشcreated
یاready
نمی شود.invalidValue
conflictingTimeFields
روش liveCuepoints.insert
در صورتی که درخواست شما مقادیرsettings.offsetTimeMs
مشخص کندsettings.walltime
این خطا را برمی گرداند. یک درخواست می تواند هر دو خاصیت را حذف کند یا یک مقدار را برای یکی از دو ویژگی مشخص کند.علاوه بر این ، روش
liveStreams.update
دیگر از خطایcdnRequired
مشابه با روشی که روشliveStreams.insert
پشتیبانی می کند ، پشتیبانی نمی کند.
10 مه 2013
این به روز رسانی شامل تغییرات زیر است:
YouTube دیگر ویژگی ها و خدمات API تجربی را مشخص نمی کند. در عوض ، ما اکنون لیستی از API های YouTube را ارائه می دهیم که مشمول سیاست استهلاک هستند .
2 مه 2013
این به روز رسانی شامل تغییرات زیر است:
روش جدید
liveBroadcasts.control
شما را قادر می سازد تا تنظیمات صفحه نمایش را برای یک تخته سنگ که در جریان پخش برای پخش پخش می شود ، در حال انجام است. اگر جریان پخش شما به تأخیر بیفتد ، می توانید از این روش برای مشخص کردن زمان جبران زمان در هنگام وقوع تغییر صفحات درخواست شده استفاده کنید.تعاریف خصوصیات زیر به روز شده است تا توضیح دهد که اگر قسمت
contentDetails
یک منبعliveBroadcast
Resource را به روز کنید ، باید مقادیر خاصیت تنظیم شود:status.streamStatus
منبعliveStream
دیگر از مقدارdeleted
به عنوان وضعیت جریان احتمالی پشتیبانی نمی کند.اطلاعاتی که API برای بسیاری از پیام های خطا باز می گردد ، اصلاح شده است تا بهتر توضیح دهد که چرا خطاهای خاص رخ داده است. API همچنین از چندین خطای جدید پشتیبانی می کند.
27 مارس 2013
این به روز رسانی شامل تغییرات زیر است:
خصوصیات زیر در منبع
liveBroadcast
تغییر کرده است:- خاصیت
startWithSlateCuepoint
بهstartWithSlate
تغییر نام داده است. - خاصیت
enableArchive
بهrecordFromStart
تغییر نام داده است. - شیء
slateSettings
از مستندات جدا شده و از آن خارج شده است. پیام های خطا مربوط به شیءslateSettings
یا خصوصیات آن نیز حذف شده است. سرانجام ، بخش "نمایش صفحات" از راهنمای شروع کار حذف شده است.
- خاصیت
API دیگر از توانایی درج صفحات در جریان با استفاده از روش
liveCuepoints.insert
پشتیبانی نمی کند. اسناد زیر به روز شده است تا این تغییر را منعکس کند:صفحه فهرست ، راهنمای شروع و زندگی یک آموزش پخش دیگر این قابلیت را ذکر نمی کند.
settings.cueType
منبعliveCuepoint
دیگرslate
به عنوان یک مقدار خاصیت پشتیبانی نمی کند. (تنها مقدار پشتیبانی شدهad
است.settings.eventState
منبعliveCuepoint
. ویژگی EventState از این مستندات جدا شده و حذف شده است.
18 مارس 2013
این به روز رسانی شامل تغییرات زیر است:
تمام پیام های خطای API به روز شده است تا به وضوح خطاهای احتمالی را توضیح دهد و در صورت امکان راهنمایی در مورد نحوه رفع آنها ارائه می دهد.
API اکنون ممکن است چندین خطای جدید را برگرداند. لیست زیر خطا و روش API را که ممکن است آن خطا را برگرداند ، مشخص می کند:
-
liveBroadcasts.insert
- زمان پایان برنامه ریزی شده یک پخش باید پس از زمان شروع برنامه ریزی شده باشد. -
liveBroadcasts.insert
- پخش وضعیت حریم خصوصی نامعتبر را مشخص می کند. -
liveBroadcasts.update
- این منبع حاوی یا تعیین نمی کند یا مقداری برایcontentDetails.enableArchive
تعیین نمی کند. -
liveBroadcasts.update
- این منبع حاوی یا مقداری برایcontentDetails.enableContentEncryption
تعیین نمی کند. -
liveBroadcasts.update
- این منبع حاوی یا مقداری برایcontentDetails.enableDvr
خاصیت تعیین نمی کند. -
liveStreams.insert
- عنوان قطعه باید بین 1 تا 128 کاراکتر باشد. -
liveStreams.update
- این منبع حاوی یا مقداری برای خاصیتsnippet.title
تعیین نمی کند.
-
مستندات منابع
liveStream
به روز شده است تا منعکس شود که Multicast و WebM از روشهای مصرف آن پشتیبانی نمی شوند ، همانطور که قبلاً بیان شد. لیست فرمت های خاصیتcdn.format
بر این اساس به روز شده است ، و شیءcdn.multicastIngestionInfo
و خصوصیات کودک آن از مستندات منبع حذف شده است. علاوه بر این ،http
از لیست مقادیرcdn.ingestionType
پشتیبانی شده حذف شده است.
در این صفحه ، YouTube Live Streaming API تغییرات و به روزرسانی اسناد ذکر شده است. در این تغییر مشترک مشترک شوید .
9 اکتبر 2023
فقط برای مرجع ، می توانید پیدا کنید که شناسه های برچسب مربوط به کدام استیکرهای فوق العاده در این پرونده CSV هستند. تعاریف snippet.superStickerDetails.superStickerMetadata.stickerId
و snippet.superStickerMetadata.stickerId
منبع liveChatMessage
هر superChatEvent
برای بازتاب این اطلاعات به روز شده اند.
15 سپتامبر 2023
API اکنون از روش جدیدی برای وارد کردن تبلیغات در پخش های زنده پشتیبانی می کند. علاوه بر liveCuepoints
، که به شما امکان می دهد به صورت دستی استراحت های تبلیغاتی را در یک پخش وارد کنید ، YouTube اکنون از یک این ویژگی پشتیبانی می کند تا به طور خودکار شکست های تبلیغاتی میانی را در فواصل ثابت وارد پخش کنید.
اگر صاحب پخش تبلیغات خودکار را فعال کند ، می تواند جنبه های زیر رفتار تبلیغ را مشاهده کند:
- طول فاصله بین استراحت تبلیغ میانی.
- استراتژی برنامه ریزی برای آگهی های تبلیغاتی. cuepoints را می توان همزمان برای همه بینندگان درج کرد یا زمان بندی cuepoints می تواند از بیننده تا بیننده متفاوت باشد. استراتژی دوم YouTube را قادر می سازد تا CuEpoints را با نرخ افزایشی برنامه ریزی کند که به بینندگان این امکان را می دهد تا در صورت واجد شرایط بودن واجد شرایط دریافت Cuepoints شوند.
- دوره ای که در طی آن تبلیغات میانی نشان داده نشده است. برای این ویژگی ، صاحب پخش مشخص می کند که درج تبلیغات Midroll تا زمان خاصی متوقف می شود.
مستندات نشان دهنده تغییرات API زیر برای پشتیبانی از این ویژگی است:
- منبع
liveBroadcast
اکنون حاوی یک شیء ازmonetizationDetails
است. زمینه های شیء نشان می دهد که آیا درج تبلیغات خودکار برای پخش فعال شده است و اطلاعات اضافی را برای برنامه ریزی Cuepoints مشخص می کند. - پارامتر
part
liveBroadcast.list
Method از ارزشmonetizationDetails
پشتیبانی می کند. - از روش
update
می توان برای مکث درج تبلیغات Midroll برای مدت معینی برای پخش زنده استفاده کرد. این مستندات همچنین اکنون چندین خطای را مشخص می کند که می تواند هنگام به روزرسانی جزئیات کسب درآمد برای پخش زنده رخ دهد.
1 آگوست 2023
این به روز رسانی شامل تغییرات زیر است:
روش
liveBroadcasts.update
دیگر نیازی به مقادیر مشخص برای این زمینه ها ندارد:-
snippet.title
-
status.privacyStatus
حذف این زمینه ها از درخواست ، آنها را بدون تغییر رها می کند.
-
1 نوامبر 2022
روش جدید
liveBroadcasts.cuepoint
هر صاحب کانال را که پخش مستقیم در YouTube را اجرا می کند ، امکان می دهد تا CuePoints را در آن پخش قرار دهد ، که می تواند باعث ایجاد شکست AD شود. این روش جایگزین روشliveCuepoints.insert
است ، که فقط شرکای محتوای YouTube را قادر می سازد تا CuePoints را در پخش های زنده وارد کنند.چندین راهنما به روز شده است تا منعکس کننده در دسترس بودن این روش جدید باشد.
توجه: این یک اعلامیه استهلاک است.
روش
liveCuepoints.insert
اکنون کاهش یافته است. پشتیبانیliveBroadcasts.cuepoint
روشliveCuepoints.insert
در تاریخ 1 مه 2023 یا بعد از آن حذف می شود.مستندات برای روش
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
New ResourceliveChatMessage
Resource. به همین ترتیب ،snippet.giftMembershipReceivedDetails
جدید و فرزندان آن حاوی اطلاعاتی در مورد رویداد دریافت شده هدیه دریافت شده است.
15 سپتامبر 2021
این به روز رسانی شامل تغییرات زیر است:
ویژگی
snippet.type
اکنون از دو مقدار جدید پشتیبانی می کند:-
newSponsorEvent
-
memberMilestoneChatEvent
-
snippet.memberMilestoneChatDetails
New ResourceliveChatMessage
Resource.MemberMilestoneChatDetails و فرزندان آن حاوی اطلاعاتی در مورد رویداد چت Milestone Milestone هستند. به طور مشابه ، خاصیت جدیدsnippet.newSponsorDetails
و فرزندان آن حاوی اطلاعاتی در مورد رویداد جدید اسپانسر هستند.
1 دسامبر 2020
روش liveBroadcasts.transition
API از خطای جدید 403
( Forbidden
) پشتیبانی می کند ، که نشان می دهد کاربر در یک بازه زمانی خاص درخواست های زیادی را ارسال کرده است. دلیل خطا userRequestsExceedRateLimit
است.
21 سپتامبر 2020
تعریف
status.madeForKids
منبعliveBroadcast
به روز شده است تا روشن شود که این ملک فقط خواندنی است. این نشان دهنده تغییر در عملکرد API نیست.برای تعیین یک پخش زنده به عنوان کودک به کارگردانی ،
status.selfDeclaredMadeForKids
تنظیم کنید. خود را در هنگام فراخوانی با روشliveBroadcasts.insert
برای ایجاد پخش ، بهtrue
تنظیم کنید.توجه: این تغییر شامل یک اعلامیه استهلاک و به روزرسانی در اعلامیه استهلاک قبلی است.
روش
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 Live Live از طریق راهنمای HLS با چند تغییر به روز شده است:
- مدت زمان توصیه شده برای یک بخش رسانه ای تا یک تا چهار ثانیه به روز شده است.
- بخش جدیدی توضیح می دهد که چگونه می توان URL مصرف HLS را از استودیوی خالق YouTube به دست آورد .
- دستورالعمل های قالب بندی مقدار پارامتر
file
به بخش جدید تکمیل HLS URL URL منتقل شده است. این دستورالعمل ها صرف نظر از اینکه URL مصرف HLS از استودیوی YouTube API یا YouTube Creator به دست می آید ، اعمال می شود.
علاوه بر این ، مقایسه پروتکل مصرف جدید پروتکل های مصرف را که YouTube از آن پشتیبانی می کند ، کدک های پشتیبانی شده برای هر پروتکل و اطلاعات اضافی در مورد موارد استفاده مناسب برای هر پروتکل را ذکر می کند.
16 آوریل 2020
این به روزرسانی شامل یک ملک جدید و اعلام استهلاک است:
منبع
liveBroadcast
اکنون ازcontentDetails.enableAutoStop
پشتیبانی می کند. این ملک نشان می دهد که آیا پخش باید به طور خودکار حدود یک دقیقه متوقف شود پس از آنکه صاحب کانال متوقف کردن پخش ویدیو در جریان ویدیوی محدود است.زندگی یک سند پخش به روز شده است تا توضیح دهد که چگونه فرآیند گام به گام ایجاد و مدیریت یک رویداد زنده YouTube در صورت تنظیم
contentDetails.enableAutoStart
یاcontentDetails.enableAutoStop
بهtrue
تغییر می کند.توجه: این یک اعلامیه استهلاک است. این تغییرات در تاریخ یا بعد از 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
جایگزین شده و جایگزین شده است.
members.list
sponsors.list
sponsors.list
لطفاً برای اطلاعات بیشتر در مورد منبع جدید ، به تاریخچه تجدید نظر API داده YouTube مراجعه کنید.
11 مارس 2020
بخش انتهایی Endestion از محتوای YouTube Live Live از طریق راهنمای HLS به روز شده است تا فرآیندی را که یک رمزگذار برای تکمیل file=
مقدار پارامتر هنگام تشکیل URL های مصرف اولیه و پشتیبان استفاده می کند ، روشن کند.
4 فوریه 2020
محتوای YouTube Live Live از طریق راهنمای HLS به روز شده است تا توجه داشته باشید که درخواست های DELETE
اختیاری هستند و نقطه پایانی HLS YouTube آنها را نادیده می گیرد. به دلایل عملکرد ، YouTube به مشتریان توصیه می کند درخواست های DELETE
ارسال نکنند.
10 ژانویه 2020
API اکنون از توانایی شناسایی محتوای کودک به کارگردانی پشتیبانی می کند ، که YouTube آن را "ساخته شده برای بچه ها" می نامد. در مورد محتوای "ساخته شده برای بچه ها" در مرکز راهنمای YouTube اطلاعات بیشتری کسب کنید .
- منبع
liveBroadcast
از دو ویژگی جدید پشتیبانی می کند تا سازندگان محتوا و بینندگان را فعال کنند تا محتوای "ساخته شده برای بچه ها" را شناسایی کنند:- ویژگی
selfDeclaredMadeForKids
سازندگان محتوا را قادر می سازد تا مشخص کنند که آیا یک پخش زنده محتوای کودک به کارگردانی است یا خیر. این ویژگی را می توان هنگام ایجاد پخش از طریق روشliveBroadcasts.insert
تنظیم کرد. توجه داشته باشید که اگر مالک کانال درخواست API را مجاز کند ، این ملک فقط در پاسخ های API وجود دارد که حاوی منابعliveBroadcast
است. - ویژگی
madeForKids
هر کاربر API را قادر می سازد وضعیت "ساخته شده برای بچه ها" را بازیابی کند. به عنوان مثال ، وضعیت ممکن است بر اساس ارزش خاصیتselfDeclaredMadeForKids
تعیین شود. برای اطلاعات بیشتر در مورد تنظیم مخاطب برای کانال ، فیلم ها یا پخش های خود ، به مرکز راهنمای YouTube مراجعه کنید.
- ویژگی
- در API Data YouTube ، منبع
channel
همچنین از ویژگی های جدیدselfDeclaredMadeForKids
وmadeForKids
پشتیبانی می کند.
ما همچنین شرایط خدمات خدمات API YouTube و سیاست های توسعه دهنده را به روز کرده ایم. لطفاً برای اطلاعات بیشتر به اطلاعات خدمات API YouTube API مراجعه کنید - تاریخچه تجدید نظر . تغییر در شرایط خدمات خدمات API YouTube و سیاست های توسعه دهنده در تاریخ 10 ژانویه 2020 زمان اقیانوس آرام اجرا خواهد شد.
20 آگوست 2019
بخش مورد نیاز محتوای YouTube Live Live از طریق راهنمای HLS با دو تغییر به روز شده است:
- این توضیح می دهد که این بهترین روش است که هر دو بخش تصدیق شده و بخش های برجسته را در هر لیست پخش رسانه ای درج کنید. این عمل باعث می شود اگر یک لیست پخش رسانه ای در سمت سرور از بین برود ، یک بخش کمتر از آن رد شود. به عنوان مثال ، شما می توانید حداکثر دو بخش تأیید شده و حداکثر پنج بخش برجسته را در هر لیست پخش رسانه ای درج کنید.
- اکنون ارسال لیست پخش رسانه ای برای هر بخش رسانه ای الزامی است. در صورت از بین رفتن لیست پخش رسانه ، این سرور را قادر می سازد تا به سرعت بهبود یابد. این عمل قبلاً به عنوان توصیه ذکر شده بود.
28 ژوئن 2019
YouTube اکنون از مصرف HLS پشتیبانی می کند. بر این اساس ، خاصیت ingestionType
منابع liveStream
از hls
ارزش جدید برای شناسایی جریانهای مصرفی به YouTube با استفاده از HLS پشتیبانی می کند.
محتوای جدید ارائه دهنده Live YouTube از طریق راهنمای HLS دستورالعمل هایی را برای استفاده از HLS برای پخش محتوای زنده به YouTube از یک رمزگذار ارائه می دهد. هدف این راهنما برای کمک به فروشندگان رمزگذار افزودن پشتیبانی تحویل HLS به محصولات خود است.
4 آوریل 2019
این به روز رسانی شامل تغییرات زیر است:
اسناد مرجع API برای توضیح بهتر موارد استفاده رایج برای هر روش و ارائه نمونه کد پویا و با کیفیت بالا از طریق ویجت APIs Explorer به روز شده است. See the
liveBroadcasts.list
method's documentation for an example. There are now two new elements on pages that describe API methods:The APIs Explorer widget lets you select authorization scopes, enter sample parameter and property values, and then send actual API requests and see actual API responses. The widget also offers a fullscreen view that shows complete code samples, which dynamically update to use the scopes and values that you have entered.
The Common use cases section describes one or more common use cases for the method explained on the page. For example, you could call the
liveBroadcasts.list
method to retrieve data about a specific broadcast or to retrieve data about the current user's broadcasts.You can use links in that section to populate the APIs Explorer with sample values for your use case or to open the fullscreen APIs Explorer with those values already populated. These changes aim to make it easier for you to see code samples that are directly applicable to the use case that you're trying to implement in your own application.
Code samples are currently supported for Java, JavaScript, PHP, Python, and curl.
The code samples page has also a new UI that offers all of the same features described above. Using that tool, you can explore use cases for different methods, load values into the APIs Explorer, and open the fullscreen APIs Explorer to get code samples in Java, JavaScript, PHP, and Python.
In conjunction with this change, the pages that previously listed available code samples for Java, PHP, and Python have been removed.
25 فوریه 2019
The documentation of the liveChatMessage
and superChatEvent
resources has been updated to reflect the fact that both resources can now contain information about Super Stickers. Super Stickers are a type of Super Chat message that displays an image. Like other Super Chats, a Super Sticker message is purchased by a fan during a YouTube live stream.
- In a
liveChatMessage
resource, thesnippet.type
property is now set tosuperStickerEvent
to indicate that the resource contains information about a Super Sticker. In that case, the resource also contains thesnippet.superStickerDetails
object, which contains additional information about the Super Sticker. - In a
superChatEvent
resource, the booleansnippet.isSuperStickerEvent
indicates whether the Super Chat message is also a Super Sticker. If so, then thesnippet.superStickerMetadata
object contains additional details about the Super Sticker.
5 آوریل 2018
The description of the superChatEvents.list
method has been updated to reflect the fact that the API response no longer contains fanFundingEvents
, which were deprecated in early 2017.
3 آوریل 2017
New Java code samples have been added that show how to list , insert , and delete live chat messages. The samples call the following methods:
13 فوریه 2017
این به روز رسانی شامل تغییرات زیر است:
Updates to existing resources and methods
The
liveCuepoints.insert
method has been updated to reflect the fact that theonBehalfOfContentOwner
parameter is currently required. In addition, the method's description has been updated to note that calls to that method must be authorized by an account associated with a YouTube Content Owner.
9 فوریه 2017
این به روز رسانی شامل تغییرات زیر است:
Updates to existing resources and methods
The
superChatEvents.list
method's newhl
parameter lets you specify that thesnippet.displayString
property value should be formatted according to the conventions of a particular language. That property's definition has also been updated accordingly.The parameter value must be a language code included in the list returned by the
i18nLanguages.list
method. The default value isen
, which means that the default behavior is to format display strings as they would be used in English. For example, by default, a string is formatted as$1.00
rather than$1,00
.
1 فوریه 2017
این به روز رسانی شامل تغییرات زیر است:
New resources and methods
The new
superChatEvent
resource represents a Super Chat message purchased by a fan during a YouTube live stream. In the YouTube live chat stream, Super Chats stand out from other messages in two ways:- Super Chats are highlighted with a color.
- Super Chats stay pinned in the ticker for a set period of time.
The color of the Super Chat, the period of time it stays pinned in the ticker, and the maximum message length are all determined by the purchase amount. The YouTube Help Center has more information about Super Chats.
The API supports a method to list Super Chat events for a channel's live streams in the previous 30 days. That method also returns data about Fan Funding events (
fanFundingEvents
) from the channel's last live stream.
Updates to existing resources and methods
The
snippet.type
property now supports thesuperChatEvent
value, which indicates that the resource describes a Super Chat.In addition, the
liveChatMessage
resource's newsnippet.superChatDetails
property and its children contain information about the Super Chat event.The
liveStream
resource'scdn.resolution
property now supports the value2160p
.
New and updated errors
The API supports the following new errors:
جزئیات خطا liveBroadcasts.insert
,liveBroadcasts.update
The liveBroadcasts.insert
andliveBroadcasts.update
methods return400
(Bad Request
) errors to indicate that theliveBroadcast
resource being inserted or updated contains an invalid value for either thecontentDetails.enableEmbed
property or thecontentDetails.projection
property. The error reasons for the two new errors areinvalidEmbedSetting
andinvalidProjection
, respectively.
12 ژانویه 2017
Note: This is a deprecation announcement.
In conjunction with the release of the new Super Chat feature, YouTube has deprecated the Fan Funding feature, and the Fan Funding API will be turned off on February 28, 2017. As of that date:
- The
liveChatMessages.list
method will no longer return messages with asnippet.type
offanFundingEvent
. Similarly,liveChatMessage
resources will no longer contain thesnippet.fanFundingEventDetails
object. - The
fanFundingEvents.list
method will no longer return data.
11 آگوست 2016
این به روز رسانی شامل تغییرات زیر است:
The newly published YouTube API Services Terms of Service ("the Updated Terms"), discussed in detail on the YouTube Engineering and Developers Blog , provides a rich set of updates to the current Terms of Service. In addition to the Updated Terms , which will go into effect as of February 10, 2017, this update includes several supporting documents to help explain the policies that developers must follow.
The full set of new documents is described in the revision history for the Updated Terms . In addition, future changes to the Updated Terms or to those supporting documents will also be explained in that revision history. You can subscribe to an RSS feed listing changes in that revision history from a link in that document.
20 مه 2016
YouTube now supports DASH ingestion. Accordingly, the liveStream
resource's ingestionType
property supports the new value dash
to identify streams ingested to YouTube using DASH.
The new Delivering Live YouTube Content via DASH guide provides guidelines for using the DASH Delivery format to stream live data on YouTube from an encoder. It is intended to help encoder vendors add DASH delivery support to their products.
18 آوریل 2016
این به روز رسانی شامل تغییرات زیر است:
Updates to existing resources and methods
-
liveStream
resource updatesYouTube now supports streams with 1440p resolution at either 30 or 60 frames per second.
In addition, the
liveStream
resource contains new properties for specifying the frame rate and resolution of the inbound video data:خواص cdn.frameRate
The frame rate of the inbound video data. Valid values are 30fps
and60fps
.cdn.resolution
The resolution of the inbound video data. Valid property values are: 1440p
,1080p
,720p
,480p
,360p
, and240p
.In accordance with the introduction of the
liveStream
resource'scdn.frameRate
andcdn.resolution
properties, the resource'scdn.format
is now deprecated. Thecdn.format
property specifies resolution and frame rate in a single value.We encourage you to transition to the newly supported fields. In the meantime,
cdn.format
continues to work. In addition, requests to insert live streams currently succeed as long as you specify values for either thecdn.format
property or thecdn.frameRate
andcdn.resolution
properties. If you provide values for all three properties, the API might return an error if the values are not in agreement.Note that even though the
cdn.format
property is deprecated, it does now support two new values,1440p
and1440p_hfr
, to reflect the API's support for 1440p streams at either 30 or 60 frames per second.
-
liveBroadcast
resource updatesThe
liveBroadcast
resource contains the following new properties:خواص contentDetails.boundStreamLastUpdateTimeMs
The date and time that the live stream referenced by the broadcast's contentDetails.boundStreamId
property was last updated.contentDetails.projection
The broadcast's projection format. The property's default value is rectangular
. Valid values for the property are360
andrectangular
.The definition of the
liveBroadcast
resource'sstatistics.totalChatCount
property has been updated to note that the property value only shows up if the broadcast has at least one chat message.
-
liveChatMessage
resource updatesThe
snippet.type
property supports two new values –messageDeletedEvent
anduserBannedEvent
– that correspond to the new properties described in the following bullet point. The definition of thesnippet.authorChannelId
property has also been updated to explain what the property value identifies for these new message types.The
liveChatMessage
resource contains the following new properties:خواص snippet.messageDeletedDetails
This object contains information about a message that was deleted by a chat moderator. The object is only present if the snippet.type
property value ismessageDeletedEvent
.snippet.userBannedDetails
This object contains information about a user who has been banned from participating in the chat. The object also contains information about the ban itself, namely whether the ban is permanent or temporary. If the ban is temporary, one of the object's properties specifies the duration of the ban.
This object is only present if thesnippet.type
property value isuserBannedEvent
.
-
New and updated errors
The API supports the following new errors:
جزئیات خطا liveBroadcasts.bind
The liveBroadcasts.bind
method returns a403
(Forbidden
) error to indicate that the user has sent too many requests within a given timeframe. The error reason isuserRequestsExceedRateLimit
.
TheliveBroadcasts.insert
andliveBroadcasts.update
methods already support the same error.liveStreams.insert
The liveStreams.insert
method supports four new400
(Bad Request
) errors that identify an invalid property value in theliveStream
resource that the request tried to insert. The following list identifies the error reasons and the properties with which they are associated:-
invalidFormat
:cdn.format
-
invalidFrameRate
:cdn.frameRate
-
invalidIngestionType
:cdn.ingestionType
-
invalidResolution
:cdn.resolution
liveStreams.insert
The liveStreams.insert
method supports two new400
(Bad Request
) errors, each of which indicates that a required value is not present in theliveStream
resource that the request tried to insert. The following list identifies the error reasons and the properties with which they are associated:-
frameRateRequired
:cdn.frameRate
-
resolutionRequired
:cdn.resolution
liveStream
resource, you must specify a value for either thecdn.format
property or for thecdn.frameRate
andcdn.resolution
properties.- The API returns a
formatRequired
error if you do not specify a value for any of the three properties. - The API returns a
frameRateRequired
error if you specify a value forcdn.resolution
but notcdn.frameRate
. - The API returns a
resolutionRequired
error if you specify a value forcdn.frameRate
but notcdn.resolution
.
liveStreams.update
The liveStreams.update
method returns a403
(Forbidden
) error if the request tries to modify the value of any of the following non-mutable properties:-
cdn.format
-
cdn.frameRate
-
cdn.ingestionType
-
cdn.resolution
reason
in the error response isliveStreamModificationNotAllowed
.-
18 دسامبر 2015
European Union (EU) laws require that certain disclosures must be given to and consents obtained from end users in the EU. Therefore, for end users in the European Union, you must comply with the EU User Consent Policy . We have added a notice of this requirement in our YouTube API Terms of Service .
17 دسامبر 2015
این به روز رسانی شامل تغییرات زیر است:
New resources and methods
The API supports several new resources to support chat functionality for live broadcasts. YouTube supports live chat functionality during active live broadcasts, and these resources and their methods support retrieval of chat messages as well as administrative functions for the chat.
منابع liveChatMessage
This resource represents a message in a YouTube live chat. YouTube supports several types of messages, including text messages and Fan Funding events. Some message types identify a particular phase of the chat, such as the beginning of a sponsors-only period or the end of the chat. The API supports methods to list, insert, and delete live chat messages. liveChatModerators
This resource identifies a chat moderator. Moderators can perform some administrative functions, such as banning users from the chat or removing messages. The API supports methods to list, insert, and delete live chat moderators. liveChatBans
This resource identifies a user who is banned from posting messages to a particular live chat. ممنوعیت ها می تواند موقت یا دائمی باشد. The API supports methods to insert and delete live chat bans. fanFundingEvents
This resource represents a Fan Funding event on a YouTube channel. Fan Funding provides a way for viewers to voluntarily support YouTube Creators with one-time monetary support.
The API'sfanFundingEvents.list
method lists a channel's Fan Funding events. Fan Funding events that are initiated through a live chat during a live broadcast owned by the channel also trigger afanFundingEvent
message to the broadcast's live chat.
Learn more about Fan Funding in the YouTube Help Center .sponsors
The sponsor
resource identifies a sponsor of a YouTube channel. A sponsor pays a monthly fee to a channel. A badge shows up next to the sponsor's messages in the channel's live chats and sponsors can also participate in live chats exclusively for the channel's sponsors, if those occur.
The API'ssponsors.list
method lists a channel's sponsors. When users sign up to sponsor a channel during a live broadcast owned by that channel, the API also adds anewSponsorEvent
message to the broadcast's live chat.Learn more about sponsorships in the YouTube Help Center .
Updates to existing resources and methods
The
liveBroadcast
resource contains the following new properties:خواص snippet.liveChatId
The ID for the broadcast's YouTube live chat. With this ID, you can use the liveChatMessage
resource's methods to retrieve, insert, or delete chat messages. You can also add or remove chat moderators, ban users from participating in live chats, or remove existing bans.contentDetails.closedCaptionsType
Note: This property replaces the contentDetails.enableClosedCaptions
property.
This property indicates whether closed captioning is enabled for your broadcast and, if so, what type of closed captions you are providing:-
closedCaptionsDisabled
: Closed captions are disabled for the live broadcast. -
closedCaptionsHttpPost
: You will send captions, via HTTP POST, to an ingestion URL associated with your live stream. -
closedCaptionsEmbedded
: Captions will be encoded in the video stream using EIA-608 and/or CEA-708 formats.
contentDetails.enableClosedCaptions
This property has been deprecated as of December 17, 2015. Use the contentDetails.closedCaptionsType
property instead. For API clients that are already using this property:- Setting the property value to
true
is equivalent to setting thecontentDetails.closedCaptionsType
property toclosedCaptionsHttpPost
. - Setting the property value to
false
is equivalent to setting thecontentDetails.closedCaptionsType
property toclosedCaptionsDisabled
.
-
The
liveBroadcasts.list
method's newbroadcastType
parameter lets you filter an API response to include event broadcasts, persistent broadcasts, or all broadcasts.A persistent broadcast is one that always exists and is not tied to a particular event. Specifically, a channel's default broadcast is a persistent broadcast, and it is accessible via the Live Dashboard in the YouTube Creator Studio. The channel's other broadcasts are event broadcasts.
The
liveStream
resource'sstatus.healthStatus.configurationIssues[].type
field reports the following new health status errors:خطاها audioTooManyChannels
The audio has more than two channels, but only one (mono) or two (stereo) channels are supported. Please correct the number of audio channels. 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:
جزئیات خطا liveBroadcasts.update
HTTP Response Code forbidden (403)
دلیل closedCaptionsTypeModificationNotAllowed
توضیحات The contentDetails.closedCaptionsType
value can only be modified when the broadcast is in thecreated
orready
status.liveBroadcasts.update
HTTP Response Code invalidValue (400)
دلیل invalidEnableClosedCaptions
توضیحات 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.
19 آگوست 2015
این به روز رسانی شامل تغییرات زیر است:
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:جزئیات خطا liveStreams.update
HTTP Response Code forbidden (403)
دلیل liveStreamModificationNotAllowed
توضیحات 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
21 مه 2015
این به روز رسانی شامل تغییرات زیر است:
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.
21 آگوست 2014
این به روز رسانی شامل تغییرات زیر است:
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 detail توضیحات 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.
2 مه 2014
این به روز رسانی شامل تغییرات زیر است:
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 detail توضیحات 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.
13 دسامبر 2013
این به روز رسانی شامل تغییرات زیر است:
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 detail توضیحات 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.
10 مه 2013
این به روز رسانی شامل تغییرات زیر است:
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 .
2 مه 2013
این به روز رسانی شامل تغییرات زیر است:
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.
27 مارس 2013
این به روز رسانی شامل تغییرات زیر است:
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.
18 مارس 2013
این به روز رسانی شامل تغییرات زیر است:
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.