Camera3: Add auto white balance lock value to metadata
Add ANDROID_CONTROL_AWB_LOCK to metadata
Bug: 14059883
Change-Id: Ia2b1046d698944d5b0585b13322227aa3bc03968
diff --git a/camera/QCamera2/HAL3/QCamera3HWI.cpp b/camera/QCamera2/HAL3/QCamera3HWI.cpp
index fedb5dc..36b7dc5 100644
--- a/camera/QCamera2/HAL3/QCamera3HWI.cpp
+++ b/camera/QCamera2/HAL3/QCamera3HWI.cpp
@@ -2016,6 +2016,7 @@
case CAM_INTF_PARM_WHITE_BALANCE:
case CAM_INTF_META_AWB_REGIONS:
case CAM_INTF_META_AWB_STATE:
+ case CAM_INTF_PARM_AWB_LOCK:
case CAM_INTF_META_MODE: {
ALOGV("%s: 3A metadata: %d, do not process", __func__, curr_entry);
break;
@@ -2408,8 +2409,8 @@
*==========================================================================*/
camera_metadata_t*
QCamera3HardwareInterface::translateCbUrgentMetadataToResultMetadata
- (metadata_buffer_t *metadata) {
-
+ (metadata_buffer_t *metadata)
+{
CameraMetadata camMetadata;
camera_metadata_t* resultMetadata;
@@ -2521,6 +2522,13 @@
ALOGV("%s: urgent Metadata : ANDROID_CONTROL_AWB_STATE", __func__);
break;
}
+ case CAM_INTF_PARM_AWB_LOCK: {
+ uint8_t *awb_lock =
+ (uint8_t *)POINTER_OF(CAM_INTF_PARM_AWB_LOCK, metadata);
+ camMetadata.update(ANDROID_CONTROL_AWB_LOCK, awb_lock, 1);
+ ALOGV("%s: urgent Metadata : ANDROID_CONTROL_AWB_LOCK", __func__);
+ break;
+ }
case CAM_INTF_META_MODE: {
uint8_t *mode =(uint8_t *)POINTER_OF(CAM_INTF_META_MODE, metadata);
camMetadata.update(ANDROID_CONTROL_MODE, mode, 1);
diff --git a/camera/QCamera2/stack/common/cam_intf.h b/camera/QCamera2/stack/common/cam_intf.h
index 588cf43..3de809f 100644
--- a/camera/QCamera2/stack/common/cam_intf.h
+++ b/camera/QCamera2/stack/common/cam_intf.h
@@ -462,7 +462,7 @@
INCLUDE(CAM_INTF_PARM_EV_STEP, cam_rational_type_t, 1);
INCLUDE(CAM_INTF_PARM_AEC_LOCK, uint8_t, 1);
INCLUDE(CAM_INTF_PARM_FPS_RANGE, cam_fps_range_t, 1);
- INCLUDE(CAM_INTF_PARM_AWB_LOCK, int32_t, 1);
+ INCLUDE(CAM_INTF_PARM_AWB_LOCK, uint8_t, 1);
INCLUDE(CAM_INTF_PARM_EFFECT, int32_t, 1);
INCLUDE(CAM_INTF_META_AEC_PRECAPTURE_TRIGGER, cam_trigger_t, 1);
INCLUDE(CAM_INTF_META_AF_TRIGGER, cam_trigger_t, 1);