الأجهزة التي تعمل بنظام التشغيل Android 10 تتوافق مع بروتوكول HEIC تنسيق صورة مضغوطة، العلامة التجارية الخاصة بترميز الفيديو بكفاءة (HEVC) للصورة العالية الكفاءة (HEIF) كما هو محدد في ISO/IEC 23008-12. عرض صور بترميز HEIC جودة أفضل للصور بأحجام أصغر مقارنةً بملفات JPEG.
يتم إنشاء صور HEIC من خلال إطار عمل الكاميرا الذي يطلب صورة غير مضغوطة صورة من كاميرا HAL وإرسالها إلى النظام الفرعي للوسائط إلى باستخدام برنامج ترميز HEIC أو HEVC.
المتطلبات
للتوافق مع تنسيق صورة HEIC، يجب أن يحتوي جهازك على برنامج ترميز للأجهزة.
داعمة
MIMETYPE_IMAGE_ANDROID_HEIC
أو
MIMETYPE_VIDEO_HEVC
مع
وضع الجودة الثابتة:
التنفيذ
لإتاحة تنسيق صورة HEIC على جهازك، يجب تنفيذ برنامج ترميز HEIC/HEVC.
وتوفير الدعم للإعدادات المطلوبة للبث، وهي
ساحة المشاركات IMPLEMENTATION_DEFINED
من إجمالي YUV
وساحة المشاركات في تطبيق JPEG
الوسائط
تنفيذ برنامج ترميز HEIC/HEVC في وضع الجودة الثابتة (CQ) على النحو التالي:
- يستهلك برنامج ترميز النوع HEVC إما
IMPLEMENTATION_DEFINED
مع استخدامGRALLOC_USAGE_HW_VIDEO_ENCODER
أو تنسيقHAL_PIXEL_FORMAT_YCBCR_420_888
اعتمادًا على حجم الصورة. - ويستخدِم برنامج ترميز النوع HEIC التنسيق
IMPLEMENTATION_DEFINED
مع السمة استخدامGRALLOC_USAGE_HW_IMAGE_ENCODER
.
الكاميرا
اضبط السمة ANDROID_HEIC_INFO_SUPPORTED
على "صحيح" في البيانات الوصفية الثابتة.
ANDROID_HEIC_INFO_MAX_JPEG_APP_SEGMENTS_COUNT
إلى قيمة بين [1, 16]
،
الذي يشير إلى عدد أجزاء تطبيق JPEG.
يجب أن تتيح الكاميرا ميزة التبديل بين البث لكل مجموعة بث إلزامية. بث JPEG بتدفق HEIC بنفس الحجم.
بالنسبة إلى بث إخراج HEIC في واجهة برمجة التطبيقات العامة، تنشئ خدمة الكاميرا اثنين من مستويات HAL ساحات المشاركات الداخلية:
- مصدر بيانات كائن تخزين البيانات مع علامة استخدام
JPEG_APPS_SEGMENT
لتخزين التطبيق مقاطع تشمل EXIF ومقاطع من صور مصغرة - مصدر بيانات
IMPLEMENTATION_DEFINED
أوYCBCR_420_888
بحجم بث HEIC حسب برنامج الترميز المستهدَف وحجم البث HEIC
استنادًا إلى "ANDROID_HEIC_INFO_MAX_JPEG_APP_SEGMENTS_COUNT
"، إنّ إطار عمل الكاميرا
تخصيص مخازن مؤقتة كبيرة بما يكفي لطبقة تجريد الأجهزة (HAL) للكاميرا لملء تطبيق JPEG
الأقسام. يجب إدراج شريحة "APP1
" ولكن الشرائح التي تتبع "APP1
" مطلوبة.
تكون الشريحة (APP2
والأعلى) اختيارية. يلغي إطار عمل الكاميرا رمز EXIF
العلامات في الجزء APP1
والتي يمكن اشتقاقها من البيانات الوصفية لنتيجة الالتقاط
أو ذات صلة بالبث المباشر للصورة الرئيسية وترسلها إلى MediaMuxer
لأنّ برنامج ترميز الوسائط يضمّن الاتجاه في البيانات الوصفية للمخرجات
الصور، لضمان اتجاه ثابت بين الصورة الرئيسية والصورة المصغّرة،
يجب ألا تعمل طبقة تجريد الأجهزة (HAL) للكاميرا على تدوير الصورة المصغّرة بناءً على
android.jpeg.orientation.
يكتب إطار العمل الاتجاه في EXIF
البيانات الوصفية وحاوية HEIC.
تشمل أيضًا علامات البيانات الوصفية الثابتة والثابتة والديناميكية ذات الصلة بتنسيق JPEG
تنطبق على تنسيق HEIC. على سبيل المثال، android.jpeg.orientation
يتم استخدام علامات البيانات الوصفية android.jpeg.quality
في طلب الالتقاط للتحكم في
اتجاه وجودة صور HEIC.
لاستخدام تنسيق HEIC في أحد التطبيقات، استخدِم HEIC public API:
لمزيد من المعلومات، يُرجى الاطّلاع على المصادر التالية.
طبقة تجريد الأجهزة (HAL) للكاميرا
مساحة بيانات المخزن المؤقت للرسومات
مساحة استخدام المخزن المؤقت للرسومات
التحقُّق
للتأكّد من أنّ التنفيذ يتوافق مع صور HEIC، استخدِم
TestingCamera2
اختبار التطبيق وإجراء اختبارات CTS وVTS الكاميرا التالية.
اختبارات CTS للكاميرا
NativeImageReaderTest#testHeic
ImageReaderTest#testHeic
ImageReaderTest#testRepeatingHeic
ReprocessCaptureTest#testBasicYuvToHeicReprocessing
ReprocessCaptureTest#testBasicOpaqueToHeicReprocessing
RobustnessTest#testMandatoryOutputCombinations
StillCaptureTest#testHeicExif
اختبارات VTS للكاميرا