API এখন আপনার লাইভ
সম্প্রচার "বাচ্চাদের জন্য তৈরি" হিসেবে চিহ্নিত করার সুবিধা প্রদান করে এবং
liveBroadcast রিসোর্সে এখন একটি
প্রপার্টি রয়েছে যা সেই লাইভ সম্প্রচারের "বাচ্চাদের জন্য তৈরি" স্ট্যাটাস শনাক্ত করে। এছাড়াও, YouTube API
পরিষেবার শর্তাবলী এবং ডেভেলপার নীতি ১০ জানুয়ারি, ২০২০-তে আপডেট করা হয়েছে। আরও তথ্যের জন্য, YouTube Live Streaming API পরিষেবা এবং
YouTube API পরিষেবার শর্তাবলী-এর রিভিশন ইতিহাস দেখুন।
liveBroadcast রিসোর্স এমন একটি ইভেন্টকে দেখায় যা YouTube-এ লাইভ ভিডিও ব্যবহার করে স্ট্রিম করা হবে।
পদ্ধতি
API-তে liveBroadcasts রিসোর্সের জন্য নিম্নলিখিত পদ্ধতি কাজ করে:
- তালিকা
- API অনুরোধের প্যারামিটারের সাথে মেলে এমন YouTube ব্রডকাস্টের তালিকা দেখায়। এখনই এটি ব্যবহার করে দেখুন।
- যোগ করুন
- ব্রডকাস্ট তৈরি করে। এখনই এটি ব্যবহার করে দেখুন।
- আপডেট
- ব্রডকাস্ট আপডেট করে। যেমন, আপনি
liveBroadcastরিসোর্সেরcontentDetailsঅবজেক্টে উল্লেখ করা ব্রডকাস্ট সেটিংস পরিবর্তন করতে পারেন। এখনই এটি ব্যবহার করে দেখুন। - মুছে ফেলুন
- ব্রডকাস্ট মুছে দেয়। এখনই এটি ব্যবহার করে দেখুন।
- বাইন্ড করুন
- কোনও YouTube ব্রডকাস্টকে স্ট্রিমে বাইন্ড করে অথবা ব্রডকাস্ট ও স্ট্রিমের মধ্যে আগে থেকে থাকা বাইন্ডিং সরিয়ে দেয়। একটি ব্রডকাস্ট শুধুমাত্র একটি ভিডিও স্ট্রিমের সাথে বাউন্ড করা যেতে পারে, যদিও একটি ভিডিও স্ট্রিম একাধিক ব্রডকাস্টের সাথে বাউন্ড করা যেতে পারে। এখনই এটি ব্যবহার করে দেখুন।
- ট্রানজিশন
- YouTube লাইভ ব্রডকাস্টের স্ট্যাটাস পরিবর্তন করে এবং নতুন স্ট্যাটাসের সাথে সম্পর্কিত যেকোনও প্রসেস শুরু করে। যেমন, আপনি যখন কোনও ব্রডকাস্টের স্ট্যাটাস
testing-এ পরিবর্তন করেন, তখন YouTube সেই ব্রডকাস্টের মনিটর স্ট্রিমে ভিডিও ট্রান্সমিট করা শুরু করে। এই মেথড কল করার আগে, আপনার ব্রডকাস্টের সাথে যুক্ত স্ট্রিমেরstatus.streamStatusপ্রপার্টির ভ্যালুactiveকিনা তা কনফার্ম করে নিন। এখনই এটি ব্যবহার করে দেখুন। - cuepoint
- লাইভ ব্রডকাস্টে কিউপয়েন্ট যোগ করে। কিউপয়েন্ট বিজ্ঞাপন বিরতি ট্রিগার করতে পারে।
রিসোর্স রিপ্রেজেন্টেশন
নিম্নলিখিত JSON স্ট্রাকচার liveBroadcasts রিসোর্সের ফর্ম্যাট দেখায়:
{
"kind": "youtube#liveBroadcast",
"etag": etag,
"id": string,
"snippet": {
"publishedAt": datetime,
"channelId": string,
"title": string,
"description": string,
"categoryId": string,
"thumbnails": {
(key): {
"url": string,
"width": unsigned integer,
"height": unsigned integer
}
},
"scheduledStartTime": datetime,
"scheduledEndTime": datetime,
"actualStartTime": datetime,
"actualEndTime": datetime,
"isDefaultBroadcast": boolean,
"liveChatId": string
},
"status": {
"lifeCycleStatus": string,
"privacyStatus": string,
"recordingStatus": string,
"madeForKids": string,
"selfDeclaredMadeForKids": string,
},
"contentDetails": {
"boundStreamId": string,
"boundStreamLastUpdateTimeMs": datetime,
"monitorStream": {
"enableMonitorStream": boolean,
"broadcastStreamDelayMs": unsigned integer,
"embedHtml": string
},
"enableEmbed": boolean,
"enableDvr": boolean,
"recordFromStart": boolean,
"enableClosedCaptions": boolean,
"closedCaptionsType": string,
"projection": string,
"enableLowLatency": boolean,
"latencyPreference": boolean,
"enableAutoStart": boolean,
"enableAutoStop": boolean,
"availabilityConfig": {
"globalConfig": {
"excludedRegionCodes": [
string
],
"interval": {
"startTime": datetime,
"endTime": datetime
}
},
"regionsConfig": {
"regionIntervals": [
{
"regionCode": string,
"interval": {
"startTime": datetime,
"endTime": datetime
}
}
]
}
}
},
"statistics": {
"totalChatCount": unsigned long
},
"monetizationDetails": {
"adsMonetizationStatus": string,
"eligibleForAdsMonetization": boolean,
"cuepointSchedule": {
"enabled": boolean,
"pauseAdsUntil": datetime,
"ytOptimizedCuepointConfig": string,
"creatorCuepointConfig": {
"scheduleStrategy": string,
"repeatIntervalSecs": unsigned integer
}
}
}
}প্রপার্টি
নিম্নলিখিত সারণীতে এই রিসোর্সে দেখানো প্রপার্টিগুলি সংজ্ঞায়িত করা হয়েছে:
| প্রপার্টি | |
|---|---|
kind |
stringAPI রিসোর্সের ধরন শনাক্ত করে। ভ্যালু হবে youtube#liveBroadcast। |
etag |
etagএই রিসোর্সের Etag. |
id |
stringYouTube ব্রডকাস্টকে অনন্যভাবে শনাক্ত করার জন্য যে আইডি অ্যাসাইন করে। |
snippet |
objectsnippet অবজেক্টে ইভেন্ট সম্পর্কিত প্রাথমিক বিবরণ থাকে, যার মধ্যে ইভেন্টের নাম, বিবরণ, শুরুর সময় ও শেষের সময় অন্তর্ভুক্ত। |
snippet.publishedAt |
datetimeYouTube-এর লাইভ ব্রডকাস্ট শিডিউলে ব্রডকাস্ট যোগ করার তারিখ ও সময়। ভ্যালু ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ) ফর্ম্যাটে উল্লেখ করা হয়েছে। |
snippet.channelId |
stringযে চ্যানেল ব্রডকাস্ট প্রকাশ করছে, সেটি অনন্যভাবে শনাক্ত করতে YouTube যে আইডি ব্যবহার করে। |
snippet.title |
stringব্রডকাস্টের নাম। মনে রাখবেন, ব্রডকাস্টে ঠিক একটি YouTube ভিডিও দেখানো হয়। আপনি ব্রডকাস্ট রিসোর্স পরিবর্তন করে অথবা সংশ্লিষ্ট ভিডিও রিসোর্সের title ফিল্ড সেট করে এই ফিল্ড সেট করতে পারবেন। |
snippet.description |
stringব্রডকাস্টের বিবরণ। title-এর মতো, আপনি ব্রডকাস্ট রিসোর্স পরিবর্তন করে বা সংশ্লিষ্ট ভিডিও রিসোর্সের description ফিল্ড সেট করে এই ফিল্ড সেট করতে পারবেন। |
snippet.categoryId |
stringব্রডকাস্টের সাথে যুক্ত YouTube ভিডিওর বিভাগ। আপনি videoCategories.list পদ্ধতি ব্যবহার করে বিভাগের তালিকা পেতে পারেন। |
snippet.thumbnails |
objectব্রডকাস্টের সাথে যুক্ত থাম্বনেল ছবির ম্যাপ। এই অবজেক্টের মধ্যে থাকা প্রতিটি নেস্টেড অবজেক্টের জন্য, কী হল থাম্বনেল ছবির নাম এবং ভ্যালু হল একটি অবজেক্ট যাতে থাম্বনেল সম্পর্কে অন্যান্য তথ্য থাকে। |
snippet.thumbnails.(key) |
objectসঠিক কী ভ্যালু হল:
|
snippet.thumbnails.(key).url |
stringছবির URL. |
snippet.thumbnails.(key).width |
unsigned integerছবির প্রস্থ। |
snippet.thumbnails.(key).height |
unsigned integerছবির উচ্চতা। |
snippet.scheduledStartTime |
datetimeযে তারিখ ও সময়ে ব্রডকাস্ট শুরু করার জন্য শিডিউল করা হয়েছে। মানটি ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ) ফর্ম্যাটে নির্দিষ্ট করা আছে। Creator Studio-তে শুরু হওয়ার সময়সূচী নির্ধারণ না করেই ব্রডকাস্ট তৈরি করার সুবিধা আছে। এই ক্ষেত্রে, চ্যানেল মালিক স্ট্রিমিং শুরু করলেই ব্রডকাস্ট শুরু হয়ে যায়। এইসব ব্রডকাস্টের জন্য, datetime ভ্যালু Unix epoch time zero-এর সাথে সম্পর্কিত এবং API বা Creator Studio ব্যবহার করে এই ভ্যালু পরিবর্তন করা যাবে না। |
snippet.scheduledEndTime |
datetimeব্রডকাস্ট শেষ হওয়ার জন্য শিডিউল করা তারিখ ও সময়। ভ্যালু ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ) ফর্ম্যাটে উল্লেখ করা হয়েছে। liveBroadcast রিসোর্স এই প্রপার্টির জন্য কোনও ভ্যালু নির্দিষ্ট না করলে, ব্রডকাস্ট অনির্দিষ্টকালের জন্য চলতে থাকবে। একইভাবে, আপনি এই প্রপার্টির জন্য কোনও ভ্যালু নির্দিষ্ট না করলে, YouTube ধরে নেয় যে ব্রডকাস্ট অনির্দিষ্টকাল ধরে চলবে। |
snippet.actualStartTime |
datetimeব্রডকাস্টটি আসলে যে তারিখে ও সময়ে শুরু হয়েছে। ব্রডকাস্টের স্ট্যাটাস live হলে তবেই এই তথ্য উপলভ্য হয়। মানটি ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) ফর্ম্যাটে নির্দিষ্ট করা আছে। |
snippet.actualEndTime |
datetimeব্রডকাস্ট আসলে যে তারিখ ও সময়ে শেষ হয়েছে। ব্রডকাস্টের স্ট্যাটাস complete হলে তবেই এই তথ্য উপলভ্য হয়। ভ্যালু ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) ফর্ম্যাটে উল্লেখ করা হয়েছে। |
snippet.isDefaultBroadcast |
boolean
১ সেপ্টেম্বর, ২০২০ তারিখে বা তার পরে এই প্রপার্টি বন্ধ করে দেওয়া হবে। সেই সময়, কোনও চ্যানেল লাইভ স্ট্রিমিংয়ের জন্য চালু করা হলে YouTube
ডিফল্ট স্ট্রিম ও ডিফল্ট ব্রডকাস্ট তৈরি করা বন্ধ করে
দেবে। আরও বিবরণের জন্য বন্ধ করে দেওয়া
সংক্রান্ত ঘোষণা দেখুন।
এই ব্রডকাস্টটি ডিফল্ট ব্রডকাস্ট কিনা তা এই প্রপার্টি থেকে বোঝা যায়।ডিফল্ট ব্রডকাস্ট কীভাবে কাজ করে কোনও YouTube চ্যানেলে লাইভ স্ট্রিমিং চালু করা হলে, YouTube সেই চ্যানেলের জন্য একটি ডিফল্ট স্ট্রিম ও ডিফল্ট ব্রডকাস্ট তৈরি করে। চ্যানেলের মালিক কীভাবে YouTube-এ লাইভ ভিডিও পাঠান তা স্ট্রিম থেকে বোঝা যায় এবং দর্শকরা কীভাবে ডিফল্ট স্ট্রিম দেখতে পান তা ব্রডকাস্ট থেকে বোঝা যায়। চ্যানেলের মালিক liveStreams.list এবং liveBroadcasts.list পদ্ধতি ব্যবহার করে এইসব রিসোর্স শনাক্ত করতে পারবেন।কোনও চ্যানেল তার ডিফল্ট স্ট্রিমে ভিডিও স্ট্রিম করা শুরু করলে, ভিডিওটি চ্যানেলের ডিফল্ট ব্রডকাস্টে দেখা যায়। স্ট্রিম শেষ হয়ে গেলে, YouTube সম্পূর্ণ ব্রডকাস্টকে YouTube ভিডিওতে কনভার্ট করে এবং ভিডিওটিকে একটি YouTube ভিডিও আইডি অ্যাসাইন করে। কনভার্সন সম্পূর্ণ হয়ে গেলে, ভিডিওটি চ্যানেলের আপলোড করা ভিডিওর তালিকায় যোগ করা হয়। ব্রডকাস্ট শেষ হওয়ার সাথে সাথেই ভিডিওটি উপলভ্য হয় না এবং ব্রডকাস্টের প্রকৃত দৈর্ঘ্যের উপর নির্ভর করে ভিডিওটি উপলভ্য হতে কতটা দেরি হবে। |
snippet.liveChatId |
stringব্রডকাস্টের YouTube লাইভ চ্যাটের আইডি। এই আইডির সাহায্যে, আপনি চ্যাট মেসেজ ফিরিয়ে আনতে, যোগ করতে বা মুছে ফেলতে liveChatMessage রিসোর্সের পদ্ধতি ব্যবহার করতে পারবেন। এছাড়াও, আপনি চ্যাট মডারেটর যোগ করতে বা সরাতে, লাইভ চ্যাটে অংশগ্রহণ করা থেকে ব্যবহারকারীদের নিষিদ্ধ করতে বা আগে থেকে থাকা নিষেধাজ্ঞা সরাতে পারবেন। |
status |
objectstatus অবজেক্টে ইভেন্টের স্ট্যাটাস সম্পর্কে তথ্য থাকে। |
status.lifeCycleStatus |
stringব্রডকাস্টের স্ট্যাটাস। API-এর liveBroadcasts.transition পদ্ধতি ব্যবহার করে স্ট্যাটাস আপডেট করা যেতে পারে।এই প্রপার্টির জন্য সঠিক ভ্যালু হল:
|
status.privacyStatus |
stringব্রডকাস্টের গোপনীয়তা স্ট্যাটাস। মনে রাখবেন, ব্রডকাস্ট ঠিক একটি YouTube ভিডিওকে দেখায়, তাই গোপনীয়তা সেটিংস ভিডিওর জন্য কাজ করা সেটিংসের মতোই হয়। এছাড়াও, আপনি ব্রডকাস্ট রিসোর্স পরিবর্তন করে অথবা সংশ্লিষ্ট ভিডিও রিসোর্সের privacyStatus ফিল্ড সেট করে এই ফিল্ড সেট করতে পারেন।এই প্রপার্টির জন্য বৈধ ভ্যালু হল:
|
status.recordingStatus |
stringব্রডকাস্টের রেকর্ডিং স্ট্যাটাস। এই প্রপার্টির জন্য সঠিক ভ্যালু হল:
|
status.madeForKids |
booleanএই ভ্যালু থেকে বোঝা যায় যে ব্রডকাস্টটি বাচ্চাদের জন্য নির্ধারিত কিনা। এই প্রপার্টি ভ্যালু শুধু পড়া যাবে। |
status.selfDeclaredMadeForKids |
booleanliveBroadcasts.insert
অনুরোধে, এই প্রপার্টি চ্যানেল মালিককে ব্রডকাস্টটি বাচ্চাদের জন্য তৈরি হিসেবে
চিহ্নিত করার অনুমতি দেয়। liveBroadcasts.list
অনুরোধে, চ্যানেলের মালিক API অনুরোধ অনুমোদন করলে তবেই প্রপার্টি ভ্যালু ফেরত দেওয়া হয়। |
contentDetails |
objectcontentDetails অবজেক্টে ইভেন্টের ভিডিও কন্টেন্ট সম্পর্কে তথ্য থাকে, যেমন কন্টেন্টটি কোনও এম্বেড করা ভিডিও প্লেয়ারে দেখানো যাবে কিনা বা এটি আর্কাইভ করা হবে কিনা এবং তাই ইভেন্ট শেষ হওয়ার পরে দেখার জন্য উপলভ্য হবে কিনা। |
contentDetails.boundStreamId |
stringএই মানটি ব্রডকাস্টের সাথে live stream-কে অনন্যভাবে শনাক্ত করে। |
contentDetails.boundStreamLastUpdateTimeMs |
datetimeboundStreamId-এর উল্লেখ করা লাইভ স্ট্রিম শেষবার আপডেট করার তারিখ ও সময়। |
contentDetails.monitorStream |
objectmonitorStream অবজেক্টে মনিটর স্ট্রিম সম্পর্কে তথ্য থাকে, যা ব্রডকাস্টার ব্রডকাস্ট স্ট্রিম সর্বজনীনভাবে দেখানোর আগে ইভেন্ট কন্টেন্ট পর্যালোচনা করতে ব্যবহার করতে পারেন। |
contentDetails.monitorStream.enableMonitorStream |
booleanএই ভ্যালু নির্ধারণ করে যে ব্রডকাস্টের জন্য মনিটর স্ট্রিম চালু করা আছে কিনা। মনিটর স্ট্রিম চালু করা থাকলে, YouTube একটি বিশেষ স্ট্রিমে ইভেন্ট কন্টেন্ট ব্রডকাস্ট করবে যা শুধুমাত্র ব্রডকাস্টারের ব্যবহারের জন্য তৈরি করা হয়েছে। ব্রডকাস্টার ইভেন্টের কন্টেন্ট পর্যালোচনা করতে এবং কিউপয়েন্ট যোগ করার জন্য সবচেয়ে উপযুক্ত সময় শনাক্ত করতে স্ট্রিম ব্যবহার করতে পারেন। আপনি যদি ব্রডকাস্টের জন্য testing স্টেজ রাখতে চান বা ইভেন্টের জন্য ব্রডকাস্টে দেরি করতে চান, তাহলে আপনাকে এই ভ্যালু true-এ সেট করতে হবে। এছাড়াও, এই প্রপার্টির ভ্যালু true হলে, live স্টেটে ট্রানজিশন করার আগে আপনাকে অবশ্যই ব্রডকাস্টকে testing স্টেটে ট্রানজিশন করতে হবে। (প্রপার্টির ভ্যালু false হলে, আপনার ব্রডকাস্টে testing স্টেজ থাকতে পারবে না, তাই আপনি ব্রডকাস্ট সরাসরি live স্টেটে ট্রানজিশন করতে পারবেন।)আপনি যখন update a broadcast, আপনার API অনুরোধে part প্যারামিটার ভ্যালুতে contentDetails অংশ অন্তর্ভুক্ত থাকলে এই প্রপার্টি সেট করতে হবে। তবে, আপনি insert a broadcast করলে, প্রপার্টিটি ঐচ্ছিক এবং এর ডিফল্ট ভ্যালু হল true।গুরুত্বপূর্ণ: ব্রডকাস্ট testing বা live স্টেটে থাকলে এই প্রপার্টি আপডেট করা যাবে না। |
contentDetails.monitorStream.broadcastStreamDelayMs |
unsigned integerআপনি enableMonitorStream প্রপার্টি true-এ সেট করে থাকলে, এই প্রপার্টি লাইভ ব্রডকাস্টে দেরির দৈর্ঘ্য নির্ধারণ করে।আপনি যখন update a broadcast, আপনার API অনুরোধে part প্যারামিটার ভ্যালুতে contentDetails অংশ অন্তর্ভুক্ত থাকলে এই প্রপার্টি সেট করতে হবে। তবে, আপনি insert a broadcast করলে, প্রপার্টিটি ঐচ্ছিক এবং এর ডিফল্ট ভ্যালু হল 0। এই ভ্যালু থেকে বোঝা যায় যে সম্প্রচারে কোনও দেরি নেই। মনে রাখবেন: ব্রডকাস্ট testing বা live স্ট্যাটাসে থাকলে এই প্রপার্টি আপডেট করা যাবে না। |
contentDetails.monitorStream.embedHtml |
stringHTML কোড যা মনিটর স্ট্রিম চালানোর জন্য একটি প্লেয়ার এম্বেড করে। |
contentDetails.enableEmbed |
booleanএই সেটিং থেকে বোঝা যায় যে এম্বেড করা প্লেয়ারে ব্রডকাস্ট ভিডিও চালানো যাবে কিনা। আপনি যদি ভিডিওটি আর্কাইভ করার সিদ্ধান্ত নেন ( enableArchive প্রপার্টি ব্যবহার করে), তাহলে এই সেটিংটি আর্কাইভ করা ভিডিওর ক্ষেত্রেও প্রযোজ্য হবে।আপনি update a broadcast করলে, আপনার API অনুরোধে part প্যারামিটার ভ্যালুতে contentDetails অংশটি থাকলে, এই প্রপার্টি সেট করতে হবে। তবে, আপনি insert a broadcast করলে, প্রপার্টিটি ঐচ্ছিক এবং এর ডিফল্ট ভ্যালু হল true।মনে রাখবেন: ব্রডকাস্ট testing বা live স্টেটে থাকলে এই প্রপার্টি আপডেট করা যাবে না। |
contentDetails.enableDvr |
booleanভিডিও দেখার সময় দর্শকরা DVR কন্ট্রোল অ্যাক্সেস করতে পারবেন কিনা তা এই সেটিং নির্ধারণ করে। DVR কন্ট্রোল ব্যবহার করে দর্শক কন্টেন্ট পজ, রিওয়াইন্ড বা ফাস্ট ফরওয়ার্ড করার মাধ্যমে ভিডিও প্লেব্যাক অভিজ্ঞতা নিয়ন্ত্রণ করতে পারেন। এই প্রপার্টির ডিফল্ট ভ্যালু হল true। আপনি যখন update a broadcast, তখন আপনার API অনুরোধে part প্যারামিটার ভ্যালুতে contentDetails অংশ অন্তর্ভুক্ত থাকলে এই প্রপার্টি সেট করতে হবে। তবে, আপনি insert a broadcast করলে, প্রপার্টিটি ঐচ্ছিক এবং এর ডিফল্ট ভ্যালু হল true।গুরুত্বপূর্ণ: সম্প্রচার শেষ হওয়ার সাথে সাথেই প্লেব্যাক উপলভ্য করতে চাইলে, আপনাকে অবশ্যই ভ্যালু true হিসেবে সেট করতে হবে এবং enableArchive প্রপার্টির ভ্যালুও true হিসেবে সেট করতে হবে। এছাড়াও, ব্রডকাস্ট testing বা live অবস্থায় থাকলে এই প্রপার্টি আপডেট করা যাবে না। |
contentDetails.recordFromStart |
booleanইভেন্টের স্ট্যাটাস লাইভে পরিবর্তিত হওয়ার পরে YouTube অটোমেটিক ব্রডকাস্ট রেকর্ড করা শুরু করবে কিনা তা এই সেটিং থেকে জানা যায়। এই প্রপার্টির ডিফল্ট ভ্যালু হল true এবং সম্প্রচারকারী চ্যানেলকে লাইভ ব্রডকাস্টের জন্য রেকর্ডিং বন্ধ করার অনুমতি দেওয়া হলে তবেই এটি false-এ সেট করা যেতে পারে।আপনার চ্যানেলের রেকর্ডিং বন্ধ করার অনুমতি না থাকলে এবং আপনি recordFromStart প্রপার্টি false হিসেবে সেট করা আছে এমন ব্রডকাস্ট যোগ করার চেষ্টা করলে, API একটি Forbidden সমস্যা দেখাবে। এছাড়াও, আপনার চ্যানেলের সেই অনুমতি না থাকলে এবং আপনি যদি recordFromStart প্রপার্টিকে false হিসেবে সেট করার জন্য কোনও ব্রডকাস্ট আপডেট করার চেষ্টা করেন, তাহলে API একটি modificationNotAllowed সমস্যা দেখাবে।আপনি যখন update a broadcast, আপনার API অনুরোধে part প্যারামিটার ভ্যালুতে contentDetails অংশ অন্তর্ভুক্ত থাকলে এই প্রপার্টি সেট করতে হবে। তবে, আপনি insert a broadcast করলে, প্রপার্টিটি ঐচ্ছিক এবং এর ডিফল্ট মান হল true।গুরুত্বপূর্ণ: ব্রডকাস্ট শেষ হওয়ার সাথে সাথেই প্লেব্যাক উপলভ্য করতে চাইলে, আপনাকে অবশ্যই enableDvr প্রপার্টির ভ্যালু true হিসেবে সেট করতে হবে। আপনি যদি এই প্রপার্টির ভ্যালু true হিসেবে সেট করেন কিন্তু enableDvr প্রপার্টি true হিসেবে সেট না করেন, তাহলে আর্কাইভ করা ভিডিও প্লেব্যাকের জন্য উপলভ্য হতে প্রায় একদিন দেরি হতে পারে।মনে রাখবেন: ব্রডকাস্ট testing বা live স্ট্যাটাসে থাকলে এই প্রপার্টি আপডেট করা যাবে না। |
contentDetails.enableClosedCaptions |
boolean১৭ ডিসেম্বর, ২০১৫ থেকে এই প্রপার্টি বন্ধ করা হয়েছে। পরিবর্তে, contentDetails.closedCaptionsType প্রপার্টি ব্যবহার করুন।এই সেটিং থেকে বোঝা যায় যে এই ব্রডকাস্টের জন্য HTTP POST ক্লোজড ক্যাপশন চালু আছে কিনা। যেসব API ক্লায়েন্ট আগে থেকেই এই প্রপার্টি ব্যবহার করছে:
|
contentDetails.closedCaptionsType |
stringমনে রাখবেন: এই প্রপার্টি contentDetails.enableClosedCaptions প্রপার্টিকে প্রতিস্থাপন করে।আপনার ব্রডকাস্টের জন্য ক্লোজড ক্যাপশনিং চালু করা আছে কিনা এবং যদি থাকে, তাহলে আপনি কোন ধরনের ক্লোজড ক্যাপশন প্রদান করছেন তা এই প্রপার্টি থেকে বোঝা যায়:
|
contentDetails.projection |
stringএই ব্রডকাস্টের প্রজেকশন ফর্ম্যাট। প্রপার্টির ডিফল্ট ভ্যালু হল rectangular।এই প্রপার্টির সঠিক ভ্যালু হল:
|
contentDetails.enableLowLatency |
booleanএই ব্রডকাস্ট কম লেটেন্সি স্ট্রিমিংয়ের জন্য এনকোড করা উচিত কিনা তা নির্দেশ করে। লো-লেটেন্সি স্ট্রিম ব্যবহার করলে, কোনও ব্রডকাস্ট দেখছেন এমন ব্যবহারকারীদের কাছে ভিডিওটি দেখাতে যে সময় লাগে তা কমিয়ে দিতে পারে, যদিও এটি স্ট্রিমের দর্শকদের জন্য রেজোলিউশনের উপরও প্রভাব ফেলতে পারে। |
contentDetails.latencyPreference |
stringএই ব্রডকাস্টের জন্য কোন লেটেন্সি সেটিং ব্যবহার করতে হবে তা দেখায়। enableLowLatency-এর পরিবর্তে এই প্রপার্টি ব্যবহার করা হতে পারে, যা ultraLow-কে সাপোর্ট করে না।একটি লো-লেটেন্সি স্ট্রিম ব্রডকাস্ট দেখা ব্যবহারকারীদের কাছে ভিডিও দৃশ্যমান হতে যে সময় লাগে তা কমাতে পারে, যদিও এটি প্লেব্যাকের মসৃণতাকেও প্রভাবিত করতে পারে। একটি আল্ট্রা-লো-লেটেন্সি স্ট্রিম দর্শকদের কাছে ভিডিও দৃশ্যমান হতে যে সময় লাগে তা আরও কমিয়ে দেয়, যার ফলে দর্শকদের সাথে ইন্টার্যাক্ট করা সহজ হয়, কিন্তু আল্ট্রা-লো লেটেন্সি ক্লোজড ক্যাপশন বা ১০৮০p-এর বেশি রেজোলিউশন সাপোর্ট করে না। এই প্রপার্টির জন্য সঠিক ভ্যালু হল:
|
contentDetails.enableAutoStart |
booleanআপনি বাউন্ড করা live stream-এ ভিডিও স্ট্রিমিং শুরু করলে এই ব্রডকাস্ট অটোমেটিক শুরু হওয়া উচিত কিনা তা নির্দেশ করে। |
contentDetails.enableAutoStop |
booleanচ্যানেলের মালিক বাউন্ড ভিডিও স্ট্রিমে ভিডিও স্ট্রিমিং বন্ধ করার পরে এই ব্রডকাস্ট এক মিনিট মতো অটোমেটিক বন্ধ হয়ে যাবে কিনা তা নির্দেশ করে। |
contentDetails.availabilityConfig |
objectব্রডকাস্টের উপলভ্যতা কনফিগারেশন। নির্দিষ্ট অঞ্চলে উপলভ্যতা সেট করতে বা নির্দিষ্ট অঞ্চল ব্লক করতে ব্যবহার করা হয়। এটি ঐচ্ছিক - সেট করা না থাকলে, এটি প্রয়োগ করা হয় না। |
contentDetails.availabilityConfig.globalConfig |
objectব্রডকাস্টের গ্লোবাল উপলভ্যতা সংক্রান্ত কনফিগারেশন। excludedRegionCodes তালিকায় উল্লেখ করা অঞ্চলগুলি ছাড়া ভিডিওটি সব অঞ্চলে উপলভ্য। |
contentDetails.availabilityConfig.globalConfig.excludedRegionCodes |
list (string)যেসব অঞ্চলে ভিডিও ব্লক করা হয়েছে তার তালিকা। |
contentDetails.availabilityConfig.globalConfig.interval |
objectডিফল্ট টাইম উইন্ডো যেখানে ভিডিওটি ব্লক করা নেই এমন সব অঞ্চলের জন্য উপলভ্য। মনে রাখবেন: এই প্রপার্টি আসন্ন বা অ্যাক্টিভ লাইভ ব্রডকাস্টের ক্ষেত্রে কাজ করে না। |
contentDetails.availabilityConfig.globalConfig.interval.startTime |
datetimeভিডিওটি উপলভ্য হওয়ার তারিখ ও সময়। অনির্দিষ্ট থাকলে, ভিডিওটি আগে থেকেই উপলভ্য। ভ্যালু ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ) ফর্ম্যাটে উল্লেখ করা হয়েছে। |
contentDetails.availabilityConfig.globalConfig.interval.endTime |
datetimeযে তারিখ ও সময়ে ভিডিওটি আর উপলভ্য থাকবে না। নির্দিষ্ট না করা থাকলে, ভিডিওটি চিরকালের জন্য উপলভ্য থাকবে। শুরু ও শেষ হওয়ার নির্দিষ্ট সময় পাঁচ বছরের বেশি ভবিষ্যতের হতে পারবে না। ভ্যালু ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ) ফর্ম্যাটে উল্লেখ করা হয়েছে। |
contentDetails.availabilityConfig.regionsConfig |
objectব্রডকাস্টের আঞ্চলিক উপলভ্যতা কনফিগারেশন। ভিডিওটি শুধুমাত্র নির্দিষ্ট অঞ্চলে উপলভ্য। |
contentDetails.availabilityConfig.regionsConfig.regionIntervals |
list (object)ভিডিওটি উপলভ্য থাকা অঞ্চল ও সময়ের তালিকা। কোনও অঞ্চল একাধিকবার উল্লেখ করা হলে, সবকটি ইন্টারভ্যালের ইউনিয়ন ব্যবহার করা হয়। |
contentDetails.availabilityConfig.regionsConfig.regionIntervals.regionCode |
stringভিডিওটি যে অঞ্চলে উপলভ্য। |
contentDetails.availabilityConfig.regionsConfig.regionIntervals.interval |
objectনির্দিষ্ট অঞ্চলে ভিডিওটি যে সময়সীমার মধ্যে উপলভ্য। মনে রাখবেন: এই প্রপার্টি আসন্ন বা অ্যাক্টিভ লাইভ ব্রডকাস্টের ক্ষেত্রে কাজ করে না। |
contentDetails.availabilityConfig.regionsConfig.regionIntervals.interval.startTime |
datetimeযে তারিখ ও সময়ে ভিডিওটি নির্দিষ্ট অঞ্চলে উপলভ্য হবে। নির্দিষ্ট না করা থাকলে, ভিডিওটি আগে থেকেই উপলভ্য। ভ্যালু ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ) ফর্ম্যাটে উল্লেখ করা হয়েছে। |
contentDetails.availabilityConfig.regionsConfig.regionIntervals.interval.endTime |
datetimeনির্দিষ্ট অঞ্চলে ভিডিওটি যে তারিখ ও সময় থেকে আর উপলভ্য থাকবে না। নির্দিষ্ট না করা থাকলে, ভিডিওটি চিরকালের জন্য উপলভ্য থাকবে। নির্দিষ্ট করা শুরুর ও শেষের সময় ভবিষ্যতের পাঁচ বছরের বেশি হতে পারবে না। ভ্যালু ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ) ফর্ম্যাটে উল্লেখ করা হয়েছে। |
statistics |
objectstatistics অবজেক্টে লাইভ ব্রডকাস্ট সম্পর্কিত পরিসংখ্যান থাকে। ব্রডকাস্ট চলাকালীন এইসব পরিসংখ্যানের ভ্যালু পরিবর্তন হতে পারে এবং ব্রডকাস্ট লাইভ থাকাকালীনই শুধু তা ফিরিয়ে আনা যাবে। |
statistics.totalChatCount |
unsigned longব্রডকাস্টের সাথে যুক্ত লাইভ চ্যাট মেসেজের মোট সংখ্যা। ব্যবহারকারী ব্রডকাস্ট দেখতে পেলে, লাইভ চ্যাট ফিচার চালু থাকলে এবং অন্তত একটি মেসেজ থাকলে, প্রপার্টি ও তার ভ্যালু দেখানো হয়। মনে রাখবেন যে ব্রডকাস্ট শেষ হওয়ার পরে এই প্রপার্টি কোনও ভ্যালু নির্দিষ্ট করবে না। তাই, এই প্রপার্টি সম্পূর্ণ হওয়া লাইভ ব্রডকাস্টের আর্কাইভ করা ভিডিওর জন্য চ্যাট মেসেজের সংখ্যা শনাক্ত করবে না। |
monetizationDetails |
objectmonetizationDetails অবজেক্টে স্ট্রিমের মনিটাইজেশন সংক্রান্ত বিবরণ থাকে,
যেমন, বিজ্ঞাপন অটোমেটর চালু আছে কিনা অথবা মিডরোল বিজ্ঞাপন যোগ করতে দেরি হচ্ছে কিনা। |
monetizationDetails.adsMonetizationStatus |
stringএই প্রপার্টি থেকে বোঝা যায় যে ভিডিও ব্রডকাস্টে মিডরোল বিজ্ঞাপন চালু করা আছে কিনা। সঠিক ভ্যালু হল on ও off। |
monetizationDetails.eligibleForAdsMonetization |
stringএই প্রপার্টি থেকে বোঝা যায় যে ভিডিও ব্রডকাস্ট মিডরোল বিজ্ঞাপনের জন্য উপযুক্ত কিনা। বিভিন্ন কারণে কোনও ব্রডকাস্ট অনুপযুক্ত হতে পারে, যেমন আগে থেকে থাকা কোনও দাবি বা মনিটাইজেশনের জন্য চ্যানেল সেট-আপ না করা। |
monetizationDetails.cuepointSchedule |
objectcuepointSchedule অবজেক্ট ব্রডকাস্টের জন্য বিজ্ঞাপন অটোমেশন সেটিংস
নির্দিষ্ট করে। |
monetizationDetails.cuepointSchedule.enabled |
booleanএই ভ্যালু নির্ধারণ করে যে ব্রডকাস্টে অটোমেটিক বিজ্ঞাপন যোগ করা হবে কিনা। ভ্যালু trueহলে, YouTube অটোমেটিক ব্রডকাস্টে মিডরোল বিজ্ঞাপন যোগ করবে। বিজ্ঞাপন
দেখানোর শিডিউল monetizationDetails.cuepointSchedule অবজেক্টের অন্যান্য ফিল্ডের ভ্যালু দ্বারা
নির্ধারিত হবে।
|
monetizationDetails.cuepointSchedule.pauseAdsUntil |
datetimeএই ভ্যালু নির্দিষ্ট করে যে YouTube-কে নির্দিষ্ট তারিখ ও সময়ের আগে ব্রডকাস্টে মিডরোল বিজ্ঞাপন যোগ করতে হবে না। মানটি ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) ফর্ম্যাটে উল্লেখ করা হয়। বিজ্ঞাপন পজ করার জন্য ভ্যালু অবশ্যই ভবিষ্যতের তারিখ ও সময় হিসেবে সেট করতে হবে; বিজ্ঞাপন আনপজ করার জন্য ফিল্ড ভ্যালু অতীতের তারিখ ও সময় হিসেবে সেট করা যেতে পারে অথবা ফাঁকা রাখা যেতে পারে। |
monetizationDetails.cuepointSchedule.ytOptimizedCuepointConfig |
stringএই ফিল্ডে অটোমেটিক যোগ করা বিজ্ঞাপন কিউপয়েন্টের জন্য বেছে নেওয়া বিকল্প নির্দিষ্ট করা হয়। ফিল্ডটি তিনটি মোডের মধ্যে একটি নির্দিষ্ট করতে পারে:
|
monetizationDetails.cuepointSchedule.creatorCuepointConfig |
objectcreatorCuepointConfig অবজেক্ট বিজ্ঞাপন অটোমেটর বিকল্প নির্দিষ্ট করে, যা ক্রিয়েটরকে মিডরোল কীভাবে দেখানো হবে তা বেছে নিতে দেয়। |
monetizationDetails.cuepointSchedule.creatorCuepointConfig.scheduleStrategy |
stringএই ভ্যালু সেই স্ট্র্যাটেজি নির্দিষ্ট করে যা YouTube-কে কিউপয়েন্ট শিডিউল করার জন্য অনুসরণ করতে হবে। সঠিক মান হল:
|
monetizationDetails.cuepointSchedule.creatorCuepointConfig.repeatIntervalSecs |
unsigned integerএই ভ্যালু ব্রডকাস্ট চলাকালীন অটোমেটিক বিজ্ঞাপন যোগ করার মধ্যেকার ব্যবধান, সেকেন্ডে, নির্দিষ্ট করে। যেমন, ভ্যালু 360 হলে, YouTube ছয় মিনিটের ব্যবধানে মিড-রোল বিজ্ঞাপন কিউপয়েন্ট যোগ করতে পারে।মনে রাখবেন:
|