Начиная с 27 марта 2025 г. мы рекомендуем использовать android-latest-release
вместо aosp-main
для создания и участия в AOSP. Дополнительные сведения см. в разделе Изменения в AOSP .
Ультра HDR
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
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
использует предоставленный HAL файл SDR JPEG в качестве базового изображения и кадр P010 для расчета карты восстановления. Эта опция включает программную обработку в пути данных, но она относительно незначительна по сравнению с минимальной опцией. - Расширенный: HAL камеры напрямую объявляет и поддерживает выходной поток
JPEG_R
. Эта опция позволяет производителям устройств реализовывать оптимизации, специфичные для устройств, и может обеспечить значительное улучшение качества изображения.
Чтобы отключить реализацию JpegRCompositeStream
, установите свойство сборки ro.camera.disableJpegR
в true
. Если это свойство сборки не установлено или установлено в false
, Ultra HDR включается по умолчанию через JpegRCompositeStream
на устройствах, поддерживающих 10-битную возможность вывода и одновременный 10- и 8-битный захват .
Проверка
Чтобы проверить функцию Ultra HDR на вашем устройстве, выполните следующие тесты.
Тесты CTS
ИТС тесты
Ручные тесты
Для выполнения ручных тестов используйте пример реализации для захвата изображений Ultra HDR , который включает поддержку настройки и захвата изображений Ultra HDR с использованием формата изображения JPEG_R
.
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-29 UTC.
[[["Прост для понимания","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-29 UTC."],[],[],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."]]