متطلبات برامج ترميز الفيديو لواجهة برمجة التطبيقات Meet Media API
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
توفّر هذه الصفحة المتطلبات الأساسية لبرامج ترميز الفيديو الخاصة بعميل Google Meet Media API لضمان توفير تجربة جيدة للمستخدمين.
المتطلبات الوظيفية
يحدّد هذا القسم متطلبات أنواع برامج الترميز وميزاتها.
الميزة
المتطلبات
الملف الشخصي
AV1
VP9
VP8
Main
Profile 0
لا ينطبق
قابلية التطور
يجب أن يتيح برنامج الترميز إمكانية التوسّع الزمني أو إمكانية التوسّع المكاني أو كليهما إذا كانت مواصفات الترميز تتطلّب ذلك لنوع برنامج الترميز والملف الشخصي المحدّدين.
تنسيق الفيديو الأوّلي
يجب أن يكون برنامج الترميز قادرًا على معالجة درجات الدقة الفردية (مثلما يكون عرض الإطار أو ارتفاعه ليس مضاعفًا للرقم 2، على سبيل المثال، 133 × 141). بالنسبة إلى تنسيقات Chroma التي تم أخذ عيّنات منها، يجب تقريب عدد عيّنات Chroma لكل بُعد إلى أقرب عدد صحيح عند اشتقاقه من عدد عيّنات Luma.
لا يُسمح بالاقتصاص أو إضافة مساحة فارغة أو تغيير الحجم. يجب أن تتطابق درجة دقة إطار الإخراج مع درجة دقة إطار الإدخال.
متطلبات التشغيل
يحدّد هذا القسم متطلبات لمختلف الظروف التي من المتوقّع أن يعمل فيها برنامج ترميز الفيديو. قد تؤدي مخالفة هذه المتطلبات إلى حصر استخدام الترميز على مجموعة فرعية من السيناريوهات، ولكن لا يمنع ذلك بالضرورة استخدامه. على سبيل المثال، إذا كان الحد الأقصى لعدد مثيلات الترميز والتشفير أقل من العدد المطلوب، سيظل بإمكانك استخدام الترميز والتشفير مع ترميزات وتشفيرات من أنواع أو عمليات تنفيذ أخرى.
المَعلمة
المتطلبات
الحد الأدنى للدقة، بالبكسل
≤ 128 × 128
الحد الأقصى للدقة، بالبكسل
≥ 2880 × 1800
الحدّ الأدنى لعدد اللقطات في الثانية
≤ 1
الحد الأقصى لعدد اللقطات في الثانية
≥ 30
الحدّ الأدنى لمعدّل نقل البيانات، كيلوبت في الثانية
≤ 30
الحد الأقصى لمعدل نقل البيانات بالكيلوبت في الثانية
≥ 5000
الحدّ الأقصى لعدد مثيلات برنامج فك الترميز
≥ 3
الحد الأقصى لإجمالي معدل نقل البيانات لفك الترميز، بالبكسل في الثانية
≥ 3 × 2880 × 1880 × 30
متطلبات الأداء
يحدّد هذا القسم متطلبات أداء الترميز. قد يؤدي عدم استيفاء هذه المتطلبات إلى التأثير بشكل كبير في تجربة المستخدم، ومن المؤكّد تقريبًا أنّه سيتم حظر استخدام الترميز.
المَعلمة
المتطلبات
الحد الأقصى لوقت معالجة اللقطات المتتالية، بالثواني
≤ 1 / max(30, encode_target_frame_rate_fps)
الحدّ الأقصى لوقت معالجة الإطار الرئيسي، بالثواني
≤ 2 / max(30, encode_target_frame_rate_fps)
وقت معالجة اللقطة هو الفرق الزمني بين حدثَين: 1) يقدّم برنامج الترميز اللقطة و2) يتلقّى برنامج الترميز اللقطة. يتم احتساب متوسط وقت معالجة اللقطة على مدار فترة زمنية متغيرة لا تقل عن 10 ثوانٍ تتضمّن 10 لقطات على الأقل. الحد الأقصى لوقت معالجة اللقطة هو أعلى قيمة بين جميع قيم وقت معالجة اللقطات الفردية.
يتم احتساب معدّل نقل البيانات على أنّه عدد اللقطات التي تمت معالجتها، بما في ذلك اللقطات التي تم إسقاطها، مقسومًا على الفرق الزمني بين الحدثين التاليين: 1) يقدّم برنامج الترميز آخر لقطة، و2) يقدّم برنامج الترميز أول لقطة.
أُطُر الاختبار
في ما يلي حالات الاختبار التي يمكنك استخدامها:
الاختبارات
سرعة معالجة البيانات لفك الترميز
فك ترميز ما يصل إلى ثلاثة فيديوهات بدقة 2880 × 1880 × 30 في الوقت نفسه والتحقّق من أنّ برامج فك الترميز لا تخالف متطلبات الأداء.
مطابقة برنامج فك الترميز
فك ترميز مجموعة من تدفقات البتات المرمّزة مسبقًا يجب أن تتطابق نتائج برنامج فك الترميز التجريبي مع نتائج برنامج فك الترميز المرجعي (libvpx لبرامج VP8 وVP9، وlibaom لبرنامج AV1).
قابلية التوسّع المؤقت
فك ترميز الفيديو باستخدام طبقات زمنية متعددة (2 و3) يجب أن تتطابق مخرجات أداة فك الترميز التجريبية مع مخرجات أداة فك الترميز المرجعية.
قابلية التوسّع المكاني
فك ترميز فيديو يتضمّن طبقات مكانية متعدّدة (2 و3) يجب أن تتطابق مخرجات أداة فك الترميز الاختبارية مع مخرجات أداة فك الترميز المرجعية.
تاريخ التعديل الأخير: 2025-08-29 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-08-29 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Video codec requirements for Meet Media API\n\n| **Developer Preview:** Available as part of the [Google Workspace Developer Preview Program](https://developers.google.com/workspace/preview), which grants early access to certain features. \n|\n| **To use the Meet Media API to access real-time media from a conference, the Google Cloud project, OAuth principal, and all participants in the conference must be enrolled in the Developer Preview Program.**\n\nThis page provides the basic requirements for Google Meet Media API client video\ncodecs to ensure a good user experience.\n\nFunctional requirements\n-----------------------\n\nThis section specifies the requirements for the codec types and features.\n\n| Feature | Requirement |||\n|------------------|--------|-------------|-----|\n| Profile | AV1 | VP9 | VP8 |\n| Profile | `Main` | `Profile 0` | N/A |\n| Scalability | Decoder must support temporal scalability, spatial scalability, or both if required by the coding specification for given codec type and profile. |||\n| Raw video format | Codec must be capable of processing odd resolutions (such as when frame width or height are not multiple of 2; for example, 133 × 141). For subsampled chroma formats, the number of chroma samples per dimension must be rounded up when derived from the number of luma samples. Cropping, padding, or scaling isn't allowed. Resolution of the output frame must match the resolution of the input frame. |||\n\nOperational requirements\n------------------------\n\nThis section specifies requirements for various conditions the video codec is\nexpected to operate in. Violation of these requirements may restrict the usage\nof the codec to a subset of scenarios but doesn't necessarily prevent it from\nbeing used. For example, if the maximum number of codec instances is less than\nrequired, the codec can still be used together with codecs of other types or\nimplementations.\n\n| Parameter | Requirement |\n|----------------------------------------------------|---------------|---|---|---|\n| Minimum resolution, pixels | ≤ 128 × 128 |\n| Maximum resolution, pixels | ≥ 2880 × 1800 |\n| Minimum frame rate, FPS | ≤ 1 |\n| Maximum frame rate, FPS | ≥ 30 |\n| Minimum bitrate, kbps | ≤ 30 |\n| Maximum bitrate, kbps | ≥ 5000 |\n| Maximum decoder instances | ≥ 3 |\n| Maximum total decode throughput, pixels per second | ≥ 3 × 2880 × 1880 × 30 ||||\n\nPerformance requirements\n------------------------\n\nThis section specifies the requirements on codec performance. Violation of these\nrequirements may significantly impact the user experience and will almost\ncertainly block the usage of the codec.\n\n| Parameter | Requirement |\n|----------------------------------------------|-----------------------------------------------|\n| Maximum inter frame processing time, seconds | ≤ `1 / max(30, encode_target_frame_rate_fps)` |\n| Maximum key frame processing time, seconds | ≤ `2 / max(30, encode_target_frame_rate_fps)` |\n\nThe frame processing time is the time difference between two events: 1) codec\ndelivers the frame and 2) codec receives the frame. The average frame processing\ntime is calculated over a sliding window of at least **10 seconds** duration\nholding at least **10 frames**. The maximum frame processing time is the highest\nvalue among all individual frame processing time values.\n\nThe throughput is calculated as the number of processed frames, including\ndropped ones, divided by time delta between the two events: 1) codec delivers\nthe last frame and 2) codec delivers the first frame.\n\nTest cases\n----------\n\nThe following are test cases you can use:\n\n| Tests |\n|----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Decode throughput | Decode up to three 2880 × 1880 × 30 streams simultaneously and verify that decoders don't violate the performance requirements. |\n| Decoder conformance | Decode a set of pre-encoded bitstreams. The output of the test decoder must match the output of a reference decoder (`libvpx` for VP8 \\& VP9, `libaom` for AV1). |\n| Temporal scalability | Decode video with multiple temporal layers (2 and 3). The output of the test decoder must match the output of the reference decoder. |\n| Spatial scalability | Decode video with multiple spatial layers (2 and 3). The output of the test decoder must match the output of the reference decoder. |\n\nRelated topics\n--------------\n\n- [Get started with Meet Media API](/workspace/meet/media-api/guides/get-started)"]]