এই পৃষ্ঠাটি YouTube লাইভ স্ট্রিমিং API পরিবর্তন এবং ডকুমেন্টেশন আপডেট তালিকাভুক্ত করে। এই চেঞ্জলগে সাবস্ক্রাইব করুন ।
9 অক্টোবর, 2023
শুধুমাত্র রেফারেন্সের জন্য, আপনি এই CSV ফাইলে কোন স্টিকার আইডি কোন সুপার স্টিকারের সাথে সম্পর্কিত তা খুঁজে পেতে পারেন। liveChatMessage
রিসোর্সের snippet.superStickerDetails.superStickerMetadata.stickerId
প্রপার্টির সংজ্ঞা এবং superChatEvent
রিসোর্সের snippet.superStickerMetadata.stickerId
প্রপার্টি উভয়ই এই তথ্য প্রতিফলিত করার জন্য আপডেট করা হয়েছে।
15 সেপ্টেম্বর, 2023
API এখন লাইভ সম্প্রচারে বিজ্ঞাপন সন্নিবেশ করার একটি নতুন উপায় সমর্থন করে৷ liveCuepoints
ছাড়াও, যা আপনাকে ম্যানুয়ালি একটি সম্প্রচারে বিজ্ঞাপন বিরতি সন্নিবেশ করতে দেয়, YouTube এখন একটি নির্দিষ্ট ব্যবধানে একটি সম্প্রচারে স্বয়ংক্রিয়ভাবে মিডরোল বিজ্ঞাপন বিরতি সন্নিবেশ করার জন্য একটি বৈশিষ্ট্য সমর্থন করে৷
যদি সম্প্রচারের মালিক স্বয়ংক্রিয় বিজ্ঞাপনগুলি সক্ষম করে, তাহলে তারা বিজ্ঞাপন আচরণের নিম্নলিখিত দিকগুলি দেখতে পারে:
- মিডরোল বিজ্ঞাপন বিরতির মধ্যে ব্যবধানের দৈর্ঘ্য।
- বিজ্ঞাপন কিউপয়েন্টের জন্য নির্ধারিত কৌশল। ক্যুপয়েন্টগুলি সমস্ত দর্শকদের জন্য একযোগে সন্নিবেশ করা যেতে পারে বা কিউপয়েন্টগুলির সময় দর্শক থেকে দর্শকের মধ্যে পরিবর্তিত হতে পারে। পরবর্তী কৌশলটি ইউটিউবকে একটি বর্ধিত হারে কিউপয়েন্ট নির্ধারণ করতে সক্ষম করে যা দর্শকরা যখন এটি করার যোগ্য হয় তখন কিউপয়েন্ট পেতে দেয়।
- একটি সময়কাল যেখানে মিডরোল বিজ্ঞাপন দেখানো হয় না; এই বৈশিষ্ট্যটির জন্য, সম্প্রচার মালিক নির্দিষ্ট করে যে মিডরোল বিজ্ঞাপন সন্নিবেশ একটি নির্দিষ্ট সময় পর্যন্ত বিরাম দেওয়া হয়েছে৷
ডকুমেন্টেশন এই বৈশিষ্ট্য সমর্থন করার জন্য নিম্নলিখিত API পরিবর্তনগুলি প্রতিফলিত করে:
-
liveBroadcast
রিসোর্সে এখন একটিmonetizationDetails
অবজেক্ট রয়েছে। অবজেক্টের ক্ষেত্রগুলি সম্প্রচারের জন্য স্বয়ংক্রিয় বিজ্ঞাপন সন্নিবেশ সক্ষম করা হয়েছে কিনা তা নির্দেশ করে এবং কিউপয়েন্ট নির্ধারণের জন্য অতিরিক্ত তথ্য নির্দিষ্ট করে৷ -
liveBroadcast.list
পদ্ধতিরpart
প্যারামিটার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
-
liveChatMessage
রিসোর্সের নতুনsnippet.membershipGiftingDetails
প্রপার্টি এবং এর বাচ্চাদের মেম্বারশিপ গিফটিং ইভেন্ট সম্পর্কে তথ্য রয়েছে। একইভাবে, নতুনsnippet.giftMembershipReceivedDetails
প্রপার্টি এবং এর বাচ্চাদের মধ্যে গিফট মেম্বারশিপ রিসিভড ইভেন্টের তথ্য রয়েছে।
15 সেপ্টেম্বর, 2021
এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি রয়েছে:
snippet.type
সম্পত্তি এখন দুটি নতুন মান সমর্থন করে:-
newSponsorEvent
-
memberMilestoneChatEvent
-
liveChatMessage
রিসোর্সের নতুনsnippet.memberMilestoneChatDetails
প্রপার্টি এবং এর বাচ্চাদের মধ্যে সদস্য মাইলস্টোন চ্যাট ইভেন্ট সম্পর্কে তথ্য রয়েছে। একইভাবে, নতুনsnippet.newSponsorDetails
সম্পত্তি এবং এর বাচ্চাদের মধ্যে নতুন স্পনসর ইভেন্ট সম্পর্কে তথ্য রয়েছে।
ডিসেম্বর 1, 2020
API এর liveBroadcasts.transition
পদ্ধতি একটি নতুন 403
( Forbidden
) ত্রুটি সমর্থন করে, যা নির্দেশ করে যে ব্যবহারকারী একটি নির্দিষ্ট সময়সীমার মধ্যে অনেক বেশি অনুরোধ পাঠিয়েছেন৷ ত্রুটির কারণ হল userRequestsExceedRateLimit
।
সেপ্টেম্বর 21, 2020
liveBroadcast
রিসোর্সের স্থিতির সংজ্ঞাstatus.madeForKids
সম্পত্তিটি শুধুমাত্র পঠনযোগ্য তা স্পষ্ট করার জন্য আপডেট করা হয়েছে। এটি API কার্যকারিতার পরিবর্তন প্রতিফলিত করে না।একটি লাইভ সম্প্রচারকে শিশু-নির্দেশিত হিসাবে মনোনীত করতে, সম্প্রচার তৈরি করতে
liveBroadcasts.insert
পদ্ধতিতে কল করার সময়status.selfDeclaredMadeForKids
সম্পত্তিটিকেtrue
হিসাবে সেট করুন৷দ্রষ্টব্য: এই পরিবর্তনে একটি অবচয় ঘোষণা এবং একটি পূর্ববর্তী অবচয় ঘোষণার আপডেট অন্তর্ভুক্ত রয়েছে৷
liveBroadcasts.control
পদ্ধতিটি 1 অক্টোবর 2020 তারিখে বা তার পরে বাতিল করা হবে। সেই তারিখের পরে, এই পদ্ধতিতে করা সমস্ত কল একটি নিষিদ্ধ (403) ত্রুটি ফিরিয়ে দেবে এবং পদ্ধতিটি পরে সম্পূর্ণরূপে সরানো হবে। ক্লায়েন্টরা এখনও YouTube এর ইনজেশন সার্ভারে পাঠানো ভিডিওতে একটি ওভারলে যোগ করে তাদের নিজস্ব স্লেটিং বাস্তবায়ন করতে পারে।16 এপ্রিল 2020-এ করা অবমূল্যায়ন ঘোষণার তারিখ, যা মূলত 1 সেপ্টেম্বর 2020-এর জন্য নির্ধারিত ছিল, তা পিছিয়ে দেওয়া হয়েছে এবং এখন 1 অক্টোবর 2020-এ বা তার পরে ঘটবে৷ এইভাবে, সেই অবচয় ঘোষণা এবং
liveBroadcasts.control
পদ্ধতি একই সময়ে বাতিল করা হবে।
জুলাই 17, 2020
দ্রষ্টব্য: এটি একটি পূর্ববর্তী অবচয় ঘোষণার একটি আপডেট৷
liveStream
রিসোর্সের cdn.format
ফিল্ড, যা এপ্রিল 2016-এ বাতিল করা হয়েছিল, 17 অগাস্ট, 2020 থেকে আর সমর্থিত হবে না৷ সেই তারিখ থেকে এখনও সেই ক্ষেত্রটি ব্যবহার করার অনুরোধগুলি ব্যর্থ হবে৷
যদি আপনার কোড এখনও cdn.format
ক্ষেত্র ব্যবহার করে, তাহলে cdn.frameRate
এবং cdn.resolution
বৈশিষ্ট্যগুলি ব্যবহার করে আলাদাভাবে ফ্রেম রেট এবং রেজোলিউশন নির্দিষ্ট করতে এটি আপডেট করতে হবে।
6 জুলাই, 2020
এইচএলএস গাইডের মাধ্যমে লাইভ ইউটিউব সামগ্রী বিতরণ কিছু পরিবর্তন সহ আপডেট করা হয়েছে:
- একটি মিডিয়া সেগমেন্টের জন্য প্রস্তাবিত সময়কাল এক থেকে চার সেকেন্ডে আপডেট করা হয়েছে।
- YouTube ক্রিয়েটর স্টুডিও থেকে কীভাবে একটি HLS ইনজেশন URL পেতে হয় তা একটি নতুন বিভাগ ব্যাখ্যা করে৷
-
file
প্যারামিটার মান ফর্ম্যাট করার জন্য নির্দেশাবলী নতুন HLS ইনজেশন URL বিভাগে সরানো হয়েছে। HLS ইনজেশন URL YouTube API বা YouTube ক্রিয়েটর স্টুডিও থেকে প্রাপ্ত হোক না কেন এই নির্দেশাবলী প্রযোজ্য।
এছাড়াও, নতুন ইনজেশন প্রোটোকল তুলনা YouTube সমর্থন করে এমন ইনজেশন প্রোটোকল, প্রতিটি প্রোটোকলের জন্য সমর্থিত কোডেক এবং প্রতিটি প্রোটোকলের জন্য উপযুক্ত ব্যবহারের ক্ষেত্রে অতিরিক্ত তথ্য তালিকাভুক্ত করে।
16 এপ্রিল, 2020
এই আপডেটে একটি নতুন সম্পত্তি এবং একটি অবচয় ঘোষণা রয়েছে:
liveBroadcast
সংস্থান এখনcontentDetails.enableAutoStop
প্রপার্টি সমর্থন করে। চ্যানেল মালিক আবদ্ধ ভিডিও স্ট্রীমে ভিডিও স্ট্রিমিং বন্ধ করার এক মিনিটের মধ্যে সম্প্রচার স্বয়ংক্রিয়ভাবে বন্ধ হওয়া উচিত কিনা তা নির্দেশ করে।যদি আপনি
contentDetails.enableAutoStart
বাcontentDetails.enableAutoStop
বৈশিষ্ট্যগুলিকেtrue
সেট করেন তবে একটি লাইভ YouTube ইভেন্ট তৈরি এবং পরিচালনা করার ধাপে ধাপে প্রক্রিয়া কীভাবে পরিবর্তিত হয় তা ব্যাখ্যা করার জন্য একটি সম্প্রচার নথির জীবন আপডেট করা হয়েছে৷দ্রষ্টব্য: এটি একটি অবমূল্যায়ন ঘোষণা। এই পরিবর্তনগুলি 1 সেপ্টেম্বর, 2020 থেকে বা তার পরে কার্যকর হবে৷ পরিবর্তনগুলি কার্যকর হওয়ার প্রকৃত তারিখটি নিম্নে অবচয় তারিখ হিসাবে উল্লেখ করা হয়েছে৷
এই আপডেটটি একটি সম্ভাব্য ব্রেকিং পরিবর্তন ব্যাখ্যা করে। এটি 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 এ একটি লাইভ ইভেন্ট তৈরি এবং পরিচালনা করতে হয়। প্রতিটি ধাপ এপিআই কল বা একটি নির্দিষ্ট ক্রিয়া সম্পন্ন করার জন্য আপনাকে যা করতে হবে তা ব্যাখ্যা করে এবং YouTube যখন ডিফল্ট স্ট্রীম এবং সম্প্রচারগুলিকে সমর্থন করা বন্ধ করে তখন আপনার অ্যাপ্লিকেশনটিকে সেই প্রক্রিয়াটি অনুসরণ করতে হবে৷
- এটি
মার্চ 31, 2020
দ্রষ্টব্য: এটি একটি অবমূল্যায়ন ঘোষণা।
sponsor
রিসোর্স এবং sponsors.list
মেথড অবহেলিত হয়েছে এবং member
রিসোর্স এবং members.list
মেথড দ্বারা প্রতিস্থাপিত হয়েছে।
30 সেপ্টেম্বর, 2020 তারিখে বা তার পরে sponsors.list
পদ্ধতিটি আর সমর্থিত হবে না। API ক্লায়েন্টদের এর পরিবর্তে members.list
পদ্ধতি ব্যবহার করতে sponsors.list
পদ্ধতিতে কল আপডেট করা উচিত। নতুন সংস্থান সম্পর্কে আরও তথ্যের জন্য দয়া করে YouTube ডেটা API পুনর্বিবেচনার ইতিহাস দেখুন৷
11 মার্চ, 2020
এইচএলএস গাইডের মাধ্যমে লাইভ ইউটিউব সামগ্রী বিতরণের ইনজেশন এন্ডপয়েন্ট বিভাগটি আপডেট করা হয়েছে প্রাথমিক এবং ব্যাকআপ ইনজেশন ইউআরএল তৈরি করার সময় file=
প্যারামিটার মান সম্পূর্ণ করার জন্য যে প্রক্রিয়াটি এনকোডার ব্যবহার করা উচিত তা স্পষ্ট করার জন্য।
4 ফেব্রুয়ারি, 2020
এইচএলএস গাইডের মাধ্যমে লাইভ ইউটিউব সামগ্রী বিতরণ আপডেট করা হয়েছে নোট করার জন্য যে DELETE
অনুরোধগুলি ঐচ্ছিক এবং YouTube এর HLS এন্ডপয়েন্ট সেগুলিকে উপেক্ষা করে৷ পারফরম্যান্সের কারণে, YouTube ক্লায়েন্টদের DELETE
অনুরোধ না পাঠাতে পরামর্শ দেয়।
জানুয়ারী 10, 2020
API এখন শিশু-নির্দেশিত সামগ্রী সনাক্ত করার ক্ষমতা সমর্থন করে, যাকে YouTube বলে "বাচ্চাদের জন্য তৈরি"৷ YouTube সহায়তা কেন্দ্রে "বাচ্চাদের জন্য তৈরি" সামগ্রী সম্পর্কে আরও জানুন ৷
-
liveBroadcast
রিসোর্স দুটি নতুন প্রপার্টি সমর্থন করে যাতে কন্টেন্ট ক্রিয়েটর এবং দর্শকদের "বাচ্চাদের জন্য তৈরি" কন্টেন্ট শনাক্ত করতে সক্ষম করে:-
selfDeclaredMadeForKids
সম্পত্তি একটি লাইভ সম্প্রচার শিশু-নির্দেশিত বিষয়বস্তু কিনা তা নির্দিষ্ট করতে বিষয়বস্তু নির্মাতাদের সক্ষম করে।liveBroadcasts.insert
পদ্ধতির মাধ্যমে একটি সম্প্রচার তৈরি করার সময় এই বৈশিষ্ট্যটি সেট করা যেতে পারে। মনে রাখবেন যে চ্যানেলের মালিক যদি API অনুরোধ অনুমোদন করেন তবে এই বৈশিষ্ট্যটি শুধুমাত্র API প্রতিক্রিয়াগুলিতে অন্তর্ভুক্ত করা হয় যাতেliveBroadcast
সংস্থান থাকে। -
madeForKids
প্রপার্টি যেকোনো API ব্যবহারকারীকে একটি সম্প্রচারের "বাচ্চাদের জন্য তৈরি" স্ট্যাটাস পুনরুদ্ধার করতে সক্ষম করে। উদাহরণস্বরূপ,selfDeclaredMadeForKids
সম্পত্তির মানের উপর ভিত্তি করে স্থিতি নির্ধারণ করা যেতে পারে। আপনার চ্যানেল, ভিডিও বা সম্প্রচারের জন্য দর্শক সেট করার বিষয়ে আরও তথ্যের জন্য YouTube সহায়তা কেন্দ্র দেখুন।
-
- YouTube ডেটা API-তে,
channel
সংস্থানটি নতুনselfDeclaredMadeForKids
এবংmadeForKids
বৈশিষ্ট্যগুলিকেও সমর্থন করে৷
আমরা YouTube API পরিষেবাগুলির পরিষেবার শর্তাবলী এবং বিকাশকারী নীতিগুলিও আপডেট করেছি৷ আরও তথ্যের জন্য দয়া করে YouTube API পরিষেবার পরিষেবার শর্তাবলী দেখুন - পুনর্বিবেচনার ইতিহাস ৷ YouTube API পরিষেবাগুলির পরিষেবার শর্তাবলী এবং বিকাশকারী নীতিগুলির পরিবর্তনগুলি 10 জানুয়ারী, 2020 প্রশান্ত মহাসাগরীয় সময় থেকে কার্যকর হবে৷
20 আগস্ট, 2019
HLS গাইডের মাধ্যমে লাইভ ইউটিউব সামগ্রী বিতরণের প্রয়োজনীয়তা বিভাগ দুটি পরিবর্তনের সাথে আপডেট করা হয়েছে:
- এটি ব্যাখ্যা করে যে প্রতিটি মিডিয়া প্লেলিস্টে স্বীকৃত বিভাগ এবং অসামান্য বিভাগ উভয়ই অন্তর্ভুক্ত করা একটি সর্বোত্তম অনুশীলন। এই অনুশীলনটি সার্ভার সাইডে মিডিয়া প্লেলিস্ট হারিয়ে গেলে একটি সেগমেন্ট এড়িয়ে যাওয়ার সম্ভাবনা কম করে তোলে। উদাহরণস্বরূপ, আপনি প্রতিটি মিডিয়া প্লেলিস্টে দুটি পর্যন্ত স্বীকৃত বিভাগ এবং পাঁচটি পর্যন্ত অসামান্য সেগমেন্ট অন্তর্ভুক্ত করতে পারেন।
- এখন প্রতিটি মিডিয়া সেগমেন্টের জন্য একটি মিডিয়া প্লেলিস্ট পাঠানোর প্রয়োজন। মিডিয়া প্লেলিস্ট হারিয়ে গেলে এটি সার্ভারকে দ্রুত পুনরুদ্ধার করতে সক্ষম করে। এই অনুশীলনটি পূর্বে একটি সুপারিশ হিসাবে তালিকাভুক্ত করা হয়েছিল।
জুন 28, 2019
YouTube এখন HLS ইনজেশন সমর্থন করে। সেই অনুযায়ী, HLS ব্যবহার করে YouTube-এ ইনজেস্ট করা স্ট্রিমগুলি শনাক্ত করতে liveStream
রিসোর্সের ingestionType
প্রপার্টি নতুন মান hls
সমর্থন করে।
HLS গাইডের মাধ্যমে নতুন ডেলিভারিং লাইভ YouTube কন্টেন্ট এনকোডার থেকে YouTube-এ লাইভ কন্টেন্ট স্ট্রিম করতে HLS ব্যবহার করার জন্য নির্দেশিকা প্রদান করে। গাইডের লক্ষ্য এনকোডার বিক্রেতাদের তাদের পণ্যগুলিতে HLS বিতরণ সমর্থন যোগ করতে সহায়তা করা।
4 এপ্রিল, 2019
এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি রয়েছে:
API রেফারেন্স ডকুমেন্টেশন আপডেট করা হয়েছে প্রতিটি পদ্ধতির জন্য সাধারণ ব্যবহারের ক্ষেত্রে আরও ভালভাবে ব্যাখ্যা করতে এবং APIs এক্সপ্লোরার উইজেটের মাধ্যমে গতিশীল, উচ্চ-মানের কোড নমুনা প্রদান করতে। একটি উদাহরণের জন্য
liveBroadcasts.list
পদ্ধতির ডকুমেন্টেশন দেখুন। পৃষ্ঠাগুলিতে এখন দুটি নতুন উপাদান রয়েছে যা API পদ্ধতিগুলি বর্ণনা করে:APIs এক্সপ্লোরার উইজেট আপনাকে অনুমোদনের সুযোগ নির্বাচন করতে, নমুনা পরামিতি এবং সম্পত্তি মান লিখতে এবং তারপর প্রকৃত API অনুরোধ পাঠাতে এবং প্রকৃত API প্রতিক্রিয়া দেখতে দেয়। উইজেটটি একটি পূর্ণস্ক্রীন দৃশ্যও অফার করে যা সম্পূর্ণ কোড নমুনা দেখায়, যা আপনার প্রবেশ করানো স্কোপ এবং মানগুলি ব্যবহার করার জন্য গতিশীলভাবে আপডেট হয়।
সাধারণ ব্যবহারের ক্ষেত্রে বিভাগটি পৃষ্ঠায় ব্যাখ্যা করা পদ্ধতির জন্য এক বা একাধিক সাধারণ ব্যবহারের ক্ষেত্রে বর্ণনা করে। উদাহরণস্বরূপ, আপনি একটি নির্দিষ্ট সম্প্রচার সম্পর্কে ডেটা পুনরুদ্ধার করতে বা বর্তমান ব্যবহারকারীর সম্প্রচার সম্পর্কে ডেটা পুনরুদ্ধার করতে
liveBroadcasts.list
পদ্ধতিতে কল করতে পারেন৷আপনি আপনার ব্যবহারের ক্ষেত্রে নমুনা মান সহ APIs এক্সপ্লোরারকে পপুলেট করতে বা ইতিমধ্যেই জনবহুল সেই মানগুলির সাথে পূর্ণস্ক্রীন APIs এক্সপ্লোরার খুলতে সেই বিভাগে লিঙ্কগুলি ব্যবহার করতে পারেন৷ এই পরিবর্তনগুলির লক্ষ্য হল আপনার জন্য কোড নমুনাগুলি দেখতে সহজ করে যা আপনি নিজের অ্যাপ্লিকেশনে প্রয়োগ করার চেষ্টা করছেন এমন ব্যবহারের ক্ষেত্রে সরাসরি প্রযোজ্য৷
কোড নমুনা বর্তমানে Java, JavaScript, PHP, Python, এবং curl-এর জন্য সমর্থিত।
কোড নমুনা পৃষ্ঠাতে একটি নতুন UI রয়েছে যা উপরে বর্ণিত একই বৈশিষ্ট্যগুলি অফার করে৷ সেই টুলটি ব্যবহার করে, আপনি বিভিন্ন পদ্ধতির জন্য ব্যবহারের ক্ষেত্রে অন্বেষণ করতে পারেন, APIs এক্সপ্লোরারে মান লোড করতে পারেন এবং Java, JavaScript, PHP এবং Python-এ কোড নমুনা পেতে ফুলস্ক্রিন APIs এক্সপ্লোরার খুলতে পারেন।
এই পরিবর্তনের সাথে একত্রে, যে পৃষ্ঠাগুলি আগে জাভা, পিএইচপি, এবং পাইথনের জন্য উপলব্ধ কোড নমুনাগুলি তালিকাভুক্ত করেছিল সেগুলি সরানো হয়েছে৷
25 ফেব্রুয়ারি, 2019
liveChatMessage
এবং superChatEvent
সংস্থানগুলির ডকুমেন্টেশন আপডেট করা হয়েছে এই সত্যটি প্রতিফলিত করার জন্য যে উভয় সংস্থানই এখন সুপার স্টিকার সম্পর্কে তথ্য ধারণ করতে পারে। সুপার স্টিকার হল এক ধরনের সুপার চ্যাট বার্তা যা একটি ছবি প্রদর্শন করে। অন্যান্য সুপার চ্যাটের মতো, YouTube লাইভ স্ট্রিম চলাকালীন একজন ভক্ত একটি সুপার স্টিকার বার্তা ক্রয় করে।
- একটি
liveChatMessage
রিসোর্সে,snippet.type
প্রপার্টিটি এখনsuperStickerEvent
এ সেট করা হয়েছে যাতে বোঝানো যায় যে রিসোর্সে একটি সুপার স্টিকার সম্পর্কে তথ্য রয়েছে। সেক্ষেত্রে, রিসোর্সটিতেsnippet.superStickerDetails
অবজেক্টও রয়েছে, যেটিতে সুপার স্টিকার সম্পর্কে অতিরিক্ত তথ্য রয়েছে। - একটি
superChatEvent
ইভেন্ট রিসোর্সে, বুলিয়ানsnippet.isSuperStickerEvent
নির্দেশ করে যে সুপার চ্যাট বার্তাটিও একটি সুপার স্টিকার কিনা। যদি তাই হয়, তাহলেsnippet.superStickerMetadata
অবজেক্টে সুপার স্টিকার সম্পর্কে অতিরিক্ত বিবরণ রয়েছে।
5 এপ্রিল, 2018
superChatEvents.list
পদ্ধতির বিবরণ আপডেট করা হয়েছে এই সত্যটি প্রতিফলিত করার জন্য যে API প্রতিক্রিয়াতে আর fanFundingEvents
নেই, যেগুলি 2017 সালের শুরুর দিকে বাতিল করা হয়েছিল।
3 এপ্রিল, 2017
নতুন জাভা কোড নমুনা যোগ করা হয়েছে যা দেখায় কিভাবে লাইভ চ্যাট বার্তাগুলি তালিকাভুক্ত করা , সন্নিবেশ করা এবং মুছে ফেলা যায় ৷ নমুনাগুলি নিম্নলিখিত পদ্ধতিগুলিকে কল করে:
ফেব্রুয়ারী 13, 2017
এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি রয়েছে:
বিদ্যমান সম্পদ এবং পদ্ধতির আপডেট
onBehalfOfContentOwner
প্যারামিটারটি বর্তমানে প্রয়োজনীয় তা প্রতিফলিত করতেliveCuepoints.insert
পদ্ধতিটি আপডেট করা হয়েছে। এছাড়াও, পদ্ধতির বিবরণ আপডেট করা হয়েছে যাতে উল্লেখ করা যায় যে সেই পদ্ধতিতে কলগুলিকে অবশ্যই YouTube সামগ্রীর মালিকের সাথে যুক্ত একটি অ্যাকাউন্ট দ্বারা অনুমোদিত হতে হবে৷
ফেব্রুয়ারী 9, 2017
এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি রয়েছে:
বিদ্যমান সম্পদ এবং পদ্ধতির আপডেট
superChatEvents.list
পদ্ধতির নতুনhl
প্যারামিটার আপনাকে নির্দিষ্ট করতে দেয় যেsnippet.displayString
প্রপার্টির মান একটি নির্দিষ্ট ভাষার নিয়ম অনুসারে ফর্ম্যাট করা উচিত। সেই সম্পত্তির সংজ্ঞাও সেই অনুযায়ী আপডেট করা হয়েছে।প্যারামিটার মানটি অবশ্যই
i18nLanguages.list
পদ্ধতি দ্বারা প্রত্যাবর্তিত তালিকায় অন্তর্ভুক্ত একটি ভাষা কোড হতে হবে। ডিফল্ট মান হলen
, যার অর্থ হল ডিফল্ট আচরণ হল ডিসপ্লে স্ট্রিংগুলিকে ফরম্যাট করা যেভাবে সেগুলি ইংরেজিতে ব্যবহার করা হবে৷ উদাহরণস্বরূপ, ডিফল্টরূপে, একটি স্ট্রিং$1.00
এর পরিবর্তে$1,00
হিসাবে ফর্ম্যাট করা হয়।
ফেব্রুয়ারি 1, 2017
এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি রয়েছে:
নতুন সম্পদ এবং পদ্ধতি
নতুন
superChatEvent
রিসোর্স YouTube লাইভ স্ট্রিম চলাকালীন একজন ভক্তের দ্বারা কেনা একটি সুপার চ্যাট বার্তা উপস্থাপন করে। YouTube লাইভ চ্যাট স্ট্রীমে, সুপার চ্যাট দুটি উপায়ে অন্যান্য বার্তা থেকে আলাদা:- সুপার চ্যাট একটি রঙ দিয়ে হাইলাইট করা হয়।
- সুপার চ্যাট একটি নির্দিষ্ট সময়ের জন্য টিকারে পিন করা থাকে।
সুপার চ্যাটের রঙ, টিকারে এটি কতক্ষণ পিন করা থাকবে এবং সর্বাধিক বার্তার দৈর্ঘ্য সবই কেনার পরিমাণ দ্বারা নির্ধারিত হয়। YouTube সহায়তা কেন্দ্রে সুপার চ্যাট সম্পর্কে আরও তথ্য রয়েছে৷
API পূর্ববর্তী 30 দিনে একটি চ্যানেলের লাইভ স্ট্রিমগুলির জন্য সুপার চ্যাট ইভেন্টগুলি তালিকাভুক্ত করার একটি পদ্ধতি সমর্থন করে৷ সেই পদ্ধতিটি চ্যানেলের শেষ লাইভ স্ট্রীম থেকে ফ্যান ফান্ডিং ইভেন্ট (
fanFundingEvents
) সম্পর্কে ডেটাও ফেরত দেয়৷
বিদ্যমান সম্পদ এবং পদ্ধতির আপডেট
snippet.type
প্রপার্টি এখনsuperChatEvent
মানকে সমর্থন করে, যা নির্দেশ করে যে সম্পদ একটি সুপার চ্যাট বর্ণনা করে।এছাড়াও,
liveChatMessage
রিসোর্সের নতুনsnippet.superChatDetails
প্রপার্টি এবং এর বাচ্চাদের মধ্যে সুপার চ্যাট ইভেন্টের তথ্য রয়েছে।liveStream
রিসোর্সেরcdn.resolution
প্রপার্টি এখন2160p
মান সমর্থন করে।
নতুন এবং আপডেট ত্রুটি
API নিম্নলিখিত নতুন ত্রুটি সমর্থন করে:
ভুল তথ্য liveBroadcasts.insert
,liveBroadcasts.update
liveBroadcasts.insert
এবংliveBroadcasts.update
পদ্ধতিগুলি400
(Bad Request
) ত্রুটি প্রদান করে যেliveBroadcast
রিসোর্স ঢোকানো বা আপডেট করা হচ্ছে তাতেcontentDetails.enableEmbed
প্রপার্টি বাcontentDetails.projection
প্রপার্টির জন্য একটি অবৈধ মান রয়েছে৷ দুটি নতুন ত্রুটির ত্রুটির কারণ যথাক্রমেinvalidEmbedSetting
এবংinvalidProjection
।
জানুয়ারী 12, 2017
দ্রষ্টব্য: এটি একটি অবমূল্যায়ন ঘোষণা।
নতুন সুপার চ্যাট বৈশিষ্ট্য প্রকাশের সাথে সাথে, YouTube অনুরাগী অর্থায়ন বৈশিষ্ট্যটিকে অবমূল্যায়ন করেছে, এবং ফ্যান ফান্ডিং API 28 ফেব্রুয়ারি, 2017-এ বন্ধ হয়ে যাবে। সেই তারিখ থেকে:
-
liveChatMessages.list
পদ্ধতিfanFundingEvent
এরsnippet.type
সহ বার্তা ফেরত দেবে না। একইভাবে,liveChatMessage
রিসোর্সে আরsnippet.fanFundingEventDetails
অবজেক্ট থাকবে না। -
fanFundingEvents.list
পদ্ধতি আর ডেটা ফেরত দেবে না।
11 আগস্ট, 2016
এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি রয়েছে:
সদ্য প্রকাশিত YouTube API পরিষেবার পরিষেবার শর্তাবলী ("আপডেট করা শর্তাবলী"), যা YouTube ইঞ্জিনিয়ারিং এবং ডেভেলপারস ব্লগে বিশদভাবে আলোচনা করা হয়েছে, বর্তমান পরিষেবার শর্তাবলীতে আপডেটের একটি সমৃদ্ধ সেট প্রদান করে৷ আপডেট করা শর্তাদি ছাড়াও, যা 10 ফেব্রুয়ারী, 2017 থেকে কার্যকর হবে, এই আপডেটে অনেকগুলি সমর্থনকারী নথি অন্তর্ভুক্ত রয়েছে যা বিকাশকারীদের অনুসরণ করা আবশ্যক নীতিগুলি ব্যাখ্যা করতে সহায়তা করে৷
নতুন নথির সম্পূর্ণ সেট আপডেট করা শর্তাবলীর পুনর্বিবেচনার ইতিহাসে বর্ণনা করা হয়েছে। উপরন্তু, আপডেট করা শর্তাবলী বা সেই সমর্থনকারী নথিগুলিতে ভবিষ্যতের পরিবর্তনগুলিও সেই সংশোধন ইতিহাসে ব্যাখ্যা করা হবে। আপনি সেই নথির একটি লিঙ্ক থেকে সেই পুনর্বিবেচনার ইতিহাসে একটি RSS ফিড তালিকা পরিবর্তনের সদস্যতা নিতে পারেন।
20 মে, 2016
YouTube এখন DASH ইনজেশন সমর্থন করে৷ তদনুসারে, liveStream
রিসোর্সের ingestionType
প্রপার্টি DASH ব্যবহার করে YouTube-এ ইনজেস্ট করা স্ট্রীম শনাক্ত করতে নতুন মান dash
সমর্থন করে।
DASH গাইডের মাধ্যমে নতুন ডেলিভারিং লাইভ YouTube সামগ্রী একটি এনকোডার থেকে YouTube-এ লাইভ ডেটা স্ট্রিম করতে DASH ডেলিভারি ফর্ম্যাট ব্যবহার করার জন্য নির্দেশিকা প্রদান করে৷ এটি এনকোডার বিক্রেতাদের তাদের পণ্যগুলিতে DASH ডেলিভারি সমর্থন যোগ করতে সহায়তা করার উদ্দেশ্যে করা হয়েছে৷
এপ্রিল 18, 2016
এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি রয়েছে:
বিদ্যমান সম্পদ এবং পদ্ধতির আপডেট
-
liveStream
রিসোর্স আপডেটYouTube এখন প্রতি সেকেন্ডে 30 বা 60 ফ্রেমে 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
, প্রতি সেকেন্ডে 30 বা 60 ফ্রেমে 1440p স্ট্রীমের জন্য API-এর সমর্থন প্রতিফলিত করতে।
-
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
রিসোর্সে একটি অবৈধ সম্পত্তি মান সনাক্ত করে যা অনুরোধটি সন্নিবেশ করার চেষ্টা করেছিল৷ নিম্নলিখিত তালিকাটি ত্রুটির কারণ এবং বৈশিষ্ট্যগুলি চিহ্নিত করে যার সাথে তারা যুক্ত:-
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-এর শেষ ব্যবহারকারীদের কাছ থেকে সম্মতি নিতে হবে। তাই, ইউরোপীয় ইউনিয়নের শেষ ব্যবহারকারীদের জন্য, আপনাকে অবশ্যই EU ব্যবহারকারীর সম্মতি নীতি মেনে চলতে হবে। আমরা আমাদের YouTube API পরিষেবার শর্তাবলীতে এই প্রয়োজনীয়তার একটি বিজ্ঞপ্তি যুক্ত করেছি৷
ডিসেম্বর 17, 2015
এই আপডেটে নিম্নলিখিত পরিবর্তনগুলি রয়েছে:
নতুন সম্পদ এবং পদ্ধতি
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
এই সম্পত্তিটি 17 ডিসেম্বর, 2015 থেকে অবচয় করা হয়েছে। পরিবর্তে contentDetails.closedCaptionsType
প্রপার্টি ব্যবহার করুন। API ক্লায়েন্টদের জন্য যারা ইতিমধ্যে এই সম্পত্তি ব্যবহার করছেন:- সম্পত্তি মান
true
সেট করা হলcontentDetails.closedCaptionsType
প্রপার্টিclosedCaptionsHttpPost
এ সেট করার সমতুল্য। - সম্পত্তির মান
false
সেট করা হলcontentDetails.closedCaptionsType
প্রপার্টিclosedCaptionsDisabled
সেট করার সমতুল্য।
-
liveBroadcasts.list
পদ্ধতির নতুনbroadcastType
প্যারামিটার আপনাকে ইভেন্ট সম্প্রচার, অবিরাম সম্প্রচার বা সমস্ত সম্প্রচার অন্তর্ভুক্ত করতে একটি API প্রতিক্রিয়া ফিল্টার করতে দেয়৷একটি ক্রমাগত সম্প্রচার এমন একটি যা সর্বদা বিদ্যমান এবং একটি নির্দিষ্ট ঘটনার সাথে আবদ্ধ নয়। বিশেষ করে, একটি চ্যানেলের ডিফল্ট সম্প্রচার একটি স্থায়ী সম্প্রচার, এবং এটি YouTube ক্রিয়েটর স্টুডিওতে লাইভ ড্যাশবোর্ডের মাধ্যমে অ্যাক্সেসযোগ্য। চ্যানেলের অন্যান্য সম্প্রচার হল ইভেন্ট সম্প্রচার।
liveStream
রিসোর্সেরstatus.healthStatus.configurationIssues[].type
ফিল্ড নিম্নলিখিত নতুন স্বাস্থ্য স্থিতি ত্রুটির রিপোর্ট করে:ত্রুটি audioTooManyChannels
অডিওটিতে দুটির বেশি চ্যানেল রয়েছে, তবে শুধুমাত্র একটি (মনো) বা দুটি (স্টিরিও) চ্যানেল সমর্থিত৷ 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:
Error details liveBroadcasts.update
HTTP Response Code forbidden (403)
Reason closedCaptionsTypeModificationNotAllowed
Description The contentDetails.closedCaptionsType
value can only be modified when the broadcast is in thecreated
orready
status.liveBroadcasts.update
HTTP Response Code invalidValue (400)
Reason invalidEnableClosedCaptions
Description In the liveBroadcast resource , the value of the contentDetails.enableClosedCaptions
property is incompatible with the value of thecontentDetails.closedCaptionType
setting. Modify the resource to only include one of the two properties, and then resubmit the request.
August 19, 2015
This update contains the following changes:
New resources and methods
Note: Documentation for the
liveChat
resource and its methods is confidential and only visible to select YouTube partners.The new
liveChat
resource contains a comment posted during a live broadcast on YouTube. The API supports two methods for this resource:Methods 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: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:Properties snippet.isDefaultBroadcast
Indicates whether this broadcast is the default broadcast for the channel. When a YouTube channel is enabled for live streaming, YouTube creates a default stream and a default broadcast for the channel. The stream defines how the channel owner sends live video to YouTube, and the broadcast is how viewers can see the default stream. See the property's definition for more information about how default broadcasts work. contentDetails.enableLowLatency
Indicates whether this broadcast should be encoded for low-latency streaming. A low-latency stream can reduce the amount of time it takes for video to be visible to users watching a broadcast, though it can also impact the resolution for viewers of the stream. statistics.totalChatCount
The total number of live chat messages associated with the broadcast. The property and its value are present if the broadcast is visible to the user and has the live chat feature enabled. Note that this property will not specify a value after the broadcast ends. So, this property would not identify the number of chat messages for an archived video of a completed live broadcast.
New and updated errors
In addition to errors defined for the new
liveChat
resource, the API supports the following new error:Error details liveStreams.update
HTTP Response Code forbidden (403)
Reason liveStreamModificationNotAllowed
Description The API does not allow you to change a reusable stream to be non-reusable, or vice versa. For more information, see Understanding Broadcasts and Streams
May 21, 2015
This update contains the following changes:
YouTube now supports live video streaming at 60 frames per second (fps), which means smoother playback for gaming and other fast-action videos. When you start a live stream on YouTube at 60fps, YouTube also makes the stream available in 30fps on devices where high-frame-rate viewing is not yet available.
The
liveStream
resource'scdn.format
property supports two new values for this feature:720p_hfr
and1080p_hfr
.See the YouTube Creators Blog for more information about this feature.
August 21, 2014
This update contains the following changes:
The definition of the
liveBroadcasts.control
method'swalltime
parameter has been updated to note that the property value is specified in ISO 8601 format (YYYY-MM-DDThh:mm:ss.sssZ
).The API now supports the following errors:
Error type Error detail Description insufficientPermissions
liveStreamingNotEnabled
All methods for the liveBroadcast
andliveStream
resources return this error if the user that authorized the API request has not been enabled to stream live video on YouTube. Details explaining why the user cannot stream live video may be available in the user's channel settings at https://www.youtube.com/features .rateLimitExceeded
userRequestsExceedRateLimit
The liveBroadcasts.insert
andliveStreams.insert
methods both return this error to indicate that the user has sent too many requests within a given timeframe.
May 2, 2014
This update contains the following changes:
The descriptions of the
liveStream
resource and of theliveBroadcasts.bind
method have been updated to note that a broadcast can only be bound to one video stream, but a video stream can be bound to more than one broadcast. This change is solely a correction to the documentation; the underlying API functionality has not changed.The
liveBroadcast
resource'scontentDetails.monitorStream.enableMonitorStream
property has been updated to explain that if the property's value istrue
, then you must transition your broadcast to thetesting
state before you can transition it to thelive
state. (If the property's value isfalse
, your broadcast cannot have atesting
stage, so you can transition the broadcast directly to thelive
state.The
liveCuepoint
resource'ssettings.offsetTimeMs
property has been updated to note that you should not specify a value for the property if your broadcast does not have a monitor stream.All of the methods for the
liveBroadcast
andliveStream
resources now support theonBehalfOfContentOwner
andonBehalfOfContentOwnerChannel
parameters. These parameters allow you to use the same authorization credentials to complete API requests for different channels associated with the same content owner.The
liveCuepoints.insert
method's documentation has been updated to note that you can set a value for thesettings.walltime
property when calling that method.The error documentation now specifies the HTTP response code for each error type.
The API now supports the following error:
Error type Error detail Description insufficientPermissions
livePermissionBlocked
The liveBroadcasts.insert
,liveBroadcasts.transition
, andliveStreams.insert
methods return this error if the user that authorized the request is unable to stream live video on YouTube. Details explaining why the user cannot stream live video may be available in the user's channel settings at https://www.youtube.com/features .The
liveBroadcasts.insert
method'sinvalidScheduledStartTime
error has been updated to clarify that the scheduled start time must be close enough to the current date that a broadcast could be reliably scheduled at that time.
December 13, 2013
This update contains the following changes:
The
liveBroadcast
resource's newstatus.recordingStatus
property identifies the broadcast's current status.The
liveBroadcast
resource's newcontentDetails.enableClosedCaptions
property indicates whether closed captions can be ingested for the broadcast. The property value can be set when you insert or update a broadcast, but it cannot be updated once the broadcast is in thetesting
orlive
state. If you set this property totrue
, then theliveStream
resource that is bound to the broadcast will specify the ingestion URL to use for the broadcast's closed captions.The
liveBroadcast
resource'ssnippet.scheduledEndTime
property now supports broadcasts that are scheduled to continue indefinitely. With this change, the property is no longer required inliveBroadcasts.insert
andliveBroadcasts.update
requests.
If you retrieve aliveBroadcast
resource that does not specify a value for this property, then the broadcast is scheduled to continue indefinitely. Similarly, if you call theliveBroadcasts.insert
orliveBroadcasts.update
method and do not specify a value for this property, the broadcast will be scheduled to continue indefinitely.The
liveBroadcast
resource'scontentDetails.recordFromStart
property, which already had a default value oftrue
, can now only be set tofalse
if the broadcasting channel is allowed to disable recordings for live broadcasts.If your channel does not have permission to disable recordings, and you attempt to insert a broadcast with the
recordFromStart
property set tofalse
, the API will return aForbidden
error. In addition, if your channel does not have that permission and you attempt to update a broadcast to set therecordFromStart
property tofalse
, the API will return amodificationNotAllowed
error.The
liveBroadcast
resource no longer contains anenableArchive
property, which had been mentioned in the descriptions of thecontentDetails.enableDvr
andcontentDetails.enableEmbed
properties.The list of valid values for the
liveBroadcast
resource'sstatus.lifeCycleStatus
property has been updated to include a description of each status.The
liveCuepoint
resource's newsettings.walltime
property specifies the date and time at which the cuepoint should be inserted. The API returns an error if a request tries to insert a cuepoint that specifies a value for this property and for thesettings.offsetTimeMs
property.The new
contentDetails
object in aliveStream
resource contains information about the stream. Currently, the object's only property iscontentDetails.closedCaptionsIngestionUrl
, which specifies the ingestion URL for closed captions associated with the video stream.The list of valid values for the
liveStream
resource'sstatus.streamStatus
property has been updated to include a description of each status.The
liveBroadcasts.control
method's newwalltime
parameter lets you specify the date and time when a slate change will occur. The API returns an error if a request specifies a value for this parameter and for theoffsetTimeMs
parameter.In the API response to a
liveBroadcasts.list
request, the value of thekind
property has changed fromyoutube#liveBroadcastList
toyoutube#liveBroadcastListResponse
.In the API response to a
liveStreams.list
request, the value of thekind
property has changed fromyoutube#liveStreamList
toyoutube#liveStreamListResponse
.The
eventId
property has been deprecated from both theliveBroadcastListResponse
and theliveStreamListResponse
.The API supports the following new errors:
Error type Error detail Description invalidValue
conflictingTimeFields
The liveBroadcasts.control
method returns this error if your request specifies values for theoffsetTimeMs
andwalltime
parameters. A request can either omit both parameters or specify a value for one of the two parameters.invalidValue
invalidWalltime
The liveBroadcasts.control
method returns this error if thewalltime
parameter's value is invalid.forbidden
enableClosedCaptionsModificationNotAllowed
The liveBroadcasts.update
method returns this error if you attempt to update thecontentDetails.enableClosedCaptions
value and the broadcast's status is notcreated
orready
.invalidValue
conflictingTimeFields
The liveCuepoints.insert
method returns this error if your request specifies values for thesettings.offsetTimeMs
andsettings.walltime
properties. A request can either omit both properties or specify a value for one of the two properties.In addition, the
liveStreams.update
method no longer supports acdnRequired
error similar to the one that theliveStreams.insert
method supports.
May 10, 2013
This update contains the following changes:
YouTube no longer identifies experimental API features and services. Instead, we now provide a list of YouTube APIs that are subject to the deprecation policy .
May 2, 2013
This update contains the following changes:
The new
liveBroadcasts.control
method enables you to toggle the display settings for a slate that displays in the broadcast stream for a broadcast that is already in progress. If your broadcast stream is delayed, you can also use this method to specify a time offset when the requested slate change will occur.The definitions of the following properties have been updated to explain that the property values must be set if you update a
liveBroadcast
resource'scontentDetails
part:The
liveStream
resource'sstatus.streamStatus
no longer supports the valuedeleted
as a possible stream status.The information that the API returns for many error messages has been revised to better explain why particular errors occurred. The API also supports several new errors.
March 27, 2013
This update contains the following changes:
The following properties have changed in the
liveBroadcast
resource:- The
startWithSlateCuepoint
property has been renamed tostartWithSlate
. - The
enableArchive
property has been renamed torecordFromStart
. - The
slateSettings
object has been deprecated and removed from the documentation. Error messages related to theslateSettings
object or its properties have also been removed. Finally, the "Displaying Slates" section of the Getting started guide has been removed.
- The
The API no longer supports the ability to insert in-stream slates using the
liveCuepoints.insert
method. The following documents have been updated to reflect this change:The index page , Getting started guide, and Life of a broadcast tutorial no longer mention this functionality.
The
liveCuepoint
resource'ssettings.cueType
property no longer supportsslate
as a property value. (The only supported value isad
.The
liveCuepoint
resource'ssettings.eventState
property has been deprecated and removed from the documentation.
March 18, 2013
This update contains the following changes:
All of the API's error messages have been updated to more clearly explain possible errors and, when possible, offer guidance about how to fix them.
The API may now return several new errors. The list below identifies the error and the API method that might return that error:
-
liveBroadcasts.insert
– A broadcast's scheduled end time must be after its scheduled start time. -
liveBroadcasts.insert
– The broadcast specifies an invalid privacy status. -
liveBroadcasts.update
– The resource does not contain or does not set a value for thecontentDetails.enableArchive
property. -
liveBroadcasts.update
– The resource does not contain or does not set a value for thecontentDetails.enableContentEncryption
property. -
liveBroadcasts.update
– The resource does not contain or does not set a value for thecontentDetails.enableDvr
property. -
liveStreams.insert
– The snippet title must be between 1 and 128 characters long. -
liveStreams.update
– The resource does not contain or does not set a value for thesnippet.title
property.
-
The
liveStream
resource documentation has been updated to reflect that multicast and WebM are not supported ingestion methods as previously indicated. The list of formats for thecdn.format
property has been updated accordingly, and thecdn.multicastIngestionInfo
object and its child properties have been removed from the resource's documentation. In addition,http
has been removed from the list of supportedcdn.ingestionType
values.