Para dispositivos com Android 14 ou superior, o Android oferece suporte para captura de gama ampla do Display P3. Os dispositivos podem capturar imagens de cores de ampla gama no formato JPEG com a classe ImageReader
sem usar HDR de 10 bits . Esse recurso permite que os dispositivos solicitem a captura da câmera em um amplo espaço de cores de gama para a estrutura Camera2 por meio do parâmetro setColorSpace
em SessionConfiguration
.
Requisitos
Para suportar a captura de ampla gama, o dispositivo deve ter acesso a uma câmera com recursos de ampla gama de cores.
Implementação
Para oferecer suporte a solicitações de captura de gama ampla do Display P3, faça o seguinte:
- Leia o campo
colorSpace
emStream.aidl
e aplique-o ao fluxo de saída. - Implemente a entrada de metadados
android.request.availableColorSpaceProfilesMap
. - Relate o recurso
COLOR_SPACE_PROFILES
emandroid.request.availableCapabilities
.
Para obter uma implementação HAL de câmera de referência com suporte para captura de gama ampla P3, consulte o seguinte em /hardware/google/camera/devices/EmulatedCamera/hwl/ configs/emu_camera_back.json
:
Para obter mais detalhes sobre a captura de gama ampla no Camera HAL, consulte os seguintes valores em metadata_definitions.xml
:
APIs
Para dispositivos com Android 14 ou superior com suporte para captura de ampla gama, os clientes de câmera podem usar as seguintes APIs públicas:
Os valores esperados para o parâmetro ColorSpace
são derivados da classe ColorSpace.Named
. No Android 14, SRGB
, DISPLAY_P3
e BT2020_HLG
são suportados.
Validação
Para validar sua implementação do suporte à captura de gama ampla do Display P3, execute os testes a seguir.
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
ISSO É
Execute os testes do Camera Image Test Suite (ITS) para validar o seguinte:
- Presença de um perfil ICC com coordenadas de cromaticidade corretas
- A imagem contém dados de pixels fora da gama sRGB