يهدف هذا المستند إلى مساعدة مورّدي المنظومة على الرقاقة (SoC) في تنفيذ ميزة دعم الأولوية ومعدل التشغيل والعناصر اللازمة لخدمة "مدير موارد الوسائط" في Android بشكلٍ سليم.
OMX_ErrorInsufficientResources
يجب أن يعرض مكوّن برنامج الترميز OMX_ErrorInsufficientResources
عند GetHandle
أو
Init
أو UseBuffer
أو AllocateBuffer
أو عند
تغيير الحالة إذا كان العُطل ناتجًا عن عدم توفّر موارد كافية. سيستخدم مدير موارد الوسائط رمز الخطأ
كمؤشرٍ ليقترح
استبدال مورد الوسائط بعملية أخرى ذات أولوية أقل.
يتوفّر اختبار مجموعة أدوات اختبار التوافق (CTS) في Android لتخصيص كل ترميز وضبطه
وبدءه بشكل متكرّر إلى أن يظهر الرمز catching
OMX_ErrorInsufficientResources
(اجتياز) أو أي خطأ آخر (تعذُّر).
OMX_IndexConfigPriority
يتيح هذا الإعداد للتطبيق وصف أولوية برنامج الترميز المطلوب.
القيمة المرتبطة هي عدد صحيح. وكلما ارتفعت القيمة، انخفضت الأولوية. في الوقت الحالي، يتوفّر مستويان فقط:
- 0: الأولوية في الوقت الفعلي: يعني ذلك أنّ برنامج الترميز يجب أن يتيح الإعدادات المحدّدة للأداء (مثل معدل عرض اللقطات) في الوقت الفعلي. ولن يتم استخدام هذا الإعداد إلا في عمليات تشغيل الوسائط وتسجيلها، وربما في سيناريوهات التواصل في الوقت الفعلي إذا لم يكن أداء "أفضل جهد ممكن" مناسبًا.
- 1: الأولوية غير المستندة إلى الوقت الفعلي (أفضل جهد) هذه هي القيمة الافتراضية.
نقترح على المورّد استخدام هذه المعلومات كاقتراح عند ضبط برنامج الترميز و تخطيط الموارد لفهم متطلبات التطبيق في الوقت الفعلي.
لا تفترض أنّ الأولوية في الوقت الفعلي مفعّلة ما لم يتم ضبطها على 0.
OMX_IndexConfigOperatingRate
يتيح هذا الإعداد للتطبيق وصف معدل عرض اللقطات أثناء التشغيل للفيديو أو معدل أخذ العينات للصوت الذي يجب أن يعمل به برنامج الترميز.
ويُستخدَم ذلك في حالات مثل تسجيل الفيديوهات بسرعة عالية أو بطيئة، حيث يحتوي تنسيق ملف ترميز الفيديو على معدّل التشغيل المستهدَف (مثل 30 لقطة في الثانية)، ولكن يجب أن يكون المكوّن قادرًا على التعامل مع معدّل الالتقاط العالي (مثل 240 لقطة في الثانية).
يجب استخدام هذا المعدّل لتخطيط الموارد وتحديد نقاط الأداء.