YouTube Live Streaming API - Revision History

এই পৃষ্ঠায় YouTube Live Streaming API-তে হওয়া পরিবর্তন এবং ডকুমেন্টেশন সংক্রান্ত আপডেট তালিকাভুক্ত করা আছে।

১২ অক্টোবর, ২০২৬

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি করা হয়েছে:

  • API-এর উত্তর সঠিকভাবে দেখানোর জন্য liveChatMessage রিসোর্সের snippet.giftEventDetails প্রপার্টি পরিবর্তন করে snippet.giftDetails করা হয়েছে।

১৮ আগস্ট, ২০২৬

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি করা হয়েছে:

  • liveBroadcasts.update পদ্ধতির ডকুমেন্টেশন আপডেট করা হয়েছে যাতে মনিটাইজেশন সংক্রান্ত নতুন সমস্যা অন্তর্ভুক্ত করা যায়: preconditionFailed (412) (কারণ: videoNotEligibleForAdsMonetization) এবং backendError (503) (কারণ: backendError)।

১৭ আগস্ট, ২০২৬

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি করা হয়েছে:

  • liveBroadcast রিসোর্সের নতুন snippet.categoryId প্রপার্টি আপনাকে লাইভ ব্রডকাস্টের সাথে যুক্ত ভিডিও বিভাগ সেট, আপডেট ও রিট্রিভ করতে দেয়।

২০ জুলাই, ২০২৬

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • বিজ্ঞাপন আবার চালু করতে, monetizationDetails.cuepointSchedule.pauseAdsUntil প্রপার্টি এখন আগের কোনও তারিখ ও সময় অথবা ফাঁকা ভ্যালুতে সেট করা যেতে পারে।

৯ জুলাই, ২০২৬

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • liveChatBans.insert-এর ডকুমেন্টেশনে এখন উল্লেখ করা হয়েছে যে snippet.type প্রপার্টি অবশ্যই permanent অথবা temporary হতে হবে।

    liveChatMessage.insert-এর ডকুমেন্টেশন নির্ভুলভাবে দেখায় যে questionText হল metadata-এর একটি ডাইরেক্ট প্রপার্টি এবং options হল অবজেক্টের একটি অ্যারে, যার প্রতিটিতে একটি করে optionText ফিল্ড আছে।

১ জুন, ২০২৬

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি করা হয়েছে:

  • liveBroadcast রিসোর্সের contentDetails.availabilityConfig প্রপার্টি আপনাকে লাইভ ব্রডকাস্টের জন্য ভৌগোলিক বিধিনিষেধ নির্দিষ্ট করতে দেয়, যাতে আপনি লাইভ ইভেন্টের আঞ্চলিক উপলভ্যতা ম্যানেজ করতে পারেন।

২৬ মার্চ, ২০২৬

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি করা হয়েছে:

  • snippet.type প্রপার্টি এখন নতুন ভ্যালু giftEvent-এর সাথে কাজ করে।

  • liveChatMessage রিসোর্সের নতুন snippet.giftEventDetails প্রপার্টি ও তার চাইল্ডে গিফ্ট ইভেন্ট সংক্রান্ত তথ্য থাকে।

১২ জানুয়ারি, ২০২৬

API এখন লাইভ ব্রডকাস্টের জন্য মিডরোল এবং অটোমেটিক মিডরোল ইনসার্ট করা চালু করার সুবিধা প্রদান করে।

ব্রডকাস্টের মালিক কোনও ব্রডকাস্টের জন্য মিড-রোল চালু করার বিকল্প বেছে নিতে পারেন, যতক্ষণ না ব্রডকাস্টটি মিড-রোলের জন্য উপযুক্ত হয়। এছাড়াও, মালিক যেকোনও সময় ব্রডকাস্টের জন্য মিড-রোল বন্ধ করতে পারবেন।

কোনও ব্রডকাস্টে মিডরোল চালু করা থাকলে, ব্রডকাস্টের মালিক অটোমেটিক মিডরোল যোগ করার বিকল্প চালু করতে পারেন। এছাড়াও, তারা যেকোনও সময় ব্রডকাস্টের জন্য অটোমেটেড বিজ্ঞাপন বন্ধ করতে পারবেন।

ব্রডকাস্টের মালিক অটোমেটেড বিজ্ঞাপন চালু করলে, তিনি নিম্নলিখিত বিকল্পগুলির মধ্যে থেকে একটি বেছে নিতে পারবেন:

  • YouTube-কে মিড-রোল যোগ করার প্রসেস অপ্টিমাইজ করতে দিন। এই বিকল্পে তিনটি মোড কাজ করে:
    • কম: উপার্জনের সম্ভাবনা কম, দর্শকের অভিজ্ঞতা কম বিঘ্নিত হয়
    • মাঝারি: মাঝারি উপার্জনের সম্ভাবনা, দর্শকের অভিজ্ঞতাতে সামঞ্জস্যবিধান করা হয়েছে
    • বেশি: উপার্জনের সম্ভাবনা বেশি, দর্শকের অভিজ্ঞতা বেশি বিঘ্নিত হয়
  • মিড-রোল বিজ্ঞাপন যোগ করার জন্য স্ট্র্যাটেজি ও ইন্টারভ্যাল ম্যানুয়ালি কনফিগার করুন। এই ক্ষেত্রে, মালিককে অবশ্যই দুটি প্যারামিটার সেট আপ করতে হবে:
    1. বিজ্ঞাপনের কিউপয়েন্টের জন্য শিডিউল করার স্ট্র্যাটেজি। সব দর্শকদের জন্য একই সাথে কিউপয়েন্ট যোগ করা যেতে পারে অথবা কিউপয়েন্টের সময়সীমা দর্শক থেকে দর্শক আলাদা হতে পারে। পরবর্তী কৌশলটি YouTube-কে আরও বেশি হারে কিউপয়েন্ট শিডিউল করতে দেয়, যার ফলে দর্শকরা কিউপয়েন্ট পাওয়ার জন্য উপযুক্ত হলে তা পেয়ে যান।
    2. মিড-রোল বিজ্ঞাপন বিরতির মধ্যে সময়ের ব্যবধান।

এই ফিচার কাজ করার জন্য ডকুমেন্টেশনে নিম্নলিখিত API পরিবর্তন করা হয়েছে:

  • liveBroadcast রিসোর্সের monetizationDetails অবজেক্টে মিডরোল চালু করা এবং অটোমেটেড বিজ্ঞাপন কনফিগারেশনের ফিল্ড থাকে।
  • মিড-রোল বিজ্ঞাপন চালু বা বন্ধ করতে update পদ্ধতি ব্যবহার করা যেতে পারে। লাইভ ব্রডকাস্টের জন্য অটোমেটিক বিজ্ঞাপন সেট-আপ করতেও সেই পদ্ধতি ব্যবহার করা যেতে পারে। ডকুমেন্টেশন লাইভ ব্রডকাস্টের জন্য মনিটাইজেশন ও অটোমেটিক বিজ্ঞাপন সেটিংস আপডেট করার সময় হতে পারে এমন একাধিক নতুন সমস্যার কথা উল্লেখ করে।

১৪ জুলাই, ২০২৫

streamList API-এর ব্যবহার সম্পর্কে নির্দেশিকা প্রদান করতে liveChatMessages.streamList পদ্ধতির বিবরণ আপডেট করা হয়েছে।

৯ অক্টোবর, ২০২৩

শুধুমাত্র রেফারেন্সের জন্য, এই CSV ফাইলে কোন স্টিকার আইডি কোন Super Sticker-এর সাথে সম্পর্কিত তা আপনি খুঁজে পেতে পারেন। এই তথ্য দেখানোর জন্য liveChatMessage রিসোর্সের snippet.superStickerDetails.superStickerMetadata.stickerId প্রপার্টি এবং superChatEvent রিসোর্সের snippet.superStickerMetadata.stickerId প্রপার্টি, দুটিরই সংজ্ঞা আপডেট করা হয়েছে।

১৫ সেপ্টেম্বর, ২০২৩

API এখন লাইভ ব্রডকাস্টে বিজ্ঞাপন যোগ করার একটি নতুন পদ্ধতি সাপোর্ট করে। এর পাশাপাশি liveCuepoints, যা আপনাকে ব্রডকাস্টে ম্যানুয়ালি বিজ্ঞাপন বিরতি যোগ করতে দেয়, YouTube এখন এমন একটি ফিচার কাজ করে যা নির্দিষ্ট সময় অন্তর ব্রডকাস্টে অটোমেটিক মিড-রোল বিজ্ঞাপন বিরতি যোগ করে।

ব্রডকাস্টের মালিক অটোমেটেড বিজ্ঞাপন চালু করলে, তিনি বিজ্ঞাপনের আচরণের নিম্নলিখিত দিকগুলি দেখতে পাবেন:

  • মিড-রোল বিজ্ঞাপন বিরতির মধ্যে সময়ের ব্যবধান।
  • বিজ্ঞাপন কিউপয়েন্টের জন্য শিডিউল করার স্ট্র্যাটেজি। সব দর্শকদের জন্য একই সাথে কিউপয়েন্ট যোগ করা যেতে পারে অথবা কিউপয়েন্টের সময়সীমা দর্শক থেকে দর্শক আলাদা হতে পারে। পরের স্ট্র্যাটেজি YouTube-কে আরও বেশি হারে কিউপয়েন্ট শিডিউল করতে দেয়, যার ফলে দর্শকরা উপযুক্ত হলে কিউপয়েন্ট পান।
  • একটি সময়কাল যার মধ্যে মিডরোল বিজ্ঞাপন দেখানো হয় না; এই ফিচারের জন্য, ব্রডকাস্টের মালিক নির্দিষ্ট করেন যে একটি নির্দিষ্ট সময় পর্যন্ত মিডরোল বিজ্ঞাপন যোগ করা পজ করা হয়েছে।

এই ফিচার কাজ করার জন্য ডকুমেন্টেশনে নিম্নলিখিত API পরিবর্তন করা হয়েছে:

  • liveBroadcast রিসোর্সে এখন একটি monetizationDetails অবজেক্ট রয়েছে। অবজেক্টের ফিল্ড থেকে বোঝা যায় যে ব্রডকাস্টের জন্য অটোমেটিক বিজ্ঞাপন ইনসার্ট করার সুবিধা চালু করা আছে কিনা এবং শিডিউল করা কিউপয়েন্টের জন্য অতিরিক্ত তথ্য নির্দিষ্ট করে।
  • liveBroadcast.list পদ্ধতির part প্যারামিটার monetizationDetails ভ্যালু সমর্থন করে।
  • লাইভ ব্রডকাস্টের জন্য নির্দিষ্ট সময়সীমা পর্যন্ত মিড-রোল বিজ্ঞাপন যোগ করা পজ করতে update পদ্ধতি ব্যবহার করা যেতে পারে। এছাড়াও, লাইভ সম্প্রচারের জন্য মনিটাইজেশনের বিবরণ আপডেট করার সময় যেসব সমস্যা হতে পারে, ডকুমেন্টেশন এখন সেগুলিও শনাক্ত করে।

১ আগস্ট, ২০২৩

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • liveBroadcasts.update পদ্ধতিতে এইসব ফিল্ডের জন্য আর ভ্যালু উল্লেখ করতে হয় না:

    • snippet.title
    • status.privacyStatus

    অনুরোধ থেকে এইসব ফিল্ড বাদ দিলে সেগুলি অপরিবর্তিত থাকবে।

