Captura de ampla gama

Para dispositivos com Android 14 ou mais recente, o Android oferece suporte à captura de ampla gama do Display P3. Os dispositivos podem capturar imagens em cores de ampla gama em formato JPEG com a classe ImageReader sem usar HDR de 10 bits. Com esse recurso, os dispositivos podem solicitar a captura de imagens da câmera em um espaço de cores de ampla gama para o framework Camera2 usando o parâmetro setColorSpace em SessionConfiguration.

Requisitos

Para oferecer suporte à captura de ampla gama, o dispositivo precisa ter acesso a uma câmera com recursos de cores de ampla gama.

Implementação

Para oferecer suporte a solicitações de captura de ampla gama de cores do Display P3, faça o seguinte:

  • Leia o campo colorSpace em Stream.aidl e aplique-o ao fluxo de saída.
  • Implemente a entrada de metadados android.request.availableColorSpaceProfilesMap.
  • Informe o recurso COLOR_SPACE_PROFILES em android.request.availableCapabilities.

Para uma implementação de referência da HAL da câmera que oferece suporte à captura de ampla gama P3, consulte o seguinte em /hardware/google/camera/devices/EmulatedCamera/hwl/ configs/emu_camera_back.json:

Para mais detalhes sobre a captura de ampla gama na HAL da câmera, consulte os seguintes valores em metadata_definitions.xml:

APIs

Para dispositivos com Android 14 ou mais recente que oferecem suporte à 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 compatíveis.

Validação

Para validar sua implementação do suporte à captura de ampla gama 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

ITS

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 pixel fora da gama sRGB