QCamera2: HAL3: Add AF_SCENE_CHANGE vendor tag
AF_SCENE_CHANGE is used to indicate AF algorithm detects a scene change
within AF ROI (Region of Interest).
Bug: 28912374
Change-Id: I4b9d36bf9939fff0c80fb3c5824b10ed1fd5eadf
diff --git a/msm8998/QCamera2/HAL3/QCamera3HWI.cpp b/msm8998/QCamera2/HAL3/QCamera3HWI.cpp
index 58599a6..471fb5f 100644
--- a/msm8998/QCamera2/HAL3/QCamera3HWI.cpp
+++ b/msm8998/QCamera2/HAL3/QCamera3HWI.cpp
@@ -6783,6 +6783,11 @@
camMetadata.update(QCAMERA3_INSTANT_AEC_MODE, instant_aec_mode, 1);
}
+ // AF scene change
+ IF_META_AVAILABLE(uint8_t, afSceneChange, CAM_INTF_META_AF_SCENE_CHANGE, metadata) {
+ camMetadata.update(NEXUS_EXPERIMENTAL_2016_AF_SCENE_CHANGE, afSceneChange, 1);
+ }
+
/* In batch mode, cache the first metadata in the batch */
if (mBatchSize && firstMetadataInBatch) {
mCachedMetadata.clear();
@@ -8719,6 +8724,7 @@
#ifndef USE_HAL_3_3
ANDROID_CONTROL_POST_RAW_SENSITIVITY_BOOST,
#endif
+ NEXUS_EXPERIMENTAL_2016_AF_SCENE_CHANGE,
// DevCamDebug metadata result_keys_basic
DEVCAMDEBUG_META_ENABLE,
// DevCamDebug metadata result_keys AF
diff --git a/msm8998/QCamera2/HAL3/QCamera3VendorTags.cpp b/msm8998/QCamera2/HAL3/QCamera3VendorTags.cpp
index 2830963..9d6062f 100644
--- a/msm8998/QCamera2/HAL3/QCamera3VendorTags.cpp
+++ b/msm8998/QCamera2/HAL3/QCamera3VendorTags.cpp
@@ -216,6 +216,7 @@
vendor_tag_info_t nexus_experimental_2016[NEXUS_EXPERIMENTAL_2016_END -
NEXUS_EXPERIMENTAL_2016_START] = {
{"3a.hybrid_3a_enable", TYPE_BYTE },
+ {"control.af_scene_change", TYPE_BYTE },
// DevCamDebug vendor tag
{ "devcamdebug_meta_enable", TYPE_BYTE },
// DevCamDebug vendor tag AF
@@ -330,6 +331,7 @@
(uint32_t)QCAMERA3_SENSOR_IS_MONO_ONLY,
//NEXUS_EXPERIMENTAL_2016
+ (uint32_t)NEXUS_EXPERIMENTAL_2016_AF_SCENE_CHANGE,
// DEVCAMDEBUG
(uint32_t)DEVCAMDEBUG_META_ENABLE,
// DEVCAMDEBUG AF
diff --git a/msm8998/QCamera2/HAL3/QCamera3VendorTags.h b/msm8998/QCamera2/HAL3/QCamera3VendorTags.h
index e39efed..99e2639 100644
--- a/msm8998/QCamera2/HAL3/QCamera3VendorTags.h
+++ b/msm8998/QCamera2/HAL3/QCamera3VendorTags.h
@@ -230,6 +230,7 @@
QCAMERA3_INSTANT_AEC_END,
NEXUS_EXPERIMENTAL_2016_HYBRID_AE_ENABLE = NEXUS_EXPERIMENTAL_2016_START,
+ NEXUS_EXPERIMENTAL_2016_AF_SCENE_CHANGE,
// DEVCAMDEBUG
DEVCAMDEBUG_META_ENABLE,
// DEVCAMDEBUG AF