১ নভেম্বর, ২০২২

  • নতুন liveBroadcasts.cuepoint পদ্ধতি YouTube-এ লাইভ ব্রডকাস্ট চালানো যেকোনও চ্যানেলের মালিককে সেই ব্রডকাস্টে কিউপয়েন্ট যোগ করতে দেয়, যা বিজ্ঞাপন বিরতি ট্রিগার করতে পারে। এই পদ্ধতিটি liveCuepoints.insert পদ্ধতিকে প্রতিস্থাপন করে, যা শুধুমাত্র YouTube কন্টেন্ট পার্টনারদের লাইভ ব্রডকাস্টে কিউপয়েন্ট যোগ করার অনুমতি দেয়।

    এই নতুন পদ্ধতির উপলভ্যতা দেখানোর জন্য একাধিক নির্দেশিকা আপডেট করা হয়েছে।

  • মনে রাখবেন: এটি বন্ধ করা সংক্রান্ত ঘোষণা।

    liveCuepoints.insert পদ্ধতি এখন অবচিত করা হয়েছে৷ ১ মে, ২০২৩ বা তার পরে liveCuepoints.insert পদ্ধতির জন্য সহায়তা সরিয়ে দেওয়া হবে। API ব্যবহারকারীদের উচিত তাদের অ্যাপ্লিকেশন আপডেট করা যাতে এর পরিবর্তে liveBroadcasts.cuepoint মেথড কল করা যায়।

  • liveBroadcasts.control পদ্ধতির ডকুমেন্টেশন সরিয়ে দেওয়া হয়েছে। সেপ্টেম্বর ২০২০-তে সেই পদ্ধতি বন্ধ করে দেওয়ার বিজ্ঞপ্তি পোস্ট করা হয়েছিল।

১ অক্টোবর, ২০২২

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি করা হয়েছে:

  • liveBroadcasts.update পদ্ধতিতে আর এই ফিল্ডের জন্য ভ্যালু নির্দিষ্ট করতে হয় না:

    • contentDetails.enableContentEncryption
    • contentDetails.enableDvr
    • contentDetails.enableEmbed
    • contentDetails.recordFromStart
    • contentDetails.startWithSlate

    অনুরোধ থেকে এইসব ফিল্ড বাদ দিলে সেগুলি অপরিবর্তিত থাকবে।

  • পুরনো হয়ে যাওয়া liveBroadcast ফিল্ডের জন্য ডকুমেন্টেশন সরিয়ে দেওয়া হয়েছে:

    • contentDetails.enableContentEncryption
    • contentDetails.startWithSlate

১ এপ্রিল, ২০২২

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি করা হয়েছে:

  • snippet.type প্রপার্টি এখন দুটি নতুন ভ্যালু সাপোর্ট করে:

    • membershipGiftingEvent
    • giftMembershipReceivedEvent
  • liveChatMessage রিসোর্সের নতুন snippet.membershipGiftingDetails প্রপার্টি ও তার চাইল্ডে মেম্বারশিপ গিফটিং ইভেন্ট সংক্রান্ত তথ্য থাকে। একইভাবে, নতুন snippet.giftMembershipReceivedDetails প্রপার্টি ও তার চাইল্ড প্রপার্টিতে গিফ্ট মেম্বারশিপ প্রাপ্তি ইভেন্ট সংক্রান্ত তথ্য থাকে।

১৫ সেপ্টেম্বর, ২০২১

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • snippet.type প্রপার্টিতে এখন দুটি নতুন ভ্যালু কাজ করে:

    • newSponsorEvent
    • memberMilestoneChatEvent
  • liveChatMessage রিসোর্সের snippet.memberMilestoneChatDetails নতুন প্রপার্টি ও তার চাইল্ডে মেম্বার মাইলস্টোন চ্যাট ইভেন্ট সংক্রান্ত তথ্য থাকে। একইভাবে, নতুন snippet.newSponsorDetails প্রপার্টি এবং এর চাইল্ডে নতুন স্পনসর ইভেন্ট সম্পর্কে তথ্য থাকে।

১ ডিসেম্বর, ২০২০

API-এর liveBroadcasts.transition পদ্ধতি একটি নতুন 403 (Forbidden) সমস্যাকে সমর্থন করে, যা নির্দেশ করে যে ব্যবহারকারী একটি নির্দিষ্ট সময়সীমার মধ্যে অনেক বেশি অনুরোধ পাঠিয়েছেন। সমস্যার কারণ হল userRequestsExceedRateLimit।

২১ সেপ্টেম্বর, ২০২০

  • liveBroadcast রিসোর্সের status.madeForKids প্রপার্টির সংজ্ঞা আপডেট করে এটি স্পষ্ট করা হয়েছে যে প্রপার্টিটি শুধু রিড-অনলি। এর ফলে API ফাংশনালিটিতে কোনও পরিবর্তন হয় না।

    কোনও লাইভ ব্রডকাস্টকে বাচ্চাদের জন্য তৈরি হিসেবে চিহ্নিত করতে, ব্রডকাস্ট তৈরি করার জন্য liveBroadcasts.insert মেথড কল করার সময় status.selfDeclaredMadeForKids প্রপার্টিকে true হিসেবে সেট করুন।

  • মনে রাখবেন: এই পরিবর্তনের মধ্যে একটি বন্ধ করার ঘোষণা এবং আগে বন্ধ করার ঘোষণার একটি আপডেট অন্তর্ভুক্ত রয়েছে।

    liveBroadcasts.control পদ্ধতি ১ অক্টোবর ২০২০ বা তার পরে বন্ধ করে দেওয়া হবে। তারিখের পরে, এই মেথডে করা সব কল একটি নিষিদ্ধ (৪০৩) এরর রিটার্ন করবে এবং মেথডটি পরে সম্পূর্ণভাবে সরিয়ে দেওয়া হবে। YouTube-এর ইনজেশন সার্ভারে পাঠানো ভিডিওতে ওভারলে যোগ করে ক্লায়েন্টরা এখনও নিজেদের স্লেটিং প্রয়োগ করতে পারবেন।

    ১৬ এপ্রিল ২০২০-তে করা অবচয়ন সংক্রান্ত ঘোষণা অনুযায়ী অবচয়নের তারিখ ১ সেপ্টেম্বর ২০২০-তে নির্ধারিত করা হয়েছিল, যা পিছিয়ে এখন ১ অক্টোবর ২০২০ বা তার পরে করা হয়েছে। তাই, বন্ধ করার ঘোষণায় অন্তর্ভুক্ত ফিচার এবং liveBroadcasts.control পদ্ধতি একই সময়ে বন্ধ করা হবে।

১৭ জুলাই, ২০২০

মনে রাখবেন: এটি আগে বন্ধ করে দেওয়া সংক্রান্ত ঘোষণার আপডেট।

liveStream রিসোর্সের cdn.format ফিল্ড, যা এপ্রিল ২০১৬-এ বন্ধ করে দেওয়া হয়েছে, ১৭ আগস্ট, ২০২০ থেকে আর কাজ করবে না। সেই তারিখ থেকে, যেসব অনুরোধে এখনও ওই ফিল্ড ব্যবহার করা হচ্ছে সেগুলি কাজ করবে না।

আপনার কোড এখনও cdn.format ফিল্ড ব্যবহার করলে, cdn.frameRate এবং cdn.resolution প্রপার্টি ব্যবহার করে ফ্রেম রেট ও রেজোলিউশন আলাদাভাবে উল্লেখ করার জন্য এটি আপডেট করতে হবে।

৬ জুলাই, ২০২০

HLS-এর মাধ্যমে লাইভ YouTube কন্টেন্ট ডেলিভার করা গাইডটি কিছু পরিবর্তন সহ আপডেট করা হয়েছে:

  • মিডিয়া সেগমেন্টের জন্য সাজেস্ট করা সময়সীমা আপডেট করে এক থেকে চার সেকেন্ড করা হয়েছে।
  • নতুন বিভাগে কীভাবে YouTube Creator Studio থেকে HLS ইনজেশন URL পাবেন তা ব্যাখ্যা করা হয়েছে।
  • file প্যারামিটারের ভ্যালু ফর্ম্যাট করার নির্দেশাবলী নতুন HLS ইনজেশন URL সম্পূর্ণ করা বিভাগে সরানো হয়েছে। HLS ইনজেশন URL YouTube API বা YouTube Creator Studio থেকে পাওয়া হোক না কেন, এই নির্দেশাবলী প্রযোজ্য হবে।

এছাড়াও, নতুন ইনজেশন প্রোটোকল তুলনা YouTube-এর সাথে কাজ করে এমন ইনজেশন প্রোটোকল, প্রতিটি প্রোটোকলের সাথে কাজ করে এমন কোডেক এবং প্রতিটি প্রোটোকলের উপযুক্ত ব্যবহারের কেস সম্পর্কে অতিরিক্ত তথ্য তালিকাভুক্ত করে।

১৬ এপ্রিল, ২০২০

