From 7e3e431934aef6c7ca954fed00facaff8a4ee1d3 Mon Sep 17 00:00:00 2001 From: Yin-Chia Yeh Date: Thu, 2 Apr 2015 14:34:30 -0700 Subject: [PATCH] Camera: update AE/AWB lock spec Codegen doc update. Bug: 20039760 Change-Id: I92786f1e4366185029aca63794e58374c92bc948 --- .../camera2/CameraCharacteristics.java | 6 ++++-- .../hardware/camera2/CameraMetadata.java | 18 +++++++++++++++++- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/core/java/android/hardware/camera2/CameraCharacteristics.java b/core/java/android/hardware/camera2/CameraCharacteristics.java index f28c96e8d85aa..e69a762981557 100644 --- a/core/java/android/hardware/camera2/CameraCharacteristics.java +++ b/core/java/android/hardware/camera2/CameraCharacteristics.java @@ -639,7 +639,8 @@ public final class CameraCharacteristics extends CameraMetadataWhether the camera device supports {@link CaptureRequest#CONTROL_AE_LOCK android.control.aeLock}

- *

LIMITED or FULL devices will always list true

+ *

Devices with MANUAL_SENSOR capability or BURST_CAPTURE capability will always + * list true. This includes FULL devices.

*

This key is available on all devices.

* * @see CaptureRequest#CONTROL_AE_LOCK @@ -650,7 +651,8 @@ public final class CameraCharacteristics extends CameraMetadataWhether the camera device supports {@link CaptureRequest#CONTROL_AWB_LOCK android.control.awbLock}

- *

LIMITED or FULL devices will always list true

+ *

Devices with MANUAL_POST_PROCESSING capability or BURST_CAPTURE capability will + * always list true. This includes FULL devices.

*

This key is available on all devices.

* * @see CaptureRequest#CONTROL_AWB_LOCK diff --git a/core/java/android/hardware/camera2/CameraMetadata.java b/core/java/android/hardware/camera2/CameraMetadata.java index 85c574aa136f3..98ffba1c8f49c 100644 --- a/core/java/android/hardware/camera2/CameraMetadata.java +++ b/core/java/android/hardware/camera2/CameraMetadata.java @@ -347,6 +347,10 @@ public abstract class CameraMetadata { *
  • {@link CaptureRequest#BLACK_LEVEL_LOCK android.blackLevel.lock}
  • * * + *
  • Auto exposure lock
      + *
    • {@link CaptureRequest#CONTROL_AE_LOCK android.control.aeLock}
    • + *
    + *
  • * *

    If any of the above 3A algorithms are enabled, then the camera * device will accurately report the values applied by 3A in the @@ -358,6 +362,7 @@ public abstract class CameraMetadata { * zero for each supported size-format combination.

    * * @see CaptureRequest#BLACK_LEVEL_LOCK + * @see CaptureRequest#CONTROL_AE_LOCK * @see CameraCharacteristics#SCALER_STREAM_CONFIGURATION_MAP * @see CaptureRequest#SENSOR_EXPOSURE_TIME * @see CaptureRequest#SENSOR_FRAME_DURATION @@ -403,6 +408,10 @@ public abstract class CameraMetadata { *
  • {@link CameraCharacteristics#COLOR_CORRECTION_AVAILABLE_ABERRATION_MODES android.colorCorrection.availableAberrationModes}
  • * * + *
  • Auto white balance lock
      + *
    • {@link CaptureRequest#CONTROL_AWB_LOCK android.control.awbLock}
    • + *
    + *
  • * *

    If auto white balance is enabled, then the camera device * will accurately report the values applied by AWB in the result.

    @@ -413,6 +422,7 @@ public abstract class CameraMetadata { * @see CameraCharacteristics#COLOR_CORRECTION_AVAILABLE_ABERRATION_MODES * @see CaptureRequest#COLOR_CORRECTION_GAINS * @see CaptureRequest#COLOR_CORRECTION_TRANSFORM + * @see CaptureRequest#CONTROL_AWB_LOCK * @see CaptureRequest#SHADING_MODE * @see CaptureRequest#STATISTICS_LENS_SHADING_MAP_MODE * @see CaptureRequest#TONEMAP_CURVE @@ -529,9 +539,15 @@ public abstract class CameraMetadata { * YUV_420_888 format.

    * *

    In addition, the {@link CameraCharacteristics#SYNC_MAX_LATENCY android.sync.maxLatency} field is - * guaranted to have a value between 0 and 4, inclusive.

    + * guaranted to have a value between 0 and 4, inclusive. + * {@link CameraCharacteristics#CONTROL_AE_LOCK_AVAILABLE android.control.aeLockAvailable} and + * {@link CameraCharacteristics#CONTROL_AWB_LOCK_AVAILABLE android.control.awbLockAvailable} are also guaranteed + * to be true so burst capture with these two locks ON + * yields consistent image output.

    * * @see CameraCharacteristics#CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES + * @see CameraCharacteristics#CONTROL_AE_LOCK_AVAILABLE + * @see CameraCharacteristics#CONTROL_AWB_LOCK_AVAILABLE * @see CameraCharacteristics#SCALER_STREAM_CONFIGURATION_MAP * @see CameraCharacteristics#SYNC_MAX_LATENCY * @see CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES