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

تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

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

لتصدير إحصائيات ترميز الفيديو ، يجب على بائعي SoC تغيير برنامج تشغيل مشفر الفيديو كما هو موضح في تحديثات برنامج تشغيل برنامج تشفير الفيديو .

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

باستخدام Android 13 ، يقوم برنامج تشفير الفيديو بتصدير بيانات الإحصائيات كما هو موضح في الجدول التالي.

اسم إحصائيات المشفر وصف
متوسط ​​كتلة QP لكل إطار متوسط ​​كل QPs للكتل في إطار الفيديو المشفرة في تدفق البتات
نوع الصورة اكتب I أو P أو B.

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

تحديثات لبرنامج تشغيل برنامج تشفير الفيديو

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

  • يصف KEY_VIDEO_QP_AVERAGE لكل رتل QP.

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

    • يجب أن يقوم مشفر SoC بتقريب متوسط ​​QPs للكتلة إلى أقرب عدد صحيح قبل الإرسال إلى Codec 2.0.

    • يتم حساب متوسط ​​القيمة فقط من مستوى luma.

    • يجب أن يقوم مشفر 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 للتحقق من أن متوسط ​​جزء QP من إحصائيات ترميز الفيديو يعمل بشكل صحيح: تقوم 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);