এই আপডেটে একটি নতুন প্রপার্টি ও একটি বাতিল করার ঘোষণা অন্তর্ভুক্ত রয়েছে:

  • liveBroadcast রিসোর্স এখন contentDetails.enableAutoStop প্রপার্টিতে কাজ করে। চ্যানেলের মালিক বাউন্ড ভিডিও স্ট্রিমে ভিডিও স্ট্রিম করা বন্ধ করার পরে, ব্রডকাস্ট অটোমেটিক এক মিনিটের মধ্যে বন্ধ হয়ে যাওয়া উচিত কিনা তা প্রপার্টি থেকে বোঝা যায়।

    ব্রডকাস্টের মেয়াদ ডকুমেন্টটি আপডেট করা হয়েছে। এর মাধ্যমে, আপনি যদি contentDetails.enableAutoStart বা contentDetails.enableAutoStop প্রপার্টিকে true হিসেবে সেট করেন, তাহলে কীভাবে YouTube-এ লাইভ ইভেন্ট তৈরি ও ম্যানেজ করার ধাপে-ধাপে প্রসেস পরিবর্তিত হয় তা ব্যাখ্যা করা হয়েছে।

  • মনে রাখবেন: এটি বন্ধ হয়ে যাওয়া সংক্রান্ত ঘোষণা। এই পরিবর্তনগুলি ১ সেপ্টেম্বর, ২০২০ বা তার পরে কার্যকর হবে। যে তারিখে পরিবর্তনগুলি কার্যকর হবে, সেটি নিচে বাতিল করার তারিখ হিসেবে উল্লেখ করা হয়েছে।

    এই আপডেটে সম্ভাব্য ব্রেকিং পরিবর্তন সম্পর্কে ব্যাখ্যা করা হয়েছে। এটি API ক্লায়েন্ট অ্যাপ্লিকেশনকে প্রভাবিত করে যা YouTube-এ লাইভ কন্টেন্ট স্ট্রিম করার জন্য চ্যানেলের ডিফল্ট liveStream এবং liveBroadcast রিসোর্স ব্যবহার করে। নির্দিষ্টভাবে, পারসিস্টেন্ট ব্রডকাস্ট ও স্ট্রিমের সাথে যুক্ত ব্রডকাস্ট আইডি ও স্ট্রিম আইডি ব্যবহার করে আর নতুন ব্রডকাস্ট শুরু করা যাবে না।

    নিম্নলিখিতগুলির মধ্যে কোনওটি সত্যি হলে আপনার আবেদন প্রভাবিত হবে:

    • এটি liveBroadcast রিসোর্সের isDefaultBroadcast প্রপার্টির ভ্যালু চেক করে। বন্ধ হয়ে যাওয়ার তারিখের পরে এই প্রপার্টি আর ফিরিয়ে আনা যাবে না।
    • এটি liveStream রিসোর্সের isDefaultStream প্রপার্টির ভ্যালু চেক করে। বন্ধ হয়ে যাওয়ার তারিখের পরে এই প্রপার্টি আর ফিরিয়ে আনা যাবে না।
    • এটি liveBroadcasts.list পদ্ধতিকে কল করে এবং broadcastType প্যারামিটারের ভ্যালু persistent বা all-এ সেট করে। এইসব পরিবর্তনের অংশ হিসেবে এই প্যারামিটারটি পুরনো হয়ে যাবে। বন্ধ হয়ে যাওয়ার তারিখ থেকে:
      • broadcastType প্যারামিটারের মান persistent হলে, liveBroadcasts.list পদ্ধতি কোনও ফলাফল দেখাবে না।
      • broadcastType প্যারামিটারের ভ্যালু all হলে, liveBroadcasts.list পদ্ধতি সেই সময়ের আগে থেকে থাকা পারসিস্টেন্ট ব্রডকাস্ট ফেরত দেবে না।

    ব্যাকগ্রাউন্ড হিসেবে, গত কয়েক বছর ধরে, কোনও চ্যানেলে লাইভ স্ট্রিমিং চালু করা হলে, YouTube অটোমেটিক সেই চ্যানেলের জন্য একটি ডিফল্ট স্ট্রিম ও ডিফল্ট ব্রডকাস্ট তৈরি করেছে। ডিফল্ট স্ট্রিম অনির্দিষ্টকালের জন্য ছিল, এটির সাথে কোনও শুরু বা শেষ হওয়ার সময় যুক্ত ছিল না এবং এটি মুছে ফেলা যেত না। একইভাবে, ডিফল্ট ব্রডকাস্টকে পারসিস্টেন্ট হিসেবে বিবেচনা করা হত। এটি সবসময়ই ছিল এবং কোনও নির্দিষ্ট ইভেন্টের সাথে যুক্ত ছিল না।

    বন্ধ হয়ে যাওয়ার তারিখ থেকে:

    • YouTube আর ডিফল্ট স্ট্রিম ও ব্রডকাস্ট তৈরি করবে না। ডিফল্ট রিসোর্সের উপর নির্ভর না করে, API ক্লায়েন্টদের liveBroadcast ও liveStream রিসোর্স তৈরি ও ম্যানেজ করতে এবং সেইসব রিসোর্সকে একসাথে বাইন্ড করতে হবে।
    • কোনও চ্যানেলের ডিফল্ট ব্রডকাস্ট এবং ডিফল্ট স্ট্রিম যদি অ্যাক্টিভভাবে লাইভ থাকে, অর্থাৎ, অবচয় কার্যকর হওয়ার সময় চ্যানেলটি লাইভ ব্রডকাস্টের জন্য সেগুলি ব্যবহার করে, তাহলে চলমান ব্রডকাস্ট প্রভাবিত হবে না। তবে, সেই সম্প্রচার শেষ হয়ে যাওয়ার পরে, চ্যানেলটি আর ডিফল্ট সম্প্রচার ও ডিফল্ট স্ট্রিম ব্যবহার করতে পারবে না।
    • কোনও চ্যানেলের ডিফল্ট ব্রডকাস্ট ও ডিফল্ট স্ট্রিম অ্যাক্টিভভাবে লাইভ না থাকলে, বন্ধ করার প্রসেস কার্যকর হওয়ার পরে, YouTube সেইসব রিসোর্স ব্যবহার করে ভিডিও ব্রডকাস্ট করার চেষ্টা উপেক্ষা করবে।

    আপনার অ্যাপ্লিকেশন প্রভাবিত হলে, নিম্নলিখিত ডকুমেন্টগুলি দেখুন, যা আপনাকে আপনার অ্যাপ্লিকেশন আপডেট করতে সাহায্য করবে যাতে এই পরিবর্তনের পরেও এটি প্রত্যাশা অনুযায়ী কাজ করে:

    • একটি নতুন মাইগ্রেশন গাইড সেইসব ধাপ ব্যাখ্যা করার চেষ্টা করে যেগুলি ডেভেলপারদের API ক্লায়েন্টে সমাধান করতে হতে পারে যেগুলি বর্তমানে ডিফল্ট ব্রডকাস্ট ও স্ট্রিম ব্যবহার করে।
    • ব্রডকাস্টের লাইফ গাইড আপনাকে ধাপে ধাপে YouTube-এ লাইভ ইভেন্ট তৈরি ও ম্যানেজ করার পদ্ধতি শেখায়। প্রতিটি ধাপে API কল বা অন্যান্য জিনিস ব্যাখ্যা করা হয়েছে যা আপনাকে নির্দিষ্ট অ্যাকশন সম্পূর্ণ করার জন্য করতে হবে এবং YouTube যখন ডিফল্ট স্ট্রিম ও ব্রডকাস্টে সহায়তা করা বন্ধ করে দেবে তখন আপনার অ্যাপ্লিকেশনকে সেই প্রসেস অনুসরণ করতে হবে।

৩১ মার্চ, ২০২০

মনে রাখবেন: এটি বন্ধ করা সংক্রান্ত ঘোষণা।

sponsor রিসোর্স এবং sponsors.list পদ্ধতি বন্ধ করে দেওয়া হয়েছে এবং member রিসোর্স এবং members.list পদ্ধতি দিয়ে প্রতিস্থাপন করা হয়েছে।

৩০ সেপ্টেম্বর, ২০২০ বা তার পরে sponsors.list পদ্ধতি আর কাজ করবে না। API ক্লায়েন্টদের sponsors.list পদ্ধতিতে কল আপডেট করতে হবে যাতে এর পরিবর্তে members.list পদ্ধতি ব্যবহার করা যায়। নতুন রিসোর্স সম্পর্কে আরও তথ্য পেতে YouTube Data API-এর রিভিশন ইতিহাস দেখুন।

১১ মার্চ, ২০২০

HLS-এর মাধ্যমে YouTube-এ লাইভ কন্টেন্ট ডেলিভার করা নির্দেশিকার ইনজেশন এন্ডপয়েন্ট বিভাগটি আপডেট করা হয়েছে। এর ফলে, প্রাইমারি ও ব্যাক-আপ ইনজেশন URL তৈরি করার সময় এনকোডারকে file= প্যারামিটার ভ্যালু সম্পূর্ণ করার জন্য যে প্রসেস ব্যবহার করতে হবে, তা আরও স্পষ্ট করে বোঝানো যায়।

৪ ফেব্রুয়ারি, ২০২০

HLS-এর মাধ্যমে লাইভ YouTube কন্টেন্ট ডেলিভার করা গাইড আপডেট করা হয়েছে। এতে উল্লেখ করা হয়েছে যে DELETE অনুরোধ ঐচ্ছিক এবং YouTube-এর HLS এন্ডপয়েন্ট সেগুলি উপেক্ষা করে। পারফর্ম্যান্সের কারণে, YouTube ক্লায়েন্টদের DELETE অনুরোধ না পাঠানোর সাজেশন দেয়।

১০ জানুয়ারি, ২০২০

API এখন বাচ্চাদের জন্য তৈরি কন্টেন্ট শনাক্ত করতে পারে, যেটিকে YouTube "বাচ্চাদের জন্য তৈরি" বলে। YouTube সহায়তা কেন্দ্র থেকে "বাচ্চাদের জন্য তৈরি করা" কন্টেন্ট সম্পর্কে আরও জানুন।

  • liveBroadcast রিসোর্স কন্টেন্ট ক্রিয়েটর ও দর্শকদের "বাচ্চাদের জন্য তৈরি করা কন্টেন্ট" শনাক্ত করতে সাহায্য করার জন্য দুটি নতুন প্রপার্টি কাজ করে:
    • selfDeclaredMadeForKids প্রপার্টি কন্টেন্ট ক্রিয়েটরদের লাইভ ব্রডকাস্ট বাচ্চাদের জন্য তৈরি কন্টেন্ট কিনা তা নির্দিষ্ট করার সুবিধা দেয়। এই প্রপার্টি সেট করা যেতে পারে যখন liveBroadcasts.insert পদ্ধতির মাধ্যমে ব্রডকাস্ট তৈরি করা হয়। মনে রাখবেন, এই প্রপার্টি শুধুমাত্র API উত্তরে অন্তর্ভুক্ত করা হয় যাতে liveBroadcast রিসোর্স থাকে যদি চ্যানেল মালিক API অনুরোধ অনুমোদন করে থাকেন।
    • madeForKids প্রপার্টি কোনও API ব্যবহারকারীকে ব্রডকাস্টের "বাচ্চাদের জন্য তৈরি করা" স্ট্যাটাস রিট্রিভ করতে দেয়। যেমন, selfDeclaredMadeForKids প্রপার্টির ভ্যালুর ভিত্তিতে স্ট্যাটাস নির্ধারণ করা হতে পারে। আপনার চ্যানেল, ভিডিও বা ব্রডকাস্টের জন্য দর্শক সেট করার ব্যাপারে আরও তথ্য পেতে YouTube সহায়তা কেন্দ্র দেখুন।
  • YouTube Data API-তে, channel রিসোর্স নতুন selfDeclaredMadeForKids এবং madeForKids প্রপার্টিতেও কাজ করে।

এছাড়াও, আমরা YouTube API পরিষেবার শর্তাবলী ও ডেভেলপার নীতি আপডেট করেছি। আরও তথ্যের জন্য YouTube API পরিষেবার শর্তাবলী - রিভিশন ইতিহাস দেখুন। YouTube API পরিষেবার শর্তাবলী এবং ডেভেলপার নীতিতে করা পরিবর্তন ১০ জানুয়ারি, ২০২০ প্যাসিফিক সময় থেকে কার্যকর হবে।

২০ আগস্ট, ২০১৯

HLS-এর মাধ্যমে লাইভ YouTube কন্টেন্ট ডেলিভার করা গাইডের প্রয়োজনীয়তা বিভাগে দুটি পরিবর্তন করা হয়েছে:

  • এতে বলা হয়েছে যে প্রতিটি মিডিয়া প্লেলিস্টে স্বীকৃতিপ্রাপ্ত সেগমেন্ট ও বকেয়া সেগমেন্ট অন্তর্ভুক্ত করা পেশাদার পদ্ধতি। সার্ভার সাইডে কোনও মিডিয়া প্লেলিস্ট হারিয়ে গেলে, এই প্র্যাক্টিসের ফলে কোনও সেগমেন্ট বাদ পড়ার সম্ভাবনা কমে যায়। যেমন, আপনি প্রতিটি মিডিয়া প্লেলিস্টে সর্বাধিক দুটি স্বীকৃত সেগমেন্ট ও সর্বাধিক পাঁচটি বকেয়া সেগমেন্ট যোগ করতে পারেন।
  • এখন প্রতিটি মিডিয়া সেগমেন্টের জন্য মিডিয়া প্লেলিস্ট পাঠানো বাধ্যতামূলক। এর ফলে, মিডিয়া প্লেলিস্ট হারিয়ে গেলে, সার্ভার দ্রুত তা ফিরিয়ে আনতে পারে। এই পদ্ধতিটি আগে একটি সাজেশন হিসেবে তালিকাভুক্ত করা হয়েছিল।

২৮ জুন, ২০১৯

