Захват широкой гаммы

Для устройств под управлением Android 14 и выше Android поддерживает захват изображений в широком цветовом пространстве Display P3. Устройства могут захватывать изображения в широком цветовом пространстве в формате JPEG с помощью класса ImageReader без использования 10-битного HDR . Эта функция позволяет устройствам запрашивать у фреймворка Camera2 захват изображения в широком цветовом пространстве через параметр setColorSpace в SessionConfiguration .

Требования

Для поддержки захвата изображения в широком цветовом диапазоне устройство должно иметь доступ к камере с возможностями цветопередачи в широком цветовом диапазоне.

Выполнение

Для поддержки запросов на захват изображения в широком цветовом диапазоне для дисплея P3 выполните следующие действия:

  • Прочитайте поле colorSpace в Stream.aidl и примените его к выходному потоку.
  • Реализуйте запись метаданных android.request.availableColorSpaceProfilesMap .
  • Укажите возможность COLOR_SPACE_PROFILES в android.request.availableCapabilities .

Пример реализации Camera HAL, поддерживающей захват изображения в широком цветовом диапазоне P3, можно найти в файле /hardware/google/camera/devices/EmulatedCamera/hwl/ configs/emu_camera_back.json :

Для получения более подробной информации о захвате изображения в широком цветовом диапазоне в Camera 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#test8BitColorSpaceOutputCharacteristics
  • android.hardware.camera2.cts.ExtendedCameraCharacteristicsTest#test10BitColorSpaceOutputCharacteristics
  • android.hardware.camera2.cts.ExtendedCameraCharacteristicsTest#testColorSpaceProfileMap
  • android.hardware.camera2.cts.ImageReaderTest#testDisplayP3Jpeg
  • android.hardware.camera2.cts.ImageReaderTest#testDisplayP3JpegRepeating
  • android.hardware.camera2.cts.ImageReaderTest#testDisplayP3Heic
  • android.hardware.camera2.cts.ImageReaderTest#testDisplayP3HeicRepeating

ЕГО

Запустите тесты из набора Camera Image Test Suite (ITS) , чтобы проверить следующее:

  • Наличие профиля ICC с правильными координатами цветности.
  • Изображение содержит пиксельные данные, выходящие за пределы цветового пространства sRGB.