يوفر Android 14 دعمًا لالتقاط صور مضغوطة بتقنية Ultra HDR باستخدام تنسيق الصور JPEG_R
. هذا التنسيق متوافق مع الإصدارات السابقة من صور SDR JPEG ويدعم عرض المحتوى بتقنية HDR. للحصول على تفاصيل حول مواصفات تنسيق Ultra HDR، راجع Ultra HDR Image Format v1.0 .
تطبيق
يصف هذا القسم كيفية تنفيذ ميزة Ultra HDR.
التنفيذ المرجعي
يتضمن إطار عمل الكاميرا وخدمة الكاميرا AOSP تطبيقًا مرجعيًا لـ Ultra HDR.
بالإضافة إلى الوظيفة المرجعية في إطار عمل الكاميرا، يمكنك تنفيذ Ultra HDR داخل كاميرا HAL والإعلان عن دعم إخراج JPEG_R
بنفس طريقة تدفقات إخراج HAL الأخرى للكاميرا. في هذا السيناريو، يجب أن تقوم HAL الخاصة بالكاميرا بإنشاء خريطة الاسترداد الضرورية وصورة JPEG_R
النهائية كما هو محدد بواسطة مواصفات Ultra HDR . يمكنك تحسين وضبط الإخراج النهائي اعتمادًا على إمكانات الأجهزة والبرامج الخاصة بالجهاز.
خيارات التنفيذ
يمكن لمصنعي الأجهزة تحديد المستويات التالية لدعم Ultra HDR لأجهزتهم:
- الحد الأدنى: في هذا التكوين، يتم تعطيل إخراج Ultra HDR من خلال وظيفة الدفق المركب لخدمة الكاميرا بشكل افتراضي. لتمكين تنفيذ مرجع
JpegRCompositeStream
، قم بتعيين خاصية النظامro.camera.enableCompositeAPI0JpegR
إلىtrue
. ونظرًا لأن كافة العمليات والتشفير يتم إجراؤها في البرنامج، فقد يؤدي هذا الخيار إلى زيادة زمن الاستجابة وانخفاض الأداء. - متوسط: باستخدام هذا الخيار، يستخدم تطبيق
JpegRCompositeStream
ملف SDR JPEG المقدم من HAL كصورة أساسية وإطار P010 لحساب خريطة الاسترداد. يتضمن هذا الخيار معالجة البرامج ضمن مسار البيانات ولكنه بسيط نسبيًا مقارنة بالخيار الأدنى. - موسع: تعلن كاميرا HAL عن تدفق إخراج
JPEG_R
وتدعمه مباشرة. يتيح هذا الخيار للشركات المصنعة للأجهزة تنفيذ تحسينات خاصة بالجهاز ويمكنها توفير تحسينات كبيرة في جودة الصورة.
لتعطيل تنفيذ JpegRCompositeStream
، قم بتعيين خاصية البناء ro.camera.disableJpegR
على true
. إذا لم يتم تعيين خاصية البناء هذه أو تم تعيينها على false
، فسيتم تمكين Ultra HDR افتراضيًا من خلال JpegRCompositeStream
على الأجهزة التي تدعم إمكانية إخراج 10 بت والتقاط متزامن 10 و8 بت .
تصديق
للتحقق من صحة ميزة Ultra HDR على جهازك، قم بإجراء الاختبارات التالية.
اختبارات سي تي إس
-
ImageReaderTest.java#testImageReaderBuilderWithBLOBAndJpegR
-
ImageReaderTest.java#testJpegR
-
ImageReaderTest.java#testJpegRDisplayP3
-
PerformanceTest.java#testSingleCapture
-
StillCaptureTest.java# testJpegRCapture
اختباراتها
الاختبارات اليدوية
لإجراء اختبارات يدوية، استخدم نموذج التنفيذ لالتقاط صور Ultra HDR ، والذي يتضمن دعم تكوين Ultra HDR والتقاطه باستخدام تنسيق الصورة JPEG_R
.