YouTube-এ এখন HLS ইনজেশন কাজ করে। সেই অনুযায়ী, liveStream রিসোর্সের ingestionType প্রপার্টি, HLS ব্যবহার করে YouTube-এ ইনজেস্ট করা স্ট্রিম শনাক্ত করতে নতুন ভ্যালু hls সাপোর্ট করে।

নতুন HLS-এর মাধ্যমে লাইভ YouTube কন্টেন্ট ডেলিভার করা সংক্রান্ত নির্দেশিকা থেকে এনকোডার ব্যবহার করে YouTube-এ লাইভ কন্টেন্ট স্ট্রিম করার জন্য HLS ব্যবহার করার নির্দেশিকা পাওয়া যায়। এনকোডার ভেন্ডরদের প্রোডাক্টে HLS ডেলিভারি সাপোর্ট যোগ করতে সাহায্য করার জন্য এই নির্দেশিকা তৈরি করা হয়েছে।

৪ এপ্রিল, ২০১৯

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • প্রতিটি পদ্ধতির সাধারণ ব্যবহারের ক্ষেত্রগুলি আরও ভালভাবে ব্যাখ্যা করতে এবং API এক্সপ্লোরার উইজেটের মাধ্যমে ডায়নামিক, উচ্চ-মানের কোড স্যাম্পেল প্রদান করতে API রেফারেন্স ডকুমেন্টেশন আপডেট করা হয়েছে। উদাহরণের জন্য liveBroadcasts.list পদ্ধতির ডকুমেন্টেশন দেখুন। API পদ্ধতি বর্ণনা করে এমন পৃষ্ঠায় এখন দুটি নতুন এলিমেন্ট আছে:

    • APIs Explorer উইজেট আপনাকে অনুমোদনের স্কোপ বেছে নিতে, স্যাম্পেল প্যারামিটার ও প্রপার্টির ভ্যালু লিখতে এবং তারপর আসল API অনুরোধ পাঠাতে ও আসল API উত্তর দেখতে দেয়। এছাড়াও, উইজেট একটি ফুলস্ক্রিন ভিউ অফার করে যা সম্পূর্ণ কোড স্যাম্পেল দেখায়। আপনি যেসব স্কোপ ও ভ্যালু লিখেছেন সেগুলি ব্যবহার করার জন্য এটি ডায়নামিক আপডেট হয়।

    • সাধারণ ব্যবহারের ক্ষেত্রে বিভাগে, পৃষ্ঠায় ব্যাখ্যা করা পদ্ধতির এক বা একাধিক সাধারণ ব্যবহারের ক্ষেত্রে বর্ণনা করা হয়েছে। যেমন, আপনি liveBroadcasts.list মেথড কল করে কোনও নির্দিষ্ট ব্রডকাস্ট সম্পর্কে ডেটা অথবা বর্তমান ব্যবহারকারীর ব্রডকাস্ট সম্পর্কে ডেটা পেতে পারেন।

      আপনার ব্যবহারের ক্ষেত্রে স্যাম্পেল ভ্যালু সহ APIs Explorer পপুলেট করতে বা আগে থেকে পপুলেট করা সেইসব ভ্যালু সহ ফুলস্ক্রিন APIs Explorer খুলতে আপনি সেই বিভাগের লিঙ্ক ব্যবহার করতে পারবেন। এইসব পরিবর্তনের উদ্দেশ্য হল, আপনার নিজের অ্যাপ্লিকেশনে যে ব্যবহারিক কেস প্রয়োগ করার চেষ্টা করছেন, তার সাথে সরাসরি প্রযোজ্য কোড স্যাম্পেলগুলি যাতে আপনি আরও সহজে দেখতে পান তা নিশ্চিত করা।

    বর্তমানে Java, JavaScript, PHP, Python ও curl-এর জন্য কোডের নমুনা উপলভ্য।

  • কোড স্যাম্পেল পৃষ্ঠাতেও একটি নতুন UI আছে যা উপরে বর্ণিত সব ফিচার অফার করে। সেই টুল ব্যবহার করে, আপনি বিভিন্ন পদ্ধতির জন্য ব্যবহারের ক্ষেত্র এক্সপ্লোর করতে, API এক্সপ্লোরারে ভ্যালু লোড করতে এবং Java, JavaScript, PHP ও Python-এ কোড স্যাম্পেল পেতে ফুলস্ক্রিন API এক্সপ্লোরার খুলতে পারবেন।

    এই পরিবর্তনের সাথে সাথে, Java, PHP ও Python-এর জন্য উপলভ্য কোড স্যাম্পেল আগে যে পৃষ্ঠায় তালিকাভুক্ত করা ছিল, সেটি সরিয়ে দেওয়া হয়েছে।

২৫ ফেব্রুয়ারি, ২০১৯

liveChatMessage এবং superChatEvent রিসোর্সের ডকুমেন্টেশন আপডেট করা হয়েছে যাতে এটি দেখানো যায় যে দুটি রিসোর্সেই এখন Super Stickers সংক্রান্ত তথ্য থাকতে পারে। Super Stickers হল এক ধরনের Super Chat মেসেজ যা একটি ছবি দেখায়। অন্যান্য Super Chat-এর মতো, YouTube লাইভ স্ট্রিম চলাকালীন কোনও অনুরাগী Super Sticker মেসেজ কিনতে পারেন।

  • liveChatMessage রিসোর্সে, snippet.type প্রপার্টি এখন superStickerEvent হিসেবে সেট করা হয়েছে, এর মাধ্যমে বোঝানো হয়েছে যে রিসোর্সে Super Sticker সংক্রান্ত তথ্য আছে। সেই ক্ষেত্রে, রিসোর্সে snippet.superStickerDetails অবজেক্টও থাকে, যার মধ্যে Super Sticker সম্পর্কে অতিরিক্ত তথ্য থাকে।
  • superChatEvent রিসোর্সে, বুলিয়ান snippet.isSuperStickerEvent থেকে বোঝা যায় যে Super Chat মেসেজটি Super Sticker কিনা। যদি তাই হয়, তাহলে snippet.superStickerMetadata অবজেক্টে Super Sticker সম্পর্কে অতিরিক্ত বিবরণ থাকে।

৫ এপ্রিল, ২০১৮

superChatEvents.list পদ্ধতির বিবরণে এই তথ্য আপডেট করা হয়েছে যে API উত্তরে আর fanFundingEvents নেই, যা ২০১৭ সালের শুরুতে বন্ধ করে দেওয়া হয়েছে।

৩ এপ্রিল, ২০১৭

নতুন Java কোড স্যাম্পেল যোগ করা হয়েছে যা দেখায় যে কীভাবে লাইভ চ্যাট মেসেজ তালিকাভুক্ত, যোগ এবং মুছে ফেলতে হয়। স্যাম্পেলগুলি নিম্নলিখিত পদ্ধতিগুলি কল করে:

১৩ ফেব্রুয়ারি, ২০১৭

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি করা হয়েছে:

  • আগে থেকে থাকা রিসোর্স ও পদ্ধতিতে আপডেট

    • liveCuepoints.insert পদ্ধতিটি আপডেট করা হয়েছে যাতে এটি দেখাতে পারে যে বর্তমানে onBehalfOfContentOwner প্যারামিটার প্রয়োজন। এছাড়াও, পদ্ধতির বিবরণে এটি উল্লেখ করার জন্য আপডেট করা হয়েছে যে সেই পদ্ধতিতে কল করার জন্য YouTube কন্টেন্টের মালিকের সাথে যুক্ত অ্যাকাউন্ট দ্বারা অনুমোদিত হতে হবে।

৯ ফেব্রুয়ারি, ২০১৭

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি করা হয়েছে:

  • আগে থেকে থাকা রিসোর্স ও পদ্ধতিতে আপডেট

    • superChatEvents.list পদ্ধতির নতুন hl প্যারামিটার আপনাকে নির্দিষ্ট করতে দেয় যে snippet.displayString প্রপার্টির ভ্যালু কোনও নির্দিষ্ট ভাষার কনভেনশন অনুযায়ী ফর্ম্যাট করা উচিত। সেই প্রপার্টির সংজ্ঞাটিও সেই অনুযায়ী আপডেট করা হয়েছে।

      i18nLanguages.list পদ্ধতির মাধ্যমে রিটার্ন করা তালিকায় অন্তর্ভুক্ত কোনও ভাষার কোড প্যারামিটারের মান হিসেবে থাকতে হবে। ডিফল্ট ভ্যালু হল en, যার অর্থ হল ডিফল্ট অ্যাকশন হল ডিসপ্লে স্ট্রিং এমনভাবে ফর্ম্যাট করা যাতে সেগুলি ইংরেজিতে ব্যবহার করা যায়। যেমন, ডিফল্ট হিসেবে, কোনও স্ট্রিং $1,00-এর পরিবর্তে $1.00 হিসেবে ফর্ম্যাট করা হয়।

১ ফেব্রুয়ারি, ২০১৭

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • নতুন রিসোর্স ও পদ্ধতি

    • নতুন superChatEvent রিসোর্স YouTube লাইভ স্ট্রিম চলাকালীন কোনও অনুরাগীর কেনা Super Chat মেসেজকে বোঝায়। YouTube লাইভ চ্যাট স্ট্রিমে, Super Chat দুটি উপায়ে অন্যান্য মেসেজের থেকে আলাদাভাবে দেখানো হয়:

      • Super Chat একটি রঙ দিয়ে হাইলাইট করা হয়।
      • Super Chats একটি নির্দিষ্ট সময়সীমার জন্য টিকারের মধ্যে পিন করা থাকে।

      Super Chat-এর রঙ, টিকারে এটি কতক্ষণ পিন করা থাকবে এবং মেসেজের সর্বাধিক দৈর্ঘ্য কত হবে, এই সবকিছুই ক্রয়ের অঙ্কের উপর নির্ভর করে। YouTube সহায়তা কেন্দ্রে Super Chat সম্পর্কে আরও তথ্য দেওয়া আছে।

      API-তে এমন একটি পদ্ধতি কাজ করে যা কোনও চ্যানেলের লাইভ স্ট্রিমের জন্য গত ৩০ দিনের Super Chat ইভেন্টের তালিকা তৈরি করে। এছাড়াও, এই পদ্ধতি চ্যানেলের শেষ লাইভ স্ট্রিম থেকে ফ্যান ফান্ডিং ইভেন্ট (fanFundingEvents) সম্পর্কিত ডেটা ফিরিয়ে দেয়।

  • আগে থেকে থাকা রিসোর্স ও পদ্ধতিতে আপডেট

    • snippet.type প্রপার্টি এখন superChatEvent ভ্যালু সাপোর্ট করে, যা থেকে বোঝা যায় যে রিসোর্সটি Super Chat-এর বর্ণনা দেয়।

      এছাড়াও, liveChatMessage রিসোর্সের' নতুন snippet.superChatDetails প্রপার্টি ও তার চাইল্ডে Super Chat ইভেন্ট সম্পর্কে তথ্য থাকে।

    • liveStream রিসোর্সের cdn.resolution প্রপার্টি এখন 2160p ভ্যালু সাপোর্ট করে।

  • নতুন ও আপডেট করা সমস্যা

    • API-তে নিম্নলিখিত নতুন সমস্যাগুলি কাজ করে:

      সমস্যার বিবরণ
      liveBroadcasts.insert, liveBroadcasts.update liveBroadcasts.insert এবং liveBroadcasts.update পদ্ধতি 400 (Bad Request) ত্রুটি দেখায় যা থেকে বোঝা যায় যে যোগ করা বা আপডেট করা liveBroadcast রিসোর্সে contentDetails.enableEmbed প্রপার্টি বা contentDetails.projection প্রপার্টির জন্য ভুল মান আছে। দুটি নতুন সমস্যার কারণ হল যথাক্রমে invalidEmbedSetting ও invalidProjection।

