広色域キャプチャ

Android 14 以降を搭載しているデバイスでは、Display P3 の広色域キャプチャがサポートされています。デバイスは 10 ビット HDR を使用しなくても、ImageReader クラスを使用して JPEG 形式の広色域画像をキャプチャできます。この機能により、デバイスは SessionConfigurationsetColorSpace パラメータから、広色域色空間でのカメラ キャプチャを Camera2 フレームワークにリクエストできます。

要件

広色域キャプチャをサポートするには、デバイスは広色域機能の付いたカメラにアクセスできる必要があります。

実装

Display P3 の広色域キャプチャ リクエストをサポートするには、次のことを行います。

  • Stream.aidlcolorSpace 項目を読み、出力ストリームに適用します。
  • android.request.availableColorSpaceProfilesMap メタデータ エントリを実装します。
  • android.request.availableCapabilitiesCOLOR_SPACE_PROFILES 機能を報告します。

P3 の広色域キャプチャをサポートするカメラ HAL リファレンス実装については、/hardware/google/camera/devices/EmulatedCamera/hwl/ configs/emu_camera_back.json の次のものをご覧ください。

カメラ HAL の広色域キャプチャの詳細については、metadata_definitions.xml の次の値をご確認ください。

API

Android 14 以降を搭載し、広色域キャプチャをサポートしているデバイスでは、カメラ クライアントは次の公開 API を使用できます。

ColorSpace パラメータの想定値は ColorSpace.Named クラスから取得されます。Android 14 では、SRGBDISPLAY_P3BT2020_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

ITS

Camera Image Test Suite(ITS)テストを実行して、次のことを検証します。

  • 正しい色度座標の ICC プロファイルが存在する
  • 画像に sRGB 色域外のピクセルデータが含まれる