بدءًا من نظام التشغيل Android 10 (المستوى 29 لواجهة برمجة التطبيقات) والإصدارات الأحدث، تتوفّر طرق في
MediaCodecInfo
تعرض المزيد من المعلومات حول برنامج ترميز:
isSoftwareOnly()
- تعرض هذه السمة القيمة "صحيح" إذا كان برنامج الترميز يعمل في البرنامج فقط. لا تقدّم برامج الترميز أي ضمانات بشأن أداء العرض.
isHardwareAccelerated()
- تعرِض هذه السمة القيمة "صحيح" إذا كان برنامج الترميز يتم تسريعه بواسطة الأجهزة.
isVendor()
- تعرض هذه السمة القيمة true إذا كان برنامج الترميز مقدَّمًا من مورّد الجهاز، أو القيمة false إذا كان مقدَّمًا من منصة Android.
isAlias()
قد يحتوي MediaCodecList
على إدخالات إضافية لبرنامج الترميز الأساسي نفسه باستخدام أسماء بديلة لبرنامج الترميز (أسماء مستعارة). تعرض هذه الطريقة القيمة "صحيح" إذا كان برنامج الترميز في هذا الإدخال اسمًا مستعارًا لبرنامج ترميز آخر.
بالإضافة إلى ذلك، تعرض الدالة
MediaCodec.getCanonicalName()
اسم الترميز الأساسي لبرامج الترميز التي تم إنشاؤها من خلال اسم مستعار.
نقاط الأداء
تمثّل نقطة الأداء قدرة برنامج الترميز على عرض الفيديو بارتفاع وعرض وعدد لقطات في الثانية محدّدة. على سبيل المثال، تشير UHD_60
نقطة الأداء
إلى فيديو بدقة فائقة (3840x2160 بكسل) يتم عرضه بمعدل 60 لقطة
في الثانية.
تعرض الطريقة
MediaCodecInfo.VideoCapabilities.getSupportedPerformancePoints()
قائمة بإدخالات
PerformancePoint
التي يمكن لبرنامج الترميز عرضها أو تسجيلها.
يمكنك التحقّق مما إذا كان نطاق PerformancePoint
يغطي نطاقًا آخر من خلال استدعاء PerformancePoint.covers(PerformancePoint)
.
على سبيل المثال، تعرض UHD_60.covers(UHD_50)
القيمة "صحيح".
يتم توفير قائمة بنقاط الأداء لجميع برامج الترميز التي تستخدم تسريع الأجهزة. يمكن أن تكون هذه القائمة فارغة إذا لم يستوفِ برنامج الترميز حتى أدنى نقطة أداء وفقًا للمعيار.
يُرجى العِلم أنّ الأجهزة التي تمت ترقيتها إلى الإصدار 10 (المستوى 29 لواجهة برمجة التطبيقات) من نظام التشغيل Android والإصدارات الأحدث بدون
تحديث صورة المورّد لن تتضمّن بيانات نقاط الأداء، لأنّ هذه
البيانات تأتي من طبقة تجريد الأجهزة (HAL) الخاصة بالمورّد. في هذه الحالة، تعرض الدالة getSupportedPerformancePoints()
القيمة null.