১২ জানুয়ারি, ২০১৭

মনে রাখবেন: এটি বন্ধ করা সংক্রান্ত ঘোষণা।

নতুন Super Chat ফিচার রিলিজ করার সাথে সাথে YouTube ফ্যান ফান্ডিং ফিচার বন্ধ করে দিয়েছে এবং ফ্যান ফান্ডিং API ২৮ ফেব্রুয়ারি, ২০১৭-এ বন্ধ করে দেওয়া হবে। সেই তারিখ অনুযায়ী:

১১ আগস্ট, ২০১৬

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • নতুন প্রকাশিত YouTube API পরিষেবার শর্তাবলী ("আপডেট করা শর্তাবলী"), YouTube Engineering and Developers Blog-এ বিস্তারিতভাবে আলোচনা করা হয়েছে, যা বর্তমান পরিষেবার শর্তাবলীতে একগুচ্ছ আপডেট প্রদান করে। ১০ ফেব্রুয়ারি, ২০১৭ থেকে কার্যকর হওয়া আপডেট করা শর্তাবলী ছাড়াও, এই আপডেটে এমন বেশ কিছু সহায়ক ডকুমেন্ট অন্তর্ভুক্ত রয়েছে যা ডেভেলপারদের মেনে চলতে হবে এমন নীতি ব্যাখ্যা করতে সাহায্য করবে।

    নতুন ডকুমেন্টের সম্পূর্ণ সেট আপডেট করা শর্তাবলীর জন্য রিভিশন ইতিহাসতে বর্ণনা করা হয়েছে। এছাড়াও, আপডেট করা শর্তাবলী বা সেইসব সহায়ক ডকুমেন্টে ভবিষ্যতে কোনও পরিবর্তন করা হলে, তা এই সংশোধনের ইতিহাসে ব্যাখ্যা করা হবে। আপনি সেই ডকুমেন্টের একটি লিঙ্ক থেকে সেই রিভিশন ইতিহাসে পরিবর্তনগুলি তালিকাভুক্ত করে একটি RSS ফিডে সাবস্ক্রাইব করতে পারেন।

২০ মে, ২০১৬

YouTube-এ এখন DASH ইনজেশন কাজ করে। সেই অনুযায়ী, liveStream রিসোর্সের ingestionType প্রপার্টি, DASH ব্যবহার করে YouTube-এ ইনজেস্ট করা স্ট্রিম শনাক্ত করার জন্য নতুন ভ্যালু dash কাজ করে।

নতুন DASH-এর মাধ্যমে YouTube-এ লাইভ কন্টেন্ট ডেলিভার করা গাইড, এনকোডার থেকে YouTube-এ লাইভ ডেটা স্ট্রিম করার জন্য DASH ডেলিভারি ফর্ম্যাট ব্যবহার করার ব্যাপারে নির্দেশাবলী প্রদান করে। এনকোডার ভেন্ডরদের প্রোডাক্টে DASH ডেলিভারি সাপোর্ট যোগ করতে সাহায্য করার জন্য এটি তৈরি করা হয়েছে।

১৮ এপ্রিল, ২০১৬

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • আগে থেকে থাকা রিসোর্স ও পদ্ধতিতে আপডেট

    • liveStream রিসোর্স আপডেট
      • YouTube এখন 1440p রেজোলিউশনের স্ট্রিমকে ৩০ বা ৬০ ফ্রেম প্রতি সেকেন্ডে সাপোর্ট করে।

        এছাড়াও, liveStream রিসোর্সে ইনবাউন্ড ভিডিও ডেটার ফ্রেম রেট ও রেজোলিউশন নির্দিষ্ট করার জন্য নতুন প্রপার্টি রয়েছে:

        প্রপার্টি
        cdn.frameRate ইনবাউন্ড ভিডিও ডেটার ফ্রেম রেট। সঠিক ভ্যালু হল 30fps ও 60fps।
        cdn.resolution ইনবাউন্ড ভিডিও ডেটার রেজোলিউশন। সঠিক প্রপার্টি ভ্যালু হল: 1440p, 1080p, 720p, 480p, 360p এবং 240p।
      • liveStream রিসোর্সের cdn.frameRate ও cdn.resolution প্রপার্টি চালু করার সাথে সাথে, রিসোর্সের cdn.format এখন বন্ধ করে দেওয়া হয়েছে। cdn.format প্রপার্টি একটি একক ভ্যালুতে রেজোলিউশন ও ফ্রেম রেট নির্দিষ্ট করে।

        আমরা আপনাকে নতুনভাবে কাজ করা ফিল্ডে ট্রানজিশন করতে উৎসাহ দিই। ইতিমধ্যে, cdn.format কাজ করা চালিয়ে যাবে। এছাড়াও, লাইভ স্ট্রিম যোগ করার অনুরোধ বর্তমানে সফল হয় যতক্ষণ না আপনি cdn.format প্রপার্টি অথবা cdn.frameRate এবং cdn.resolution প্রপার্টির জন্য মান নির্দিষ্ট করেন। আপনি যদি তিনটি প্রপার্টির জন্য ভ্যালু প্রদান করেন, তাহলে ভ্যালুগুলি যদি সামঞ্জস্যপূর্ণ না হয়, তাহলে API একটি সমস্যা দেখাতে পারে।

        মনে রাখবেন, cdn.format প্রপার্টিটি আর ব্যবহার করা না গেলেও, এখন এটি দুটি নতুন ভ্যালু, 1440p ও 1440p_hfr সাপোর্ট করে। এর ফলে API-এর মাধ্যমে ১৪৪০p স্ট্রিম ৩০ বা ৬০ ফ্রেম প্রতি সেকেন্ডে দেখানো যায়।

    • liveBroadcast রিসোর্স আপডেট
      • liveBroadcast রিসোর্সে নিম্নলিখিত নতুন প্রপার্টি রয়েছে:

        প্রপার্টি
        contentDetails.boundStreamLastUpdateTimeMs ব্রডকাস্টের contentDetails.boundStreamId প্রপার্টিতে উল্লেখ করা লাইভ স্ট্রিম শেষবার যে তারিখে ও সময়ে আপডেট করা হয়েছিল।
        contentDetails.projection ব্রডকাস্টের প্রোজেকশন ফর্ম্যাট। প্রপার্টির ডিফল্ট ভ্যালু হল rectangular। প্রপার্টির জন্য সঠিক ভ্যালু হল 360 ও rectangular।
      • liveBroadcast রিসোর্সের statistics.totalChatCount প্রপার্টির সংজ্ঞা আপডেট করা হয়েছে যাতে বোঝা যায় যে ব্রডকাস্টে অন্তত একটি চ্যাট মেসেজ থাকলে তবেই প্রপার্টির ভ্যালু দেখানো হয়।

    • 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 রিসোর্সে ভুল প্রপার্টি ভ্যালু শনাক্ত করে। নিচে দেওয়া তালিকায় সমস্যার কারণ ও তার সাথে যুক্ত প্রপার্টি উল্লেখ করা হয়েছে:
      liveStreams.insert liveStreams.insert পদ্ধতিতে দুটি নতুন 400 (Bad Request) সমস্যার সমাধান করা যায়, যার প্রত্যেকটি থেকে বোঝা যায় যে অনুরোধটি যে liveStream রিসোর্স ইনসার্ট করার চেষ্টা করেছে তাতে প্রয়োজনীয় ভ্যালু নেই। নিচে দেওয়া তালিকায় সমস্যার কারণ ও তার সাথে যুক্ত প্রপার্টি উল্লেখ করা হয়েছে:
      আরও নির্দিষ্টভাবে বলতে গেলে, আপনি যখন কোনও 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) সমস্যা দেখায়: সমস্যা সংক্রান্ত উত্তরে reason হল liveStreamModificationNotAllowed।

১৮ ডিসেম্বর, ২০১৫

ইউরোপীয় ইউনিয়নের (EU) আইন অনুসারে, ইউরোপীয় ইউনিয়নের ব্যবহারকারীদের নির্দিষ্ট কিছু ডিসক্লোজার দিতে হবে এবং তাদের থেকে সম্মতি নিতে হবে। তাই, ইউরোপীয় ইউনিয়নের ব্যবহারকারীদের ক্ষেত্রে আপনাকে ইউরোপীয় ইউনিয়নের ব্যবহারকারী সম্মতি নীতি মেনে চলতে হবে। আমাদের YouTube API পরিষেবার শর্তাবলীতে এই প্রয়োজনীয়তা সংক্রান্ত বিজ্ঞপ্তি যোগ করেছি।

