На устройствах с Android 14 или более поздней версией ОС поддерживается съемка с широкой цветовой гаммой Display P3. Устройства могут снимать изображения с широкой цветовой гаммой в формате JPEG с помощью класса ImageReader без использования 10-битного HDR. Эта функция позволяет устройствам запрашивать захват изображения с камеры в широком цветовом пространстве в фреймворке Camera2 с помощью параметра setColorSpace в SessionConfiguration.
Требования
Чтобы поддерживать съемку с широкой цветовой гаммой, устройству необходим доступ к камере с такой возможностью.
Реализация
Чтобы поддерживать запросы на захват широкой гаммы Display P3, сделайте следующее:
- Прочитайте поле
colorSpaceвStream.aidlи примените его к выходному потоку. - Реализуйте запись метаданных
android.request.availableColorSpaceProfilesMap. - Сообщите о функции
COLOR_SPACE_PROFILESвandroid.request.availableCapabilities.
Пример реализации HAL камеры, поддерживающей съемку с широкой цветовой гаммой P3, можно найти в /hardware/google/camera/devices/EmulatedCamera/hwl/
configs/emu_camera_back.json:
Дополнительную информацию о съемке с широкой цветовой гаммой в HAL камеры можно найти в следующих значениях в metadata_definitions.xml:
API
Для устройств под управлением Android 14 или более поздней версии с поддержкой захвата широкой гаммы клиенты камеры могут использовать следующие общедоступные API:
Ожидаемые значения параметра ColorSpace берутся из класса ColorSpace.Named. В Android 14 поддерживаются языки SRGB, DISPLAY_P3 и BT2020_HLG.
Проверка
Чтобы проверить реализацию поддержки широкой цветовой гаммы Display P3, выполните следующие тесты.
CTS
android.hardware.camera2.cts.ExtendedCameraCharacteristicsTest#test8BitColorSpaceOutputCharacteristicsandroid.hardware.camera2.cts.ExtendedCameraCharacteristicsTest#test10BitColorSpaceOutputCharacteristicsandroid.hardware.camera2.cts.ExtendedCameraCharacteristicsTest#testColorSpaceProfileMapandroid.hardware.camera2.cts.ImageReaderTest#testDisplayP3Jpegandroid.hardware.camera2.cts.ImageReaderTest#testDisplayP3JpegRepeatingandroid.hardware.camera2.cts.ImageReaderTest#testDisplayP3Heicandroid.hardware.camera2.cts.ImageReaderTest#testDisplayP3HeicRepeating
ITS
Выполните тесты из набора Camera Image Test Suite (ITS), чтобы проверить следующее:
- Наличие профиля ICC с правильными координатами цветности.
- Изображение содержит данные пикселей за пределами цветовой гаммы sRGB