تصدير إحصاءات ترميز الفيديوهات

بدءًا من نظام التشغيل Android 13، يمكن لعملاء التطبيقات طلب برنامج ترميز الفيديو لتصدير إحصاءات الترميز لكل إطار فيديو تم ترميزه. باستخدام الإحصاءات التي يتم الحصول عليها من برنامج ترميز الفيديو، يمكن للتطبيقات تحسين مهام ترميز الفيديو، مثل الترميز المتعدد المراحل والمعالجة المسبقة للإطارات قبل الترميز.

لتصدير إحصاءات ترميز الفيديو، على مورّدي منظومة على رقاقة (SoC) تغيير برنامج تشغيل برنامج ترميز الفيديو على النحو الموضّح في تعديلات على برنامج تشغيل برنامج ترميز الفيديو.

بيانات إحصاءات ترميز الفيديو

في نظام التشغيل Android 13، يصدّر برنامج ترميز الفيديو بيانات الإحصاءات كما هو موضّح في الجدول التالي.

اسم إحصاءات برنامج الترميز الوصف
متوسط عدد وحدات البكسل في كل إطار متوسط جميع معامِلات QP للكتل في إطار الفيديو التي تم ترميزها في دفق البتات
نوع الصورة اكتب I أو P أو B

يمكن للمطوّرين استرداد معلومات الإحصاءات لكل إطار باستخدام فئة المطوّرين MediaFormat.

تعديلات على برنامج تشغيل ترميز الفيديو

لإتاحة تصدير إحصاءات ترميز الفيديو، على مورّدي منظومة على رقاقة (SoC) تغيير برنامج تشغيل برنامج ترميز الفيديو. تتم إضافة المفاتيح التالية في قاعدة بيانات Codec 2.0 في Android 13:

  • يمثّل KEY_VIDEO_QP_AVERAGE متوسط QP لكل إطار.

    تنطبق القواعد التالية على تنفيذ مفتاح KEY_VIDEO_QP_AVERAGE:

    • يجب أن يقرِّب برنامج الترميز SoC متوسط قيم QP للكتل إلى أقرب عدد صحيح قبل إرساله إلى Codec 2.0.

    • يتم احتساب متوسط القيمة من مستوى الإضاءة فقط.

    • يجب أن يعرض برنامج الترميز SoC القيمة INT_MAX إذا كانت جميع الوحدات في الإطار الحالي في وضع التخطّي. يحدث هذا الشرط عندما لا يتم ترميز أي معاملات ولا يتم ترميز أي معلومات QP مهمة في الإطار.

  • تصف KEY_PICTURE_TYPE نوع صورة الإطار المرمّز على أنّه PICTURE_TYPE_I أو PICTURE_TYPE_P أو PICTURE_TYPE_B أو PICTURE_TYPE_UNKNOWN.

  • توضّح KEY_VIDEO_ENCODING_STATISTICS_LEVEL مستوى معلومات إحصاءات الترميز الصادرة من أداة ترميز الفيديو، وذلك على النحو التالي:

    • عندما لا يقدّم برنامج الترميز أي معلومات حول إحصاءات الترميز، يتم ضبط قيمة هذا المفتاح على VIDEO_ENCODING_STATISTICS_LEVEL_NONE.

    • عندما ينشئ برنامج الترميز KEY_VIDEO_QP_AVERAGE وKEY_PICTURE_TYPE لكل إطار، يتم ضبط هذا المفتاح على VIDEO_ENCODING_STATISTICS_LEVEL_1.

راجِع VideoEncodingStatisticsTest للحصول على مثال على التنفيذ.

التحقق من صحة البيانات

أجرِ اختبار VideoEncodingStatisticsTest CTS للتأكّد من أنّ الجزء المتعلّق بمتوسط جودة الفيديو من إحصاءات ترميز الفيديو يعمل بشكل صحيح: يجري اختبار CTS عمليتَي ترميز للفيديو نفسه، إحداهما بمعدّل نقل بيانات أعلى والأخرى بمعدّل نقل بيانات أقل. بعد ذلك، يقارن نظام CTS بين متوسطَي قيمتَي QP اللتين تم تصديرهما من الترميزَين. إذا كان متوسط QP من الترميز بمعدل بت أقل أعلى من متوسط QP من الترميز بمعدل بت أعلى، يجتاز اختبار CTS.

للتحقّق من إيقاف ميزة تصدير إحصاءات ترميز الفيديو عند تفعيلها، استخدِم المفتاح VIDEO_ENCODING_STATISTICS_LEVEL_NONE على النحو التالي:

format.setInteger(MediaFormat.KEY_VIDEO_ENCODING_STATISTICS_LEVEL, MediaFormat.VIDEO_ENCODING_STATISTICS_LEVEL_NONE);