১৭ ডিসেম্বর, ২০১৫

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • নতুন রিসোর্স ও পদ্ধতি

    • লাইভ ব্রডকাস্টের জন্য চ্যাট কার্যকারিতা সমর্থন করতে API-তে বেশ কিছু নতুন রিসোর্স কাজ করে। অ্যাক্টিভ লাইভ ব্রডকাস্ট চলাকালীন YouTube লাইভ চ্যাট ফাংশনালিটি সাপোর্ট করে এবং এইসব রিসোর্স ও তাদের পদ্ধতি চ্যাট মেসেজ ফিরিয়ে আনার পাশাপাশি চ্যাটের জন্য অ্যাডমিনিস্ট্রেটিভ ফাংশনও সাপোর্ট করে।

      রিসোর্স
      liveChatMessage এই রিসোর্স YouTube লাইভ চ্যাটের মেসেজকে উপস্থাপন করে। YouTube-এ টেক্সট মেসেজ ও ফ্যান ফান্ডিং ইভেন্ট সহ বিভিন্ন ধরনের মেসেজ দেখানো হয়। কিছু মেসেজের ধরন চ্যাটের একটি নির্দিষ্ট পর্যায় শনাক্ত করে, যেমন শুধুমাত্র স্পনসরদের জন্য চ্যাট শুরু বা শেষ হওয়া। API-তে লাইভ চ্যাট মেসেজ তালিকাভুক্ত করা, যোগ করা ও মুছে ফেলার পদ্ধতি কাজ করে।
      liveChatModerators এই রিসোর্স চ্যাট মডারেটরকে শনাক্ত করে। মডারেটররা কিছু প্রশাসনিক কাজ করতে পারেন, যেমন চ্যাট থেকে ব্যবহারকারীদের নিষিদ্ধ করা বা মেসেজ সরানো। API-তে লাইভ চ্যাট মডারেটরদের তালিকা তৈরি, যোগ ও মুছে ফেলার পদ্ধতি আছে।
      liveChatBans এই রিসোর্স এমন একজন ব্যবহারকারীকে শনাক্ত করে যাকে কোনও নির্দিষ্ট লাইভ চ্যাটে মেসেজ পোস্ট করা থেকে নিষিদ্ধ করা হয়েছে। সাময়িক বা স্থায়ীভাবে নিষিদ্ধ করা হতে পারে। API-তে লাইভ চ্যাট ব্যান যোগ করা ও মুছে দেওয়ার পদ্ধতি কাজ করে।
      fanFundingEvents এই রিসোর্স YouTube চ্যানেলে ফ্যান ফান্ডিং ইভেন্টকে দেখায়। 'ফ্যান ফান্ডিং' ফিচারের মাধ্যমে দর্শকরা স্বেচ্ছায় YouTube ক্রিয়েটরদের এককালীন আর্থিক সহায়তা করতে পারেন।

      API-এর fanFundingEvents.list পদ্ধতিতে চ্যানেলের ফ্যান ফান্ডিং ইভেন্ট তালিকাভুক্ত করা হয়। চ্যানেলের মালিকানাধীন লাইভ ব্রডকাস্ট চলাকালীন লাইভ চ্যাটের মাধ্যমে শুরু করা ফ্যান ফান্ডিং ইভেন্টগুলিও ব্রডকাস্টের লাইভ চ্যাটে একটি fanFundingEvent মেসেজ ট্রিগার করে।

      YouTube সহায়তা কেন্দ্র থেকে ফ্যান ফান্ডিং সম্পর্কে আরও জানুন।
      sponsors sponsor রিসোর্স YouTube চ্যানেলের স্পনসরকে শনাক্ত করে। স্পনসর কোনও চ্যানেলকে মাসিক ফি পেমেন্ট করেন। চ্যানেলের লাইভ চ্যাটে স্পনসরের মেসেজের পাশে একটি ব্যাজ দেখানো হয় এবং স্পনসররা শুধুমাত্র চ্যানেলের স্পনসরদের জন্য লাইভ চ্যাটে অংশগ্রহণ করতে পারেন, যদি সেগুলি হয়।

      API-এর sponsors.list মেথড কোনও চ্যানেলের স্পনসরদের তালিকা দেখায়। কোনও চ্যানেলের মালিকানাধীন লাইভ ব্রডকাস্ট চলাকালীন ব্যবহারকারী সেই চ্যানেল স্পনসর করার জন্য সাইন-আপ করলে, API ব্রডকাস্টের লাইভ চ্যাটে একটি newSponsorEvent মেসেজ যোগ করে।

      YouTube সহায়তা কেন্দ্র থেকে স্পনসরশিপ সম্পর্কে আরও জানুন।

  • আগে থেকে থাকা রিসোর্স ও পদ্ধতিতে আপডেট

    • liveBroadcast রিসোর্সে নিম্নলিখিত নতুন প্রপার্টি রয়েছে:

      প্রপার্টি
      snippet.liveChatId ব্রডকাস্টের YouTube লাইভ চ্যাটের আইডি। এই আইডির সাহায্যে, আপনি চ্যাট মেসেজ রিট্রিভ, ইনসার্ট বা মুছে ফেলার জন্য liveChatMessage রিসোর্সের পদ্ধতি ব্যবহার করতে পারবেন। এছাড়াও, আপনি চ্যাট মডারেটর যোগ করতে বা সরাতে, লাইভ চ্যাটে অংশগ্রহণ করা থেকে ব্যবহারকারীদের নিষিদ্ধ করতে বা আগে থেকে থাকা নিষেধাজ্ঞা সরাতে পারবেন।
      contentDetails.closedCaptionsType মনে রাখবেন: এই প্রপার্টি contentDetails.enableClosedCaptions প্রপার্টিকে প্রতিস্থাপন করে।

      এই প্রপার্টি থেকে বোঝা যায় যে আপনার ব্রডকাস্টের জন্য ক্লোজড ক্যাপশন চালু করা আছে কিনা এবং চালু করা থাকলে, আপনি কোন ধরনের ক্লোজড ক্যাপশন প্রদান করছেন:
      • closedCaptionsDisabled: লাইভ ব্রডকাস্টের জন্য ক্লোজড ক্যাপশন বন্ধ করা আছে।
      • closedCaptionsHttpPost: আপনি HTTP POST-এর মাধ্যমে আপনার লাইভ স্ট্রিমের সাথে যুক্ত ইনজেশন URL-এ ক্যাপশন পাঠাবেন।
      • closedCaptionsEmbedded: EIA-608 এবং/অথবা CEA-708 ফর্ম্যাট ব্যবহার করে ভিডিও স্ট্রিমে ক্যাপশন এনকোড করা হবে।
      contentDetails.enableClosedCaptions ১৭ ডিসেম্বর, ২০১৫ থেকে এই প্রপার্টি বন্ধ করে দেওয়া হয়েছে। পরিবর্তে, contentDetails.closedCaptionsType প্রপার্টি ব্যবহার করুন। যেসব API ক্লায়েন্ট আগে থেকেই এই প্রপার্টি ব্যবহার করছে:
      • প্রপার্টির ভ্যালু true-এ সেট করা মানে contentDetails.closedCaptionsType প্রপার্টিকে closedCaptionsHttpPost-এ সেট করা।
      • false-এ প্রপার্টির ভ্যালু সেট করা, closedCaptionsDisabled-এ contentDetails.closedCaptionsType প্রপার্টি সেট করার সমতুল্য।
    • liveBroadcasts.list পদ্ধতির নতুন broadcastType প্যারামিটার আপনাকে ইভেন্ট ব্রডকাস্ট, পারসিস্টেন্ট ব্রডকাস্ট বা সমস্ত ব্রডকাস্ট অন্তর্ভুক্ত করতে API উত্তর ফিল্টার করতে দেয়।

      একটি স্থায়ী ব্রডকাস্ট হল এমন একটি ব্রডকাস্ট যা সবসময় থাকে এবং কোনও নির্দিষ্ট ইভেন্টের সাথে যুক্ত থাকে না। বিশেষভাবে, কোনও চ্যানেলের ডিফল্ট ব্রডকাস্ট হল একটি পারসিস্টেন্ট ব্রডকাস্ট এবং এটি YouTube ক্রিয়েটর স্টুডিওতে লাইভ ড্যাশবোর্ড-এর মাধ্যমে অ্যাক্সেস করা যায়। চ্যানেলের অন্যান্য ব্রডকাস্ট হল ইভেন্ট ব্রডকাস্ট।

  • liveStream রিসোর্সের status.healthStatus.configurationIssues[].type ফিল্ডে নিম্নলিখিত নতুন স্বাস্থ্য সংক্রান্ত স্ট্যাটাস সংক্রান্ত সমস্যার রিপোর্ট করা হয়:

    সমস্যা
    audioTooManyChannels অডিওটিতে দুটির বেশি চ্যানেল আছে কিন্তু শুধুমাত্র একটি (মোনো) অথবা দুটি (স্টিরিও) চ্যানেল সমর্থিত। দয়া করে অডিও চ্যানেলগুলির সংখ্যা ঠিক করুন।
    frameRateHigh বর্তমান ফ্রেমরেট অনেক বেশি। ফ্রেমরেট %(framerate)s fps বা তার কম সেট করুন।
  • আগের ডকুমেন্টেশন আপডেট প্রকাশের তারিখ সংশোধন করা হয়েছে।

  • নতুন ও আপডেট করা সমস্যা

    • উপরে তালিকাভুক্ত নতুন রিসোর্সের জন্য সংজ্ঞায়িত সমস্যা ছাড়াও, API নিম্নলিখিত নতুন সমস্যাগুলি সমর্থন করে:

      সমস্যার বিবরণ
      liveBroadcasts.update
      HTTP রেসপন্স কোডforbidden (403)
      কারণclosedCaptionsTypeModificationNotAllowed
      বিবরণব্রডকাস্ট created বা ready স্ট্যাটাসে থাকলে তবেই contentDetails.closedCaptionsType ভ্যালু পরিবর্তন করা যায়।
      liveBroadcasts.update
      HTTP রেসপন্স কোডinvalidValue (400)
      কারণinvalidEnableClosedCaptions
      বিবরণliveBroadcast রিসোর্সে, contentDetails.enableClosedCaptions প্রপার্টির ভ্যালু contentDetails.closedCaptionType সেটিংসের ভ্যালুর সাথে মানানসই নয়। রিসোর্সটি এমনভাবে পরিবর্তন করুন যাতে দুটি প্রপার্টির মধ্যে শুধুমাত্র একটি অন্তর্ভুক্ত থাকে এবং তারপরে অনুরোধটি আবার জমা দিন।

১৯ আগস্ট, ২০১৫

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • নতুন রিসোর্স ও পদ্ধতি

    • মনে রাখবেন: liveChat রিসোর্স ও এর পদ্ধতির ডকুমেন্টেশন গোপনীয় এবং শুধুমাত্র বাছাই করা YouTube পার্টনারদের কাছেই দৃশ্যমান।

      নতুন liveChat রিসোর্সে YouTube-এ লাইভ সম্প্রচার চলাকালীন পোস্ট করা একটি কমেন্ট রয়েছে। এই রিসোর্সের জন্য API দুটি পদ্ধতি সমর্থন করে:

      পদ্ধতি
      liveChats.list কোনও ব্রডকাস্টের জন্য লাইভ চ্যাট মেসেজ তালিকাভুক্ত করুন।
      liveChats.insert নতুন চ্যাট মেসেজ তৈরি করুন।

      ব্রডকাস্ট লাইভ থাকাকালীনই শুধু লাইভ চ্যাট মেসেজ ফিরিয়ে আনা ও পোস্ট করা যাবে।

  • আগে থেকে থাকা রিসোর্স ও পদ্ধতিতে আপডেট

    • liveStream রিসোর্সে নিম্নলিখিত নতুন প্রপার্টি রয়েছে:

      প্রপার্টি
      snippet.isDefaultStream এই স্ট্রিমটি চ্যানেলের ডিফল্ট স্ট্রিম কিনা তা দেখায়। কোনও চ্যানেলের ডিফল্ট স্ট্রিম অনির্দিষ্টকালের জন্য থাকে, এর সাথে কোনও শুরু বা শেষ হওয়ার সময় যুক্ত থাকে না এবং এটি মুছে ফেলা যায় না। ডিফল্ট স্ট্রিম কীভাবে কাজ করে সেই সম্পর্কে আরও তথ্য পেতে প্রপার্টির সংজ্ঞা দেখুন।
      status.healthStatus এই অবজেক্টে এমন তথ্য থাকে যা স্ট্রিমিং সংক্রান্ত সমস্যা শনাক্ত, ডায়াগনসিস ও সমাধান করতে ব্যবহার করা যেতে পারে। লাইভ ভিডিও স্ট্রিমের স্বাস্থ্য মূল্যায়ন করতে সাহায্য করার জন্য অবজেক্টে বেশ কয়েকটি চাইল্ড প্রপার্টি রয়েছে।

      বিশেষ করে, status.healthStatus.configurationIssues[] অবজেক্টে ভিডিও স্ট্রিমকে প্রভাবিত করে এমন সমস্যার তালিকা থাকে। একটি নতুন ডকুমেন্ট, লাইভ স্ট্রিম রিসোর্সের জন্য কনফিগারেশন সংক্রান্ত সমস্যা, API রিপোর্ট করে এমন সব সমস্যার তালিকা দেখায়।
      contentDetails.isReusable স্ট্রিমটি আবার ব্যবহার করা যাবে কিনা তা দেখায়, যার অর্থ হল এটি একাধিক ব্রডকাস্টের সাথে যুক্ত করা যেতে পারে। ব্রডকাস্টাররা সাধারণত একই স্ট্রিম বিভিন্ন ব্রডকাস্টের জন্য ব্যবহার করেন, যদি সেই ব্রডকাস্টগুলি বিভিন্ন সময়ে হয়।
    • liveBroadcast রিসোর্সে নিম্নলিখিত নতুন প্রপার্টি রয়েছে:

      প্রপার্টি
      snippet.isDefaultBroadcast এই ব্রডকাস্ট চ্যানেলের ডিফল্ট ব্রডকাস্ট কিনা তা দেখায়। কোনও YouTube চ্যানেলে লাইভ স্ট্রিমিং চালু করা হলে, YouTube চ্যানেলের জন্য একটি ডিফল্ট স্ট্রিম ও একটি ডিফল্ট ব্রডকাস্ট তৈরি করে। চ্যানেলের মালিক কীভাবে YouTube-এ লাইভ ভিডিও পাঠান তা স্ট্রিম থেকে বোঝা যায় এবং দর্শকরা কীভাবে ডিফল্ট স্ট্রিম দেখতে পান তা ব্রডকাস্ট থেকে বোঝা যায়। ডিফল্ট ব্রডকাস্ট কীভাবে কাজ করে সেই সম্পর্কে আরও তথ্য পেতে প্রপার্টির সংজ্ঞা দেখুন।
      contentDetails.enableLowLatency এই ব্রডকাস্ট কম-লেটেন্সি স্ট্রিমিংয়ের জন্য এনকোড করা উচিত কিনা তা দেখায়। লো-লেটেন্সি স্ট্রিম ব্যবহার করলে, কোনও ব্রডকাস্ট দেখছেন এমন ব্যবহারকারীদের কাছে ভিডিওটি দেখাতে যে সময় লাগে তা কমিয়ে দিতে পারে, যদিও এটি স্ট্রিমের দর্শকদের জন্য রেজোলিউশনের উপরও প্রভাব ফেলতে পারে।
      statistics.totalChatCount ব্রডকাস্টের সাথে যুক্ত লাইভ চ্যাট মেসেজের মোট সংখ্যা। ব্যবহারকারী ব্রডকাস্ট দেখতে পেলে এবং লাইভ চ্যাট ফিচার চালু থাকলে, প্রপার্টি ও তার ভ্যালু দেখানো হয়। মনে রাখবেন, ব্রডকাস্ট শেষ হওয়ার পরে এই প্রপার্টি কোনও ভ্যালু নির্দিষ্ট করবে না। তাই, এই প্রপার্টি সম্পূর্ণ হয়ে যাওয়া লাইভ ব্রডকাস্টের আর্কাইভ করা ভিডিওর জন্য চ্যাট মেসেজের সংখ্যা শনাক্ত করতে পারবে না।
  • নতুন ও আপডেট করা সমস্যা

    • নতুন liveChat রিসোর্সের জন্য নির্দিষ্ট করা সমস্যার পাশাপাশি, API নিম্নলিখিত নতুন সমস্যাগুলিও সাপোর্ট করে:

      সমস্যার বিবরণ
      liveStreams.update
      HTTP রেসপন্স কোডforbidden (403)
      কারণliveStreamModificationNotAllowed
      বিবরণAPI আপনাকে আবার ব্যবহার করা যায় এমন স্ট্রিমকে আবার ব্যবহার করা যায় না এমন স্ট্রিমে পরিবর্তন করতে দেয় না বা এর উল্টোটাও করতে দেয় না। আরও তথ্যের জন্য, ব্রডকাস্ট ও স্ট্রিম সম্পর্কে বোঝা দেখুন

