En el caso de los dispositivos que ejecutan Android 14 o versiones posteriores, Android proporciona compatibilidad con la captura de amplia gama de Display P3. Los dispositivos pueden capturar imágenes de amplia gama de colores en formato JPEG con la clase ImageReader
sin usar HDR de 10 bits. Esta función permite que los dispositivos soliciten la captura de la cámara en un espacio de color de gama amplia al framework de Camera2 a través del parámetro setColorSpace
en SessionConfiguration
.
Requisitos
Para admitir la captura de amplia gama, el dispositivo debe tener acceso a una cámara con capacidades de color de amplia gama.
Implementación
Para admitir solicitudes de captura de gama amplia Display P3, haz lo siguiente:
- Lee el campo
colorSpace
enStream.aidl
y aplícalo al flujo de salida. - Implementa la entrada de metadatos
android.request.availableColorSpaceProfilesMap
. - Informa la capability
COLOR_SPACE_PROFILES
enandroid.request.availableCapabilities
.
Para obtener una implementación de HAL de cámara de referencia que admita la captura de gama amplia P3, consulta lo siguiente en /hardware/google/camera/devices/EmulatedCamera/hwl/
configs/emu_camera_back.json
:
Para obtener más detalles sobre la captura de amplia gama en el HAL de la cámara, consulta los siguientes valores en metadata_definitions.xml
:
APIs
En el caso de los dispositivos que ejecutan Android 14 o versiones posteriores con compatibilidad para la captura de gama amplia, los clientes de la cámara pueden usar las siguientes APIs públicas:
Los valores esperados para el parámetro ColorSpace
se derivan de la clase ColorSpace.Named
. En Android 14, se admiten SRGB
, DISPLAY_P3
y BT2020_HLG
.
Validación
Para validar tu implementación de la compatibilidad con la captura de amplia gama de Display P3, ejecuta las siguientes pruebas.
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
ITS
Ejecuta las pruebas del Paquete de prueba de imagen de la cámara (ITS) para validar lo siguiente:
- Presencia de un perfil ICC con coordenadas de cromaticidad correctas
- La imagen contiene datos de píxeles fuera de la gama sRGB