یک منبع liveStream
حاوی اطلاعاتی در مورد جریان ویدیویی است که شما در حال انتقال به YouTube هستید. این جریان محتوایی را فراهم می کند که برای کاربران YouTube پخش می شود. پس از ایجاد، یک منبع liveStream
می تواند به یک یا چند منبع liveBroadcast
متصل شود.
مواد و روش ها
API از روش های زیر برای منابع liveStreams
پشتیبانی می کند:
- list
- فهرستی از جریانهای ویدیویی را برمیگرداند که با پارامترهای درخواست API مطابقت دارند. اکنون آن را امتحان کنید .
- insert
- یک جریان ویدیویی ایجاد می کند. این استریم به شما امکان میدهد ویدیوی خود را به YouTube ارسال کنید، که سپس میتواند ویدیو را برای مخاطبان شما پخش کند. اکنون آن را امتحان کنید .
- update
- یک جریان ویدیویی را به روز می کند. اگر ویژگی هایی که می خواهید تغییر دهید نمی توانند به روز شوند، باید یک جریان جدید با تنظیمات مناسب ایجاد کنید. اکنون آن را امتحان کنید .
- delete
- یک جریان ویدیویی را حذف می کند. اکنون آن را امتحان کنید .
نمایندگی منابع
ساختار JSON زیر فرمت یک منبع liveStreams
را نشان می دهد:
{ "kind": "youtube#liveStream", "etag": etag, "id": string, "snippet": { "publishedAt": datetime, "channelId": string, "title": string, "description": string, "isDefaultStream": boolean }, "cdn": { "ingestionType": string, "ingestionInfo": { "streamName": string, "ingestionAddress": string, "backupIngestionAddress": string }, "resolution": string, "frameRate": string }, "status": { "streamStatus": string, "healthStatus": { "status": string, "lastUpdateTimeSeconds": unsigned long, "configurationIssues": [ { "type": string, "severity": string, "reason": string, "description": string } ] } }, "contentDetails": { "closedCaptionsIngestionUrl": string, "isReusable": boolean } }
خواص
جدول زیر ویژگی های ظاهر شده در این منبع را تعریف می کند:
خواص | |
---|---|
kind | string نوع منبع API را مشخص می کند. مقدار youtube#liveStream خواهد بود. |
etag | etag Etag این منبع |
id | string شناسه ای که YouTube برای شناسایی منحصر به فرد جریان اختصاص می دهد. |
snippet | object شی snippet حاوی جزئیات اولیه در مورد جریان، از جمله کانال، عنوان و توضیحات آن است. |
snippet. publishedAt | datetime تاریخ و ساعتی که جریان ایجاد شد. مقدار در قالب ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ) مشخص شده است. |
snippet. channelId | string شناسهای که YouTube برای شناسایی منحصربهفرد کانالی که جریان را ارسال میکند، استفاده میکند. |
snippet. title | string عنوان جریان مقدار باید بین 1 تا 128 کاراکتر باشد. |
snippet. description | string توضیحات جریان مقدار نمی تواند بیشتر از 10000 کاراکتر باشد. |
snippet. isDefaultStream | boolean این ویژگی در تاریخ 1 سپتامبر 2020 یا پس از آن منسوخ خواهد شد. در آن زمان، وقتی کانالی برای پخش زنده فعال شود، YouTube ایجاد یک جریان پیشفرض و پخش پیشفرض را متوقف میکند. لطفاً برای جزئیات بیشتر به اطلاعیه منسوخ شدن مراجعه کنید. این ویژگی نشان می دهد که آیا این جریان، جریان پیش فرض کانال است یا خیر.نحوه کار جریان های پیش فرض هنگامی که یک کانال YouTube برای پخش زنده فعال است، YouTube یک جریان پیش فرض و یک پخش پیش فرض برای کانال ایجاد می کند. این استریم نحوه ارسال ویدیوی زنده توسط مالک کانال به یوتیوب را مشخص میکند و پخش به این صورت است که بینندگان چگونه میتوانند جریان پیشفرض را ببینند. مالک کانال میتواند از روشهای liveStreams.list و liveBroadcasts.list برای شناسایی این منابع استفاده کند.جریان پیشفرض یک کانال بهطور نامحدود وجود دارد، زمان شروع یا پایان مرتبط با آن ندارد و نمیتوان آن را حذف کرد. مالک کانال فقط باید شروع به ارسال بیت های ویدیو کند و جریان به طور خودکار ادامه می یابد. هنگامی که یک جریان به پایان می رسد، YouTube پخش کامل شده را به یک ویدیوی YouTube تبدیل می کند و به ویدیو یک شناسه ویدیوی YouTube اختصاص می دهد. پس از تکمیل تبدیل، ویدیو در لیست ویدیوهای آپلود شده کانال قرار می گیرد. این ویدئو بلافاصله پس از پایان پخش در دسترس نیست و مدت تاخیر مربوط به طول واقعی پخش است. |
cdn | object شی cdn تنظیمات شبکه تحویل محتوای پخش زنده (CDN) را تعریف می کند. این تنظیمات جزئیاتی را در مورد نحوه پخش محتوای خود در YouTube ارائه می دهد. |
cdn. format | string این دارایی از 18 آوریل 2016 منسوخ شده است و از 17 آگوست 2020 دیگر پشتیبانی نمیشود. درخواستهایی که تا آن تاریخ همچنان از این دارایی استفاده میکنند ناموفق خواهند بود. در عوض، از ویژگی های cdn.frameRate و cdn.resolution برای تعیین نرخ فریم و وضوح به طور جداگانه استفاده کنید. |
cdn. ingestionType | string روش یا پروتکل مورد استفاده برای انتقال جریان ویدئو. مقادیر معتبر برای این ویژگی عبارتند از:
|
cdn. ingestionInfo | object شی ingestionInfo حاوی اطلاعاتی است که YouTube ارائه می دهد و برای انتقال جریان خود به YouTube نیاز دارید. |
cdn.ingestionInfo. streamName | string نام جریانی که YouTube به جریان ویدیو اختصاص می دهد. |
cdn.ingestionInfo. ingestionAddress | string اگر از RTMP، DASH، یا HLS استفاده میکنید، نشانی اینترنتی انتقال اصلی که باید برای پخش جریانی ویدیو در YouTube استفاده کنید. شما باید ویدیو را به این URL پخش کنید. بسته به اینکه از کدام برنامه یا ابزاری برای رمزگذاری جریان ویدیوی خود استفاده می کنید، ممکن است لازم باشد URL و نام جریان را به طور جداگانه وارد کنید یا ممکن است لازم باشد آنها را در قالب زیر به هم متصل کنید: STREAM_URL/STREAM_NAME |
cdn.ingestionInfo. backupIngestionAddress | string نشانی اینترنتی انتقال پشتیبان که در صورت استفاده از RTMP، DASH یا HLS باید برای پخش جریانی ویدیو در YouTube استفاده کنید. شما این امکان را دارید که محتوایی را که به ingestionAddress ارسال می کنید به این URL به طور همزمان پخش کنید. |
cdn.ingestionInfo. rtmpsIngestionAddress | string نشانی اینترنتی انتقال اصلی که در صورت استفاده از RTMPS باید برای پخش جریانی ویدیو در YouTube استفاده کنید. شما باید ویدیو را به این URL پخش کنید. بسته به اینکه از کدام برنامه یا ابزاری برای رمزگذاری جریان ویدیوی خود استفاده می کنید، ممکن است لازم باشد URL و نام جریان را به طور جداگانه وارد کنید یا ممکن است لازم باشد آنها را در قالب زیر به هم متصل کنید: STREAM_URL/STREAM_NAME |
cdn.ingestionInfo. rtmpsBackupIngestionAddress | string نشانی اینترنتی انتقال پشتیبان که در صورت استفاده از RTMPS باید برای پخش جریانی ویدیو در YouTube استفاده کنید. |
cdn. resolution | string وضوح داده های ویدئویی ورودی. مقادیر معتبر برای این ویژگی عبارتند از:
|
cdn. frameRate | string نرخ فریم داده های ویدئویی ورودی. مقادیر معتبر برای این ویژگی عبارتند از:
|
status | object شی status حاوی اطلاعاتی درباره وضعیت پخش زنده است. |
status. streamStatus | string وضعیت جریان مقادیر معتبر برای این ویژگی عبارتند از:
|
status. healthStatus | object این شی حاوی اطلاعاتی درباره وضعیت سلامت پخش زنده است که می تواند برای شناسایی، تشخیص و حل مشکلات پخش استفاده شود. |
status.healthStatus. status | string کد وضعیت این جریان. مقادیر معتبر برای این ویژگی عبارتند از: |
status.healthStatus. lastUpdateTimeSeconds | unsigned long آخرین باری که وضعیت سلامت جریان بهروزرسانی شد. این مقدار یک مهر زمانی یونیکس را در چند ثانیه منعکس می کند. |
status.healthStatus. configurationIssues[] | list این شی حاوی لیستی از مشکلات پیکربندی است که بر جریان تأثیر می گذارد. |
status.healthStatus.configurationIssues[]. type | string نوع خطای مؤثر بر جریان را شناسایی می کند. |
status.healthStatus.configurationIssues[]. severity | string نشان می دهد که این مشکل چقدر برای جریان است. مقادیر معتبر برای این ویژگی عبارتند از:
|
status.healthStatus.configurationIssues[]. reason | string شرح مختصری از موضوع. سند Configuration Issues for LiveStream Resources دلیل مرتبط با هر نوع مشکل پیکربندی را مشخص می کند. |
status.healthStatus.configurationIssues[]. description | string شرح مفصلی از موضوع. در صورت امکان، توضیحات اطلاعاتی در مورد نحوه حل مشکل ارائه می دهد. سند Configuration Issues for LiveStream Resources همه انواع مشکلات پیکربندی و توضیحات مربوط به آنها را فهرست می کند. |
contentDetails | object شیء content_details حاوی اطلاعاتی درباره جریان است، از جمله نشانی اینترنتی دریافت زیرنویسهای بسته. |
contentDetails. closedCaptionsIngestionUrl | string نشانی اینترنتی انتقال که در آن شرحهای بسته این جریان ارسال میشود. |
contentDetails. isReusable | boolean نشان می دهد که آیا جریان قابل استفاده مجدد است یا خیر، به این معنی که می توان آن را به چندین پخش متصل کرد. اگر پخش در زمانهای مختلف اتفاق بیفتد، معمولاً پخشکنندهها از یک جریان برای بسیاری از پخشهای مختلف استفاده مجدد میکنند. اگر این مقدار را روی false تنظیم کنید، جریان قابل استفاده مجدد نخواهد بود، به این معنی که فقط میتوان آن را به یک پخش متصل کرد. جریانهای غیرقابل استفاده مجدد به روشهای زیر با جریانهای قابل استفاده مجدد متفاوت هستند:
|