২১ মে, ২০১৫

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • YouTube এখন ৬০ ফ্রেম প্রতি সেকেন্ড (fps) স্পিডে লাইভ ভিডিও স্ট্রিমিং করতে দেয়, এর অর্থ হল গেমিং ও অন্যান্য দ্রুত অ্যাকশন ভিডিও আরও মসৃণভাবে প্লেব্যাক করা যাবে। আপনি YouTube-এ 60fps-এ লাইভ স্ট্রিম শুরু করলে, YouTube সেই স্ট্রিমটি 30fps-এও উপলভ্য করে তোলে, তবে এটি সেইসব ডিভাইসে করা হয় যেখানে এখনও হাই-ফ্রেম-রেট দেখার সুবিধা উপলভ্য নেই।

    liveStream রিসোর্সের cdn.format প্রপার্টিতে এই ফিচারের জন্য দুটি নতুন ভ্যালু কাজ করে: 720p_hfr ও 1080p_hfr।

    এই ফিচার সম্পর্কে আরও জানতে YouTube ক্রিয়েটর ব্লগ দেখুন।

২১ আগস্ট, ২০১৪

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • liveBroadcasts.control পদ্ধতির walltime প্যারামিটারের সংজ্ঞা আপডেট করা হয়েছে যাতে উল্লেখ করা যায় যে প্রপার্টির ভ্যালু 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 পদ্ধতি দুটিই এই ত্রুটি দেখায় যা থেকে বোঝা যায় যে ব্যবহারকারী নির্দিষ্ট সময়সীমার মধ্যে অনেক বেশি অনুরোধ পাঠিয়েছেন।

