এই পৃষ্ঠাটি একটি ভালো ব্যবহারকারীর অভিজ্ঞতা নিশ্চিত করার জন্য Google Meet Media API ক্লায়েন্ট ভিডিও কোডেকের মৌলিক প্রয়োজনীয়তাগুলি প্রদান করে।
কার্যকরী প্রয়োজনীয়তা
এই বিভাগটি কোডেক প্রকার এবং বৈশিষ্ট্যগুলির জন্য প্রয়োজনীয়তাগুলি নির্দিষ্ট করে।
| বৈশিষ্ট্য | প্রয়োজনীয়তা | ||
|---|---|---|---|
| প্রোফাইলের | AV1 সম্পর্কে | ভিপি৯ | ভিপি৮ |
Main | Profile 0 | নিষিদ্ধ | |
| স্কেলেবিলিটি | প্রদত্ত কোডেক টাইপ এবং প্রোফাইলের জন্য কোডিং স্পেসিফিকেশন অনুসারে ডিকোডারকে অবশ্যই টেম্পোরাল স্কেলেবিলিটি, স্পেশাল স্কেলেবিলিটি, অথবা উভয়ই সমর্থন করতে হবে। | ||
| কাঁচা ভিডিও ফর্ম্যাট | কোডেককে অবশ্যই বিজোড় রেজোলিউশন প্রক্রিয়া করতে সক্ষম হতে হবে (যেমন যখন ফ্রেমের প্রস্থ বা উচ্চতা 2 এর গুণিতক নয়; উদাহরণস্বরূপ, 133 × 141)। সাবস্যাম্পলড ক্রোমা ফর্ম্যাটের জন্য, লুমা নমুনার সংখ্যা থেকে প্রাপ্ত করার সময় প্রতি মাত্রায় ক্রোমা নমুনার সংখ্যা পূর্ণসংখ্যা করতে হবে। ক্রপিং, প্যাডিং বা স্কেলিং অনুমোদিত নয়। আউটপুট ফ্রেমের রেজোলিউশন অবশ্যই ইনপুট ফ্রেমের রেজোলিউশনের সাথে মিলতে হবে। | ||
অপারেশনাল প্রয়োজনীয়তা
এই বিভাগটি বিভিন্ন অবস্থার জন্য প্রয়োজনীয়তা নির্দিষ্ট করে যেখানে ভিডিও কোডেক কাজ করবে বলে আশা করা হচ্ছে। এই প্রয়োজনীয়তা লঙ্ঘন করলে কোডেকের ব্যবহার পরিস্থিতির একটি উপসেটের মধ্যে সীমাবদ্ধ থাকতে পারে কিন্তু এটি ব্যবহার করা থেকে বিরত থাকে না। উদাহরণস্বরূপ, যদি কোডেক ইনস্ট্যান্সের সর্বাধিক সংখ্যক প্রয়োজনের চেয়ে কম হয়, তবুও কোডেকটি অন্যান্য ধরণের বা বাস্তবায়নের কোডেকগুলির সাথে একসাথে ব্যবহার করা যেতে পারে।
| প্যারামিটার | প্রয়োজনীয়তা | |||
|---|---|---|---|---|
| সর্বনিম্ন রেজোলিউশন, পিক্সেল | ≤ ১২৮ × ১২৮ | |||
| সর্বোচ্চ রেজোলিউশন, পিক্সেল | ≥ ২৮৮০ × ১৮০০ | |||
| সর্বনিম্ন ফ্রেম রেট, FPS | ≤ ১ | |||
| সর্বোচ্চ ফ্রেম রেট, FPS | ≥ ৩০ | |||
| সর্বনিম্ন বিটরেট, কেবিপিএস | ≤ ৩০ | |||
| সর্বোচ্চ বিটরেট, কেবিপিএস | ≥ ৫০০০ | |||
| সর্বাধিক ডিকোডার দৃষ্টান্ত | ≥ ৩ | |||
| সর্বোচ্চ মোট ডিকোড থ্রুপুট, প্রতি সেকেন্ডে পিক্সেল | ≥ ৩ × ২৮৮০ × ১৮৮০ × ৩০ | |||
কর্মক্ষমতা প্রয়োজনীয়তা
এই বিভাগটি কোডেক কর্মক্ষমতার প্রয়োজনীয়তাগুলি নির্দিষ্ট করে। এই প্রয়োজনীয়তাগুলি লঙ্ঘন করলে ব্যবহারকারীর অভিজ্ঞতা উল্লেখযোগ্যভাবে প্রভাবিত হতে পারে এবং প্রায় নিশ্চিতভাবেই কোডেকের ব্যবহার বন্ধ হয়ে যাবে।
| প্যারামিটার | প্রয়োজনীয়তা |
|---|---|
| সর্বোচ্চ ইন্টারফ্রেম প্রক্রিয়াকরণ সময়, সেকেন্ড | ≤ 1 / max(30, encode_target_frame_rate_fps) |
| সর্বাধিক কী ফ্রেম প্রক্রিয়াকরণ সময়, সেকেন্ড | ≤ 2 / max(30, encode_target_frame_rate_fps) |
ফ্রেম প্রক্রিয়াকরণ সময় হল দুটি ইভেন্টের মধ্যে সময়ের পার্থক্য: ১) কোডেক ফ্রেম সরবরাহ করে এবং ২) কোডেক ফ্রেম গ্রহণ করে। গড় ফ্রেম প্রক্রিয়াকরণ সময় কমপক্ষে ১০ সেকেন্ড সময়কালের একটি স্লাইডিং উইন্ডোতে গণনা করা হয় যেখানে কমপক্ষে ১০টি ফ্রেম থাকে। সর্বাধিক ফ্রেম প্রক্রিয়াকরণ সময় হল সমস্ত পৃথক ফ্রেম প্রক্রিয়াকরণ সময় মানের মধ্যে সর্বোচ্চ মান।
থ্রুপুট গণনা করা হয় প্রক্রিয়াজাত ফ্রেমের সংখ্যা, বাদ পড়া ফ্রেমগুলি সহ, দুটি ইভেন্টের মধ্যে টাইম ডেল্টা দ্বারা ভাগ করে: 1) কোডেক শেষ ফ্রেম সরবরাহ করে এবং 2) কোডেক প্রথম ফ্রেম সরবরাহ করে।
পরীক্ষার কেস
নিম্নলিখিত পরীক্ষার কেসগুলি আপনি ব্যবহার করতে পারেন:
| পরীক্ষা | |
|---|---|
| ডিকোড থ্রুপুট | একসাথে তিনটি ২৮৮০ × ১৮৮০ × ৩০ স্ট্রিম ডিকোড করুন এবং যাচাই করুন যে ডিকোডারগুলি কর্মক্ষমতা প্রয়োজনীয়তা লঙ্ঘন করে না। |
| ডিকোডারের সাথে সামঞ্জস্য | আগে থেকে এনকোড করা বিটস্ট্রিমের একটি সেট ডিকোড করুন। টেস্ট ডিকোডারের আউটপুট অবশ্যই একটি রেফারেন্স ডিকোডারের আউটপুটের সাথে মিলবে (VP8 এবং VP9 এর জন্য libvpx , AV1 এর জন্য libaom )। |
| টেম্পোরাল স্কেলেবিলিটি | একাধিক টেম্পোরাল লেয়ার (২ এবং ৩) দিয়ে ভিডিও ডিকোড করুন। টেস্ট ডিকোডারের আউটপুট অবশ্যই রেফারেন্স ডিকোডারের আউটপুটের সাথে মিলবে। |
| স্থানিক স্কেলেবিলিটি | একাধিক স্থানিক স্তর (২ এবং ৩) ব্যবহার করে ভিডিও ডিকোড করুন। পরীক্ষার ডিকোডারের আউটপুট অবশ্যই রেফারেন্স ডিকোডারের আউটপুটের সাথে মিলবে। |
সম্পর্কিত বিষয়
,এই পৃষ্ঠাটি একটি ভালো ব্যবহারকারীর অভিজ্ঞতা নিশ্চিত করার জন্য Google Meet Media API ক্লায়েন্ট ভিডিও কোডেকের মৌলিক প্রয়োজনীয়তাগুলি প্রদান করে।
কার্যকরী প্রয়োজনীয়তা
এই বিভাগটি কোডেক প্রকার এবং বৈশিষ্ট্যগুলির জন্য প্রয়োজনীয়তাগুলি নির্দিষ্ট করে।
| বৈশিষ্ট্য | প্রয়োজনীয়তা | ||
|---|---|---|---|
| প্রোফাইলের | AV1 সম্পর্কে | ভিপি৯ | ভিপি৮ |
Main | Profile 0 | নিষিদ্ধ | |
| স্কেলেবিলিটি | প্রদত্ত কোডেক টাইপ এবং প্রোফাইলের জন্য কোডিং স্পেসিফিকেশন অনুসারে ডিকোডারকে অবশ্যই টেম্পোরাল স্কেলেবিলিটি, স্পেশাল স্কেলেবিলিটি, অথবা উভয়ই সমর্থন করতে হবে। | ||
| কাঁচা ভিডিও ফর্ম্যাট | কোডেককে অবশ্যই বিজোড় রেজোলিউশন প্রক্রিয়া করতে সক্ষম হতে হবে (যেমন যখন ফ্রেমের প্রস্থ বা উচ্চতা 2 এর গুণিতক নয়; উদাহরণস্বরূপ, 133 × 141)। সাবস্যাম্পলড ক্রোমা ফর্ম্যাটের জন্য, লুমা নমুনার সংখ্যা থেকে প্রাপ্ত করার সময় প্রতি মাত্রায় ক্রোমা নমুনার সংখ্যা পূর্ণসংখ্যা করতে হবে। ক্রপিং, প্যাডিং বা স্কেলিং অনুমোদিত নয়। আউটপুট ফ্রেমের রেজোলিউশন অবশ্যই ইনপুট ফ্রেমের রেজোলিউশনের সাথে মিলতে হবে। | ||
অপারেশনাল প্রয়োজনীয়তা
এই বিভাগটি বিভিন্ন অবস্থার জন্য প্রয়োজনীয়তা নির্দিষ্ট করে যেখানে ভিডিও কোডেক কাজ করবে বলে আশা করা হচ্ছে। এই প্রয়োজনীয়তা লঙ্ঘন করলে কোডেকের ব্যবহার পরিস্থিতির একটি উপসেটের মধ্যে সীমাবদ্ধ থাকতে পারে কিন্তু এটি ব্যবহার করা থেকে বিরত থাকে না। উদাহরণস্বরূপ, যদি কোডেক ইনস্ট্যান্সের সর্বাধিক সংখ্যক প্রয়োজনের চেয়ে কম হয়, তবুও কোডেকটি অন্যান্য ধরণের বা বাস্তবায়নের কোডেকগুলির সাথে একসাথে ব্যবহার করা যেতে পারে।
| প্যারামিটার | প্রয়োজনীয়তা | |||
|---|---|---|---|---|
| সর্বনিম্ন রেজোলিউশন, পিক্সেল | ≤ ১২৮ × ১২৮ | |||
| সর্বোচ্চ রেজোলিউশন, পিক্সেল | ≥ ২৮৮০ × ১৮০০ | |||
| সর্বনিম্ন ফ্রেম রেট, FPS | ≤ ১ | |||
| সর্বোচ্চ ফ্রেম রেট, FPS | ≥ ৩০ | |||
| সর্বনিম্ন বিটরেট, কেবিপিএস | ≤ ৩০ | |||
| সর্বোচ্চ বিটরেট, কেবিপিএস | ≥ ৫০০০ | |||
| সর্বাধিক ডিকোডার দৃষ্টান্ত | ≥ ৩ | |||
| সর্বোচ্চ মোট ডিকোড থ্রুপুট, প্রতি সেকেন্ডে পিক্সেল | ≥ ৩ × ২৮৮০ × ১৮৮০ × ৩০ | |||
কর্মক্ষমতা প্রয়োজনীয়তা
এই বিভাগটি কোডেক কর্মক্ষমতার প্রয়োজনীয়তাগুলি নির্দিষ্ট করে। এই প্রয়োজনীয়তাগুলি লঙ্ঘন করলে ব্যবহারকারীর অভিজ্ঞতা উল্লেখযোগ্যভাবে প্রভাবিত হতে পারে এবং প্রায় নিশ্চিতভাবেই কোডেকের ব্যবহার বন্ধ হয়ে যাবে।
| প্যারামিটার | প্রয়োজনীয়তা |
|---|---|
| সর্বোচ্চ ইন্টারফ্রেম প্রক্রিয়াকরণ সময়, সেকেন্ড | ≤ 1 / max(30, encode_target_frame_rate_fps) |
| সর্বাধিক কী ফ্রেম প্রক্রিয়াকরণ সময়, সেকেন্ড | ≤ 2 / max(30, encode_target_frame_rate_fps) |
ফ্রেম প্রক্রিয়াকরণ সময় হল দুটি ইভেন্টের মধ্যে সময়ের পার্থক্য: ১) কোডেক ফ্রেম সরবরাহ করে এবং ২) কোডেক ফ্রেম গ্রহণ করে। গড় ফ্রেম প্রক্রিয়াকরণ সময় কমপক্ষে ১০ সেকেন্ড সময়কালের একটি স্লাইডিং উইন্ডোতে গণনা করা হয় যেখানে কমপক্ষে ১০টি ফ্রেম থাকে। সর্বাধিক ফ্রেম প্রক্রিয়াকরণ সময় হল সমস্ত পৃথক ফ্রেম প্রক্রিয়াকরণ সময় মানের মধ্যে সর্বোচ্চ মান।
থ্রুপুট গণনা করা হয় প্রক্রিয়াজাত ফ্রেমের সংখ্যা, বাদ পড়া ফ্রেমগুলি সহ, দুটি ইভেন্টের মধ্যে টাইম ডেল্টা দ্বারা ভাগ করে: 1) কোডেক শেষ ফ্রেম সরবরাহ করে এবং 2) কোডেক প্রথম ফ্রেম সরবরাহ করে।
পরীক্ষার কেস
নিম্নলিখিত পরীক্ষার কেসগুলি আপনি ব্যবহার করতে পারেন:
| পরীক্ষা | |
|---|---|
| ডিকোড থ্রুপুট | একসাথে তিনটি ২৮৮০ × ১৮৮০ × ৩০ স্ট্রিম ডিকোড করুন এবং যাচাই করুন যে ডিকোডারগুলি কর্মক্ষমতা প্রয়োজনীয়তা লঙ্ঘন করে না। |
| ডিকোডারের সাথে সামঞ্জস্য | আগে থেকে এনকোড করা বিটস্ট্রিমের একটি সেট ডিকোড করুন। টেস্ট ডিকোডারের আউটপুট অবশ্যই একটি রেফারেন্স ডিকোডারের আউটপুটের সাথে মিলবে (VP8 এবং VP9 এর জন্য libvpx , AV1 এর জন্য libaom )। |
| টেম্পোরাল স্কেলেবিলিটি | একাধিক টেম্পোরাল লেয়ার (২ এবং ৩) দিয়ে ভিডিও ডিকোড করুন। টেস্ট ডিকোডারের আউটপুট অবশ্যই রেফারেন্স ডিকোডারের আউটপুটের সাথে মিলবে। |
| স্থানিক স্কেলেবিলিটি | একাধিক স্থানিক স্তর (২ এবং ৩) ব্যবহার করে ভিডিও ডিকোড করুন। পরীক্ষার ডিকোডারের আউটপুট অবশ্যই রেফারেন্স ডিকোডারের আউটপুটের সাথে মিলবে। |