اعتبارًا من 27 آذار (مارس) 2025، ننصحك باستخدام android-latest-release
بدلاً من aosp-main
لإنشاء AOSP والمساهمة فيه. لمزيد من المعلومات، يُرجى الاطّلاع على التغييرات في AOSP.
دقة HDR فائقة
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يتيح نظام التشغيل Android 14 التقاط صور بدقة HDRفائقة
مضغوطة باستخدام تنسيق
JPEG_R
الصور. يتوافق هذا التنسيق مع الصور بتنسيق 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 ل
أجهزتها:
- الحد الأدنى: في هذا الإعداد، تكون ميزة "دقة HDR فائقة" غير مفعَّلة تلقائيًا من خلال وظيفة البث المركب للخدمة
الكاميرا. لتفعيل تنفيذ المرجع
JpegRCompositeStream
، اضبط سمة النظام
ro.camera.enableCompositeAPI0JpegR
على true
. وبما أنّه يتم تنفيذ جميع
العمليات والترميز في البرامج، يمكن أن يؤدي هذا الخيار إلى
زيادة وقت الاستجابة وانخفاض الأداء.
- متوسط: باستخدام هذا الخيار، يستخدم تنفيذ
JpegRCompositeStream
ملف JPEG بنطاق ديناميكي عادي (SDR) يوفّره HAL كملف
صورة أساسية وإطار P010 لاحتساب خريطة الاسترداد. يتضمن هذا الخيار
معالجة البرامج ضمن مسار البيانات، ولكنه بسيط نسبيًا مقارنةً بالخيار الأدنى.
- مفصّلة: تعرض طبقة HAL للكاميرا بث المخرج
JPEG_R
وتوفّره مباشرةً. يتيح هذا الخيار لصنّاع الأجهزة تنفيذ تحسينات خاصة بالأجهزة، ويمكن أن يؤدي ذلك إلى تحسينات كبيرة في جودة الصور.
لإيقاف تنفيذ JpegRCompositeStream
، اضبط سمة الإصدار
ro.camera.disableJpegR
على true
. إذا لم يتم
ضبط سمة الإصدار هذه أو تم ضبطها على false
، يتم تفعيل ميزة "النطاق العالي جدًا الديناميكية" تلقائيًا من خلال
JpegRCompositeStream
على الأجهزة التي تتيح
إمكانية الإخراج بدقة 10 بت
والتسجيل المتزامن بدقة 10 و8 بت.
التحقُّق
للتحقّق من صحة ميزة Ultra HDR على جهازك، عليك إجراء الاختبارات التالية.
اختبارات CTS
اختبارات ITS
الاختبارات اليدوية
لإجراء الاختبارات اليدوية، استخدِم
نموذج التنفيذ لالتقاط الصور بدقة HDR الفائقة،
الذي يتضمّن إمكانية ضبط دقة HDR الفائقة والتقاط الصور باستخدام تنسيق ملف
JPEG_R
.
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-07-26 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-26 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Ultra HDR\n\nAndroid 14 provides support for capturing Ultra HDR\ncompressed images using the\n[`JPEG_R`](https://developer.android.com/reference/kotlin/android/graphics/ImageFormat#jpeg_r)\nimage format. This format is backward compatible with SDR JPEG images and\nsupports HDR rendering of content.\nFor details about the Ultra HDR format specification, see\n[Ultra HDR Image Format v1.0](https://developer.android.com/guide/topics/media/hdr-image-format).\n\nImplementation\n--------------\n\nThis section describes how to implement the Ultra HDR feature.\n\n### Reference implementation\n\nThe AOSP camera framework and camera service includes a reference Ultra HDR\nimplementation.\n\nIn addition to the reference functionality in the camera framework, you can\nimplement Ultra HDR within the camera HAL and advertise support for `JPEG_R`\noutput in the same way as other camera HAL output streams. In this scenario,\nthe camera HAL must generate the necessary recovery map and the final `JPEG_R`\nimage as defined by the\n[Ultra HDR specification](https://developer.android.com/guide/topics/media/hdr-image-format#introduction).\nYou can optimize and tune the final output depending on the device hardware\nand software capabilities.\n\n### Implementation options\n\nDevice manufacturers can decide on the following levels of Ultra HDR support for\ntheir devices:\n\n- **Minimal:** In this configuration, Ultra HDR output through the camera service composite stream functionality is disabled by default. To enable the `JpegRCompositeStream` reference implementation, set the `ro.camera.enableCompositeAPI0JpegR` system property to `true`. Because all processes and encoding is performed in software, this option can result in increased latency and decreased performance.\n- **Moderate:** With this option, the `JpegRCompositeStream` implementation uses a HAL-provided SDR JPEG file as a base image and a P010 frame to calculate a recovery map. This option involves software processing within the data path but is relatively minor compared to the minimal option.\n- **Extensive:** The camera HAL advertises and supports the `JPEG_R` output stream directly. This option lets device manufacturers implement device-specific optimizations and can provide significant image quality improvements.\n\nTo disable the `JpegRCompositeStream` implementation, set the\n`ro.camera.disableJpegR` build property to `true`. If this build property isn't\nset or is set to `false`, Ultra HDR is enabled by default through\n`JpegRCompositeStream` on devices supporting\n[10-bit output capability](https://developer.android.com/reference/android/hardware/camera2/CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT)\nand\n[concurrent 10 and 8-bit capture](https://developer.android.com/reference/android/hardware/camera2/params/DynamicRangeProfiles#getProfileCaptureRequestConstraints(long)).\n\nValidation\n----------\n\nTo validate the Ultra HDR feature on your device, run the following tests.\n\n### CTS tests\n\n- [`ImageReaderTest.java#testImageReaderBuilderWithBLOBAndJpegR`](https://android.googlesource.com/platform/cts/+/refs/heads/android16-release/tests/camera/src/android/hardware/camera2/cts/ImageReaderTest.java#815)\n- [`ImageReaderTest.java#testJpegR`](https://android.googlesource.com/platform/cts/+/refs/heads/android16-release/tests/camera/src/android/hardware/camera2/cts/ImageReaderTest.java#503)\n- [`ImageReaderTest.java#testJpegRDisplayP3`](https://android.googlesource.com/platform/cts/+/refs/heads/android16-release/tests/camera/src/android/hardware/camera2/cts/ImageReaderTest.java#526)\n- [`PerformanceTest.java#testSingleCapture`](https://android.googlesource.com/platform/cts/+/refs/heads/android16-release/tests/camera/src/android/hardware/camera2/cts/PerformanceTest.java#313)\n- [`StillCaptureTest.java# testJpegRCapture`](https://android.googlesource.com/platform/cts/+/refs/heads/android16-release/tests/camera/src/android/hardware/camera2/cts/StillCaptureTest.java#192)\n\n### ITS tests\n\n- [`scene4#test_aspect_ratio_and_crop`](https://android.googlesource.com/platform/cts/+/refs/heads/android16-release/apps/CameraITS/tests/scene4/test_aspect_ratio_and_crop.py)\n\n### Manual tests\n\nTo perform manual tests, use the\n[sample implementation for Ultra HDR image capture](https://github.com/android/platform-samples/pull/56),\nwhich includes support for the configuration and capture of Ultra HDR using the\n`JPEG_R` image format."]]