২ মে, ২০১৪

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি করা হয়েছে:

  • liveStream রিসোর্স এবং liveBroadcasts.bind পদ্ধতির বিবরণে আপডেট করে উল্লেখ করা হয়েছে যে একটি ব্রডকাস্ট শুধুমাত্র একটি ভিডিও স্ট্রিমের সাথে বাউন্ড করা যেতে পারে, তবে একটি ভিডিও স্ট্রিম একাধিক ব্রডকাস্টের সাথে বাউন্ড করা যেতে পারে। এই পরিবর্তনটি শুধুমাত্র ডকুমেন্টেশনে একটি সংশোধন; অন্তর্নিহিত API কার্যকারিতা পরিবর্তন করা হয়নি।

  • liveBroadcast রিসোর্সের contentDetails.monitorStream.enableMonitorStream প্রপার্টি আপডেট করে এটি ব্যাখ্যা করা হয়েছে যে প্রপার্টির ভ্যালু true হলে, live স্টেটে ট্রানজিট করার আগে আপনাকে অবশ্যই ব্রডকাস্ট testing স্টেটে ট্রানজিট করতে হবে। (প্রপার্টির ভ্যালু false হলে, আপনার ব্রডকাস্টে testing স্টেজ থাকতে পারবে না, তাই আপনি ব্রডকাস্ট সরাসরি live স্টেটে ট্রানজিশন করতে পারবেন।

  • liveCuepoint রিসোর্সের settings.offsetTimeMs প্রপার্টি আপডেট করা হয়েছে যাতে আপনি বুঝতে পারেন যে আপনার ব্রডকাস্টে মনিটর স্ট্রিম না থাকলে প্রপার্টির জন্য কোনও ভ্যালু নির্দিষ্ট করতে হবে না।

  • liveBroadcast ও liveStream রিসোর্সের সব পদ্ধতি এখন onBehalfOfContentOwner ও onBehalfOfContentOwnerChannel প্যারামিটার সাপোর্ট করে। এইসব প্যারামিটার আপনাকে একই কন্টেন্ট মালিকের সাথে যুক্ত বিভিন্ন চ্যানেলের জন্য API অনুরোধ সম্পূর্ণ করতে একই অনুমোদনের ক্রেডেনশিয়াল ব্যবহার করার অনুমতি দেয়।

  • liveCuepoints.insert পদ্ধতিতে settings.walltime প্রপার্টির ভ্যালু সেট করা যায়, এই বিষয়টি উল্লেখ করার জন্য পদ্ধতির ডকুমেন্টেশন আপডেট করা হয়েছে।

  • সমস্যা সংক্রান্ত ডকুমেন্টেশনে এখন প্রতিটি সমস্যার ধরনের জন্য HTTP রেসপন্স কোড নির্দিষ্ট করা আছে।

  • API এখন নিম্নলিখিত সমস্যাগুলি সমাধান করতে পারে:

    সমস্যার ধরন সমস্যার বিবরণ বিবরণ
    insufficientPermissions livePermissionBlocked অনুরোধ অনুমোদনকারী ব্যবহারকারী YouTube-এ লাইভ ভিডিও স্ট্রিম করতে না পারলে, liveBroadcasts.insert, liveBroadcasts.transition ও liveStreams.insert পদ্ধতি এই সমস্যাটি দেখায়। ব্যবহারকারী কেন লাইভ ভিডিও স্ট্রিম করতে পারছেন না সেই বিষয়ে বিস্তারিত তথ্য https://www.youtube.com/features লিঙ্কে গিয়ে ব্যবহারকারীর চ্যানেল সেটিংসে পাওয়া যেতে পারে।
  • liveBroadcasts.insert পদ্ধতির invalidScheduledStartTime সমস্যার ব্যাপারে আপডেট করা হয়েছে। এতে বলা হয়েছে যে শিডিউল করা শুরুর সময় বর্তমান তারিখের কাছাকাছি হতে হবে, যাতে সেই সময়ে নির্ভরযোগ্যভাবে সম্প্রচার শিডিউল করা যায়।

১৩ ডিসেম্বর, ২০১৩

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • liveBroadcast রিসোর্সের নতুন status.recordingStatus প্রপার্টি ব্রডকাস্টের বর্তমান স্ট্যাটাস শনাক্ত করে।

  • liveBroadcast রিসোর্সের contentDetails.enableClosedCaptions নতুন প্রপার্টি থেকে বোঝা যায় যে ব্রডকাস্টের জন্য ক্লোজড ক্যাপশন ইনজেস্ট করা যাবে কিনা। আপনি কোনও ব্রডকাস্ট যোগ বা আপডেট করার সময় প্রপার্টির ভ্যালু সেট করা যেতে পারে, তবে ব্রডকাস্ট testing বা live অবস্থায় থাকলে এটি আপডেট করা যাবে না। আপনি এই প্রপার্টি true হিসেবে সেট করলে, ব্রডকাস্টের সাথে যুক্ত liveStream রিসোর্স, ব্রডকাস্টের ক্লোজড ক্যাপশনের জন্য ব্যবহার করার ইনজেশন URL নির্দিষ্ট করবে।

  • liveBroadcast রিসোর্সের snippet.scheduledEndTime প্রপার্টি এখন এমন ব্রডকাস্ট সাপোর্ট করে যা অনির্দিষ্টকালের জন্য চলতে থাকে। এই পরিবর্তনের ফলে, liveBroadcasts.insert এবং liveBroadcasts.update অনুরোধে প্রপার্টির আর প্রয়োজন নেই।

    আপনি যদি এমন একটি liveBroadcast রিসোর্স ফিরিয়ে আনেন যা এই প্রপার্টির জন্য কোনও ভ্যালু নির্দিষ্ট করে না, তাহলে ব্রডকাস্টটি অনির্দিষ্টকালের জন্য চলতে থাকবে। একইভাবে, আপনি liveBroadcasts.insert বা liveBroadcasts.update মেথড কল করে এই প্রপার্টির কোনও ভ্যালু নির্দিষ্ট না করলে, সম্প্রচার অনির্দিষ্টকালের জন্য শিডিউল করা হবে।

  • liveBroadcast রিসোর্সের contentDetails.recordFromStart প্রপার্টি, যার আগে থেকেই true ডিফল্ট ভ্যালু ছিল, সেটি এখন শুধুমাত্র false-এ সেট করা যাবে যদি ব্রডকাস্টিং চ্যানেলকে লাইভ ব্রডকাস্টের জন্য রেকর্ডিং বন্ধ করার অনুমতি দেওয়া হয়।

    আপনার চ্যানেলের রেকর্ডিং বন্ধ করার অনুমতি না থাকলে এবং আপনি recordFromStart প্রপার্টি false হিসেবে সেট করা কোনও ব্রডকাস্ট যোগ করার চেষ্টা করলে, API একটি Forbidden সমস্যা দেখাবে। এছাড়াও, আপনার চ্যানেলের সেই অনুমতি না থাকলে এবং আপনি যদি recordFromStart প্রপার্টিকে false হিসেবে সেট করার জন্য কোনও ব্রডকাস্ট আপডেট করার চেষ্টা করেন, তাহলে API একটি modificationNotAllowed সমস্যা দেখাবে।

  • liveBroadcast রিসোর্সে আর enableArchive প্রপার্টি নেই, যা contentDetails.enableDvr ও contentDetails.enableEmbed প্রপার্টির বিবরণে উল্লেখ করা হয়েছে।

  • liveBroadcast রিসোর্সের status.lifeCycleStatus প্রপার্টির জন্য সঠিক ভ্যালুর তালিকা আপডেট করা হয়েছে যাতে প্রতিটি স্ট্যাটাসের বিবরণ অন্তর্ভুক্ত করা যায়।

  • liveCuepoint রিসোর্সের নতুন settings.walltime প্রপার্টি সেই তারিখ ও সময় নির্দিষ্ট করে দেয় যখন কিউপয়েন্ট যোগ করতে হবে। কোনও অনুরোধ যদি এমন কিউপয়েন্ট যোগ করার চেষ্টা করে যার মধ্যে এই প্রপার্টি ও settings.offsetTimeMs প্রপার্টির ভ্যালু নির্দিষ্ট করা থাকে, তাহলে API একটি সমস্যার মেসেজ রিটার্ন করে।

  • liveStream রিসোর্সে নতুন contentDetails অবজেক্টে স্ট্রিম সম্পর্কে তথ্য থাকে। বর্তমানে, অবজেক্টের একমাত্র প্রপার্টি হল contentDetails.closedCaptionsIngestionUrl, যা ভিডিও স্ট্রিমের সাথে যুক্ত ক্লোজড ক্যাপশনের জন্য ইনজেশন URL নির্দিষ্ট করে।

  • liveStream রিসোর্সের status.streamStatus প্রপার্টির জন্য সঠিক ভ্যালুর তালিকা আপডেট করা হয়েছে যাতে প্রতিটি স্ট্যাটাসের বিবরণ অন্তর্ভুক্ত করা যায়।

  • liveBroadcasts.control পদ্ধতির নতুন walltime প্যারামিটার আপনাকে স্লেট পরিবর্তন হওয়ার তারিখ ও সময় নির্দিষ্ট করতে দেয়। কোনও অনুরোধে এই প্যারামিটার ও offsetTimeMs প্যারামিটারের জন্য ভ্যালু উল্লেখ করা হলে API একটি এরর রিটার্ন করে।

  • liveBroadcasts.list অনুরোধের API উত্তরের মধ্যে, kind প্রপার্টির ভ্যালু youtube#liveBroadcastList থেকে পরিবর্তিত হয়ে youtube#liveBroadcastListResponse হয়েছে।

  • liveStreams.list অনুরোধের API উত্তরের মধ্যে, kind প্রপার্টির ভ্যালু youtube#liveStreamList থেকে পরিবর্তিত হয়ে youtube#liveStreamListResponse হয়েছে।

  • eventId প্রপার্টি liveBroadcastListResponse ও liveStreamListResponse, দু'টি থেকেই বন্ধ করে দেওয়া হয়েছে।

  • API-তে নিম্নলিখিত নতুন সমস্যার মেসেজ কাজ করে:

    সমস্যার ধরন সমস্যার বিবরণ বিবরণ
    invalidValue conflictingTimeFields আপনার অনুরোধে offsetTimeMs এবং walltime প্যারামিটারের জন্য ভ্যালু নির্দিষ্ট করা থাকলে, liveBroadcasts.control পদ্ধতি এই সমস্যা দেখায়। একটি অনুরোধে দুটি প্যারামিটারই বাদ দেওয়া যেতে পারে অথবা দুটি প্যারামিটারের মধ্যে একটির জন্য ভ্যালু নির্দিষ্ট করা যেতে পারে।
    invalidValue invalidWalltime walltime প্যারামিটারের ভ্যালু ভুল হলে, liveBroadcasts.control পদ্ধতি এই সমস্যা দেখায়।
    forbidden enableClosedCaptionsModificationNotAllowed আপনি contentDetails.enableClosedCaptions ভ্যালু আপডেট করার চেষ্টা করলে এবং ব্রডকাস্টের স্ট্যাটাস created বা ready না হলে, liveBroadcasts.update পদ্ধতি এই সমস্যাটি দেখায়।
    invalidValue conflictingTimeFields আপনার অনুরোধে settings.offsetTimeMs এবং settings.walltime প্রপার্টির জন্য ভ্যালু নির্দিষ্ট করা থাকলে, liveCuepoints.insert পদ্ধতি এই সমস্যাটি দেখায়। অনুরোধে হয় দুটি প্রপার্টির কোনওটিই উল্লেখ করা যাবে না অথবা দুটির মধ্যে একটির ভ্যালু উল্লেখ করতে হবে।

    এছাড়াও, liveStreams.update পদ্ধতিতে cdnRequired-এর মতো সমস্যা আর কাজ করে না, যা liveStreams.insert পদ্ধতিতে কাজ করে।

১০ মে, ২০১৩

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

২ মে, ২০১৩

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • নতুন liveBroadcasts.control পদ্ধতির মাধ্যমে আপনি ব্রডকাস্ট স্ট্রিমে দেখানো স্লেটের ডিসপ্লে সেটিংস টগল করতে পারবেন। এটি এমন ব্রডকাস্টের জন্য প্রযোজ্য যা আগে থেকেই চলছে। আপনার ব্রডকাস্ট স্ট্রিম দেরিতে হলে, অনুরোধ করা স্লেট পরিবর্তন কখন হবে তা নির্দিষ্ট করার জন্য আপনি এই পদ্ধতিও ব্যবহার করতে পারেন।

  • liveBroadcast রিসোর্সের contentDetails অংশ আপডেট করলে প্রপার্টির মান সেট করতে হবে, তা বোঝাতে নিম্নলিখিত প্রপার্টির সংজ্ঞা আপডেট করা হয়েছে:

  • liveStream রিসোর্সের status.streamStatus আর deleted ভ্যালুকে সম্ভাব্য স্ট্রিম স্ট্যাটাস হিসেবে সাপোর্ট করে না।

  • অনেক সমস্যার মেসেজের জন্য API যে তথ্য ফেরত দেয় তা সংশোধন করা হয়েছে যাতে নির্দিষ্ট সমস্যা কেন হয়েছে তা আরও ভালোভাবে ব্যাখ্যা করা যায়। API-তে একাধিক নতুন সমস্যার সমাধানও করা হয়েছে।

২৭ মার্চ, ২০১৩

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি করা হয়েছে:

  • liveBroadcast রিসোর্সে নিম্নলিখিত প্রপার্টি পরিবর্তন করা হয়েছে:

    • startWithSlateCuepoint প্রপার্টির নাম পরিবর্তন করে startWithSlate করা হয়েছে।
    • enableArchive প্রপার্টির নাম পরিবর্তন করে recordFromStart করা হয়েছে।
    • slateSettings অবজেক্টটি বন্ধ করে দেওয়া হয়েছে এবং ডকুমেন্টেশন থেকে সরিয়ে দেওয়া হয়েছে। slateSettings অবজেক্ট বা এর প্রপার্টি সম্পর্কিত ত্রুটি মেসেজও সরিয়ে দেওয়া হয়েছে। শেষে, শুরু করা নির্দেশিকার "স্লেট দেখানো" বিভাগটি সরিয়ে দেওয়া হয়েছে।

  • liveCuepoints.insert পদ্ধতি ব্যবহার করে ইন-স্ট্রিম স্লেট যোগ করার সুবিধা API-তে আর কাজ করে না। এই পরিবর্তন যাতে দেখা যায় তার জন্য নিম্নলিখিত ডকুমেন্ট আপডেট করা হয়েছে:

    • ইনডেক্স পৃষ্ঠা, শুরু করা নির্দেশিকা এবং ব্রডকাস্টের লাইফ টিউটোরিয়ালে এই কার্যকারিতা আর উল্লেখ করা নেই।

    • liveCuepoint রিসোর্সের settings.cueType প্রপার্টিতে প্রপার্টি ভ্যালু হিসেবে slate আর কাজ করে না। (শুধুমাত্র ad ভ্যালু কাজ করে।

    • liveCuepoint রিসোর্সের settings.eventState প্রপার্টি বন্ধ করা হয়েছে এবং ডকুমেন্টেশন থেকে সরিয়ে দেওয়া হয়েছে।

১৮ মার্চ, ২০১৩

এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি অন্তর্ভুক্ত রয়েছে:

  • API-এর সব সমস্যার মেসেজ আপডেট করা হয়েছে যাতে সম্ভাব্য সমস্যা আরও স্পষ্টভাবে ব্যাখ্যা করা যায় এবং সম্ভব হলে, সেগুলি কীভাবে সমাধান করা যায় সেই সম্পর্কে নির্দেশিকা অফার করা যায়।

  • API এখন একাধিক নতুন সমস্যা দেখাতে পারে। নিচের তালিকায় সমস্যা এবং API পদ্ধতি শনাক্ত করা হয়েছে যা সেই সমস্যা ফিরিয়ে দিতে পারে:

    • liveBroadcasts.insert – কোনও ব্রডকাস্টের শিডিউল করা শেষ হওয়ার সময় অবশ্যই তার শিডিউল করা শুরু হওয়ার সময়ের পরে হতে হবে।
    • liveBroadcasts.insert – ব্রডকাস্টে ভুল গোপনীয়তা স্ট্যাটাস উল্লেখ করা হয়েছে।
    • liveBroadcasts.update – রিসোর্সে contentDetails.enableArchive প্রপার্টির কোনও ভ্যালু নেই বা সেট করা নেই।
    • liveBroadcasts.update – রিসোর্সে contentDetails.enableContentEncryption প্রপার্টির জন্য কোনও ভ্যালু নেই বা সেট করা হয়নি।
    • liveBroadcasts.update – রিসোর্সে contentDetails.enableDvr প্রপার্টির জন্য কোনও ভ্যালু নেই বা সেট করা হয়নি।
    • liveStreams.insert – স্নিপেটের শীর্ষক ১ থেকে ১২৮টি অক্ষরের মধ্যে হতে হবে।
    • liveStreams.update – রিসোর্সে snippet.title প্রপার্টির জন্য কোনও ভ্যালু নেই বা সেট করা হয়নি।

  • liveStream রিসোর্স ডকুমেন্টেশন আপডেট করা হয়েছে যাতে এটি দেখানো যায় যে আগে যেমন ইঙ্গিত করা হয়েছিল, মাল্টিকাস্ট ও WebM ইনজেশন পদ্ধতি হিসেবে কাজ করে না। cdn.format প্রপার্টির ফর্ম্যাটের তালিকা সেই অনুযায়ী আপডেট করা হয়েছে এবং cdn.multicastIngestionInfo অবজেক্ট ও তার চাইল্ড প্রপার্টি রিসোর্সের ডকুমেন্টেশন থেকে সরিয়ে দেওয়া হয়েছে। এছাড়াও, cdn.ingestionType-এর কাজ করে এমন ভ্যালুর তালিকা থেকে http সরিয়ে দেওয়া হয়েছে।