msm8998: Qcamera2: Add vendor tags for DevCamera debug
Add vendor tags for DevCamera debug
g_HAF not ready yet
work with change id:
I6f53199244a54bcf8b4084e67d4782541b58a57b
Change-Id: I82b8778bd41b308070ac99c5ff778f358c01fe22
diff --git a/msm8998/QCamera2/HAL3/QCamera3HWI.cpp b/msm8998/QCamera2/HAL3/QCamera3HWI.cpp
index 1bb833c..58599a6 100644
--- a/msm8998/QCamera2/HAL3/QCamera3HWI.cpp
+++ b/msm8998/QCamera2/HAL3/QCamera3HWI.cpp
@@ -394,6 +394,9 @@
mCallbacks(callbacks),
mCaptureIntent(0),
mCacMode(0),
+ /* DevCamDebug metadata internal m control*/
+ mDevCamDebugMetaEnable(0),
+ /* DevCamDebug metadata end */
mBatchSize(0),
mToBeQueuedVidBufs(0),
mHFRVideoFps(DEFAULT_VIDEO_FPS),
@@ -3201,7 +3204,11 @@
result.result = translateFromHalMetadata(metadata,
i->timestamp, i->request_id, i->jpegMetadata, i->pipeline_depth,
- i->capture_intent, internalPproc, i->fwkCacMode,
+ i->capture_intent,
+ /* DevCamDebug metadata translateFromHalMetadata function call*/
+ i->DevCamDebug_meta_enable,
+ /* DevCamDebug metadata end */
+ internalPproc, i->fwkCacMode,
firstMetadataInBatch);
saveExifParams(metadata);
@@ -4660,6 +4667,13 @@
meta.find(ANDROID_CONTROL_CAPTURE_INTENT).data.u8[0];
}
pendingRequest.capture_intent = mCaptureIntent;
+ /* DevCamDebug metadata processCaptureRequest */
+ if (meta.exists(DEVCAMDEBUG_META_ENABLE)) {
+ mDevCamDebugMetaEnable =
+ meta.find(DEVCAMDEBUG_META_ENABLE).data.u8[0];
+ }
+ pendingRequest.DevCamDebug_meta_enable = mDevCamDebugMetaEnable;
+ /* DevCamDebug metadata end */
//extract CAC info
if (meta.exists(ANDROID_COLOR_CORRECTION_ABERRATION_MODE)) {
@@ -5551,6 +5565,8 @@
* @timestamp: metadata buffer timestamp
* @request_id: request id
* @jpegMetadata: additional jpeg metadata
+ * @DevCamDebug_meta_enable: enable DevCamDebug meta
+ * // DevCamDebug metadata end
* @pprocDone: whether internal offline postprocsesing is done
*
* RETURN : camera_metadata_t*
@@ -5564,6 +5580,9 @@
const CameraMetadata& jpegMetadata,
uint8_t pipeline_depth,
uint8_t capture_intent,
+ /* DevCamDebug metadata translateFromHalMetadata argument */
+ uint8_t DevCamDebug_meta_enable,
+ /* DevCamDebug metadata end */
bool pprocDone,
uint8_t fwk_cacMode,
bool firstMetadataInBatch)
@@ -5585,6 +5604,10 @@
camMetadata.update(ANDROID_REQUEST_ID, &request_id, 1);
camMetadata.update(ANDROID_REQUEST_PIPELINE_DEPTH, &pipeline_depth, 1);
camMetadata.update(ANDROID_CONTROL_CAPTURE_INTENT, &capture_intent, 1);
+ if (mBatchSize == 0) {
+ // DevCamDebug metadata translateFromHalMetadata. Only update this one for non-HFR mode
+ camMetadata.update(DEVCAMDEBUG_META_ENABLE, &DevCamDebug_meta_enable, 1);
+ }
if (mBatchSize && !firstMetadataInBatch) {
/* In batch mode, use cached metadata instead of parsing metadata buffer again */
@@ -5592,6 +5615,243 @@
return resultMetadata;
}
+ // atrace_begin(ATRACE_TAG_ALWAYS, "DevCamDebugInfo");
+ // Only update DevCameraDebug metadta conditionally: non-HFR mode and it is enabled.
+ if (mBatchSize == 0 && DevCamDebug_meta_enable != 0) {
+ // DevCamDebug metadata translateFromHalMetadata AF
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_lens_position,
+ CAM_INTF_META_DEV_CAM_AF_LENS_POSITION, metadata) {
+ int32_t fwk_DevCamDebug_af_lens_position = *DevCamDebug_af_lens_position;
+ camMetadata.update(DEVCAMDEBUG_AF_LENS_POSITION, &fwk_DevCamDebug_af_lens_position, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_tof_confidence,
+ CAM_INTF_META_DEV_CAM_AF_TOF_CONFIDENCE, metadata) {
+ int32_t fwk_DevCamDebug_af_tof_confidence = *DevCamDebug_af_tof_confidence;
+ camMetadata.update(DEVCAMDEBUG_AF_TOF_CONFIDENCE, &fwk_DevCamDebug_af_tof_confidence, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_tof_distance,
+ CAM_INTF_META_DEV_CAM_AF_TOF_DISTANCE, metadata) {
+ int32_t fwk_DevCamDebug_af_tof_distance = *DevCamDebug_af_tof_distance;
+ camMetadata.update(DEVCAMDEBUG_AF_TOF_DISTANCE, &fwk_DevCamDebug_af_tof_distance, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_luma,
+ CAM_INTF_META_DEV_CAM_AF_LUMA, metadata) {
+ int32_t fwk_DevCamDebug_af_luma = *DevCamDebug_af_luma;
+ camMetadata.update(DEVCAMDEBUG_AF_LUMA, &fwk_DevCamDebug_af_luma, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_haf_state,
+ CAM_INTF_META_DEV_CAM_AF_HAF_STATE, metadata) {
+ int32_t fwk_DevCamDebug_af_haf_state = *DevCamDebug_af_haf_state;
+ camMetadata.update(DEVCAMDEBUG_AF_HAF_STATE, &fwk_DevCamDebug_af_haf_state, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_monitor_pdaf_target_pos,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_PDAF_TARGET_POS, metadata) {
+ int32_t fwk_DevCamDebug_af_monitor_pdaf_target_pos =
+ *DevCamDebug_af_monitor_pdaf_target_pos;
+ camMetadata.update(DEVCAMDEBUG_AF_MONITOR_PDAF_TARGET_POS,
+ &fwk_DevCamDebug_af_monitor_pdaf_target_pos, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_monitor_pdaf_confidence,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_PDAF_CONFIDENCE, metadata) {
+ int32_t fwk_DevCamDebug_af_monitor_pdaf_confidence =
+ *DevCamDebug_af_monitor_pdaf_confidence;
+ camMetadata.update(DEVCAMDEBUG_AF_MONITOR_PDAF_CONFIDENCE,
+ &fwk_DevCamDebug_af_monitor_pdaf_confidence, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_monitor_pdaf_refocus,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_PDAF_REFOCUS, metadata) {
+ int32_t fwk_DevCamDebug_af_monitor_pdaf_refocus = *DevCamDebug_af_monitor_pdaf_refocus;
+ camMetadata.update(DEVCAMDEBUG_AF_MONITOR_PDAF_REFOCUS,
+ &fwk_DevCamDebug_af_monitor_pdaf_refocus, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_monitor_tof_target_pos,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_TOF_TARGET_POS, metadata) {
+ int32_t fwk_DevCamDebug_af_monitor_tof_target_pos =
+ *DevCamDebug_af_monitor_tof_target_pos;
+ camMetadata.update(DEVCAMDEBUG_AF_MONITOR_TOF_TARGET_POS,
+ &fwk_DevCamDebug_af_monitor_tof_target_pos, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_monitor_tof_confidence,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_TOF_CONFIDENCE, metadata) {
+ int32_t fwk_DevCamDebug_af_monitor_tof_confidence =
+ *DevCamDebug_af_monitor_tof_confidence;
+ camMetadata.update(DEVCAMDEBUG_AF_MONITOR_TOF_CONFIDENCE,
+ &fwk_DevCamDebug_af_monitor_tof_confidence, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_monitor_tof_refocus,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_TOF_REFOCUS, metadata) {
+ int32_t fwk_DevCamDebug_af_monitor_tof_refocus = *DevCamDebug_af_monitor_tof_refocus;
+ camMetadata.update(DEVCAMDEBUG_AF_MONITOR_TOF_REFOCUS,
+ &fwk_DevCamDebug_af_monitor_tof_refocus, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_monitor_type_select,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_TYPE_SELECT, metadata) {
+ int32_t fwk_DevCamDebug_af_monitor_type_select = *DevCamDebug_af_monitor_type_select;
+ camMetadata.update(DEVCAMDEBUG_AF_MONITOR_TYPE_SELECT,
+ &fwk_DevCamDebug_af_monitor_type_select, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_monitor_refocus,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_REFOCUS, metadata) {
+ int32_t fwk_DevCamDebug_af_monitor_refocus = *DevCamDebug_af_monitor_refocus;
+ camMetadata.update(DEVCAMDEBUG_AF_MONITOR_REFOCUS,
+ &fwk_DevCamDebug_af_monitor_refocus, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_monitor_target_pos,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_TARGET_POS, metadata) {
+ int32_t fwk_DevCamDebug_af_monitor_target_pos = *DevCamDebug_af_monitor_target_pos;
+ camMetadata.update(DEVCAMDEBUG_AF_MONITOR_TARGET_POS,
+ &fwk_DevCamDebug_af_monitor_target_pos, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_search_pdaf_target_pos,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_TARGET_POS, metadata) {
+ int32_t fwk_DevCamDebug_af_search_pdaf_target_pos =
+ *DevCamDebug_af_search_pdaf_target_pos;
+ camMetadata.update(DEVCAMDEBUG_AF_SEARCH_PDAF_TARGET_POS,
+ &fwk_DevCamDebug_af_search_pdaf_target_pos, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_search_pdaf_next_pos,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_NEXT_POS, metadata) {
+ int32_t fwk_DevCamDebug_af_search_pdaf_next_pos = *DevCamDebug_af_search_pdaf_next_pos;
+ camMetadata.update(DEVCAMDEBUG_AF_SEARCH_PDAF_NEXT_POS,
+ &fwk_DevCamDebug_af_search_pdaf_next_pos, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_search_pdaf_near_pos,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_NEAR_POS, metadata) {
+ int32_t fwk_DevCamDebug_af_search_pdaf_near_pos = *DevCamDebug_af_search_pdaf_near_pos;
+ camMetadata.update(DEVCAMDEBUG_AF_SEARCH_PDAF_NEAR_POS,
+ &fwk_DevCamDebug_af_search_pdaf_near_pos, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_search_pdaf_far_pos,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_FAR_POS, metadata) {
+ int32_t fwk_DevCamDebug_af_search_pdaf_far_pos = *DevCamDebug_af_search_pdaf_far_pos;
+ camMetadata.update(DEVCAMDEBUG_AF_SEARCH_PDAF_FAR_POS,
+ &fwk_DevCamDebug_af_search_pdaf_far_pos, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_search_pdaf_confidence,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_CONFIDENCE, metadata) {
+ int32_t fwk_DevCamDebug_af_search_pdaf_confidence = *DevCamDebug_af_search_pdaf_confidence;
+ camMetadata.update(DEVCAMDEBUG_AF_SEARCH_PDAF_CONFIDENCE,
+ &fwk_DevCamDebug_af_search_pdaf_confidence, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_search_tof_target_pos,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_TARGET_POS, metadata) {
+ int32_t fwk_DevCamDebug_af_search_tof_target_pos =
+ *DevCamDebug_af_search_tof_target_pos;
+ camMetadata.update(DEVCAMDEBUG_AF_SEARCH_TOF_TARGET_POS,
+ &fwk_DevCamDebug_af_search_tof_target_pos, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_search_tof_next_pos,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_NEXT_POS, metadata) {
+ int32_t fwk_DevCamDebug_af_search_tof_next_pos = *DevCamDebug_af_search_tof_next_pos;
+ camMetadata.update(DEVCAMDEBUG_AF_SEARCH_TOF_NEXT_POS,
+ &fwk_DevCamDebug_af_search_tof_next_pos, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_search_tof_near_pos,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_NEAR_POS, metadata) {
+ int32_t fwk_DevCamDebug_af_search_tof_near_pos = *DevCamDebug_af_search_tof_near_pos;
+ camMetadata.update(DEVCAMDEBUG_AF_SEARCH_TOF_NEAR_POS,
+ &fwk_DevCamDebug_af_search_tof_near_pos, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_search_tof_far_pos,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_FAR_POS, metadata) {
+ int32_t fwk_DevCamDebug_af_search_tof_far_pos = *DevCamDebug_af_search_tof_far_pos;
+ camMetadata.update(DEVCAMDEBUG_AF_SEARCH_TOF_FAR_POS,
+ &fwk_DevCamDebug_af_search_tof_far_pos, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_search_tof_confidence,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_CONFIDENCE, metadata) {
+ int32_t fwk_DevCamDebug_af_search_tof_confidence = *DevCamDebug_af_search_tof_confidence;
+ camMetadata.update(DEVCAMDEBUG_AF_SEARCH_TOF_CONFIDENCE,
+ &fwk_DevCamDebug_af_search_tof_confidence, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_search_type_select,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_TYPE_SELECT, metadata) {
+ int32_t fwk_DevCamDebug_af_search_type_select = *DevCamDebug_af_search_type_select;
+ camMetadata.update(DEVCAMDEBUG_AF_SEARCH_TYPE_SELECT,
+ &fwk_DevCamDebug_af_search_type_select, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_search_next_pos,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_NEXT_POS, metadata) {
+ int32_t fwk_DevCamDebug_af_search_next_pos = *DevCamDebug_af_search_next_pos;
+ camMetadata.update(DEVCAMDEBUG_AF_SEARCH_NEXT_POS,
+ &fwk_DevCamDebug_af_search_next_pos, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_af_search_target_pos,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_TARGET_POS, metadata) {
+ int32_t fwk_DevCamDebug_af_search_target_pos = *DevCamDebug_af_search_target_pos;
+ camMetadata.update(DEVCAMDEBUG_AF_SEARCH_TARGET_POS,
+ &fwk_DevCamDebug_af_search_target_pos, 1);
+ }
+ // DevCamDebug metadata translateFromHalMetadata AEC
+ IF_META_AVAILABLE(int32_t, DevCamDebug_aec_target_luma,
+ CAM_INTF_META_DEV_CAM_AEC_TARGET_LUMA, metadata) {
+ int32_t fwk_DevCamDebug_aec_target_luma = *DevCamDebug_aec_target_luma;
+ camMetadata.update(DEVCAMDEBUG_AEC_TARGET_LUMA, &fwk_DevCamDebug_aec_target_luma, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_aec_comp_luma,
+ CAM_INTF_META_DEV_CAM_AEC_COMP_LUMA, metadata) {
+ int32_t fwk_DevCamDebug_aec_comp_luma = *DevCamDebug_aec_comp_luma;
+ camMetadata.update(DEVCAMDEBUG_AEC_COMP_LUMA, &fwk_DevCamDebug_aec_comp_luma, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_aec_avg_luma,
+ CAM_INTF_META_DEV_CAM_AEC_AVG_LUMA, metadata) {
+ int32_t fwk_DevCamDebug_aec_avg_luma = *DevCamDebug_aec_avg_luma;
+ camMetadata.update(DEVCAMDEBUG_AEC_AVG_LUMA, &fwk_DevCamDebug_aec_avg_luma, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_aec_cur_luma,
+ CAM_INTF_META_DEV_CAM_AEC_CUR_LUMA, metadata) {
+ int32_t fwk_DevCamDebug_aec_cur_luma = *DevCamDebug_aec_cur_luma;
+ camMetadata.update(DEVCAMDEBUG_AEC_CUR_LUMA, &fwk_DevCamDebug_aec_cur_luma, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_aec_linecount,
+ CAM_INTF_META_DEV_CAM_AEC_LINECOUNT, metadata) {
+ int32_t fwk_DevCamDebug_aec_linecount = *DevCamDebug_aec_linecount;
+ camMetadata.update(DEVCAMDEBUG_AEC_LINECOUNT, &fwk_DevCamDebug_aec_linecount, 1);
+ }
+ IF_META_AVAILABLE(float, DevCamDebug_aec_real_gain,
+ CAM_INTF_META_DEV_CAM_AEC_REAL_GAIN, metadata) {
+ float fwk_DevCamDebug_aec_real_gain = *DevCamDebug_aec_real_gain;
+ camMetadata.update(DEVCAMDEBUG_AEC_REAL_GAIN, &fwk_DevCamDebug_aec_real_gain, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_aec_exp_index,
+ CAM_INTF_META_DEV_CAM_AEC_EXP_INDEX, metadata) {
+ int32_t fwk_DevCamDebug_aec_exp_index = *DevCamDebug_aec_exp_index;
+ camMetadata.update(DEVCAMDEBUG_AEC_EXP_INDEX, &fwk_DevCamDebug_aec_exp_index, 1);
+ }
+ IF_META_AVAILABLE(float, DevCamDebug_aec_lux_idx,
+ CAM_INTF_META_DEV_CAM_AEC_LUX_IDX, metadata) {
+ float fwk_DevCamDebug_aec_lux_idx = *DevCamDebug_aec_lux_idx;
+ camMetadata.update(DEVCAMDEBUG_AEC_LUX_IDX, &fwk_DevCamDebug_aec_lux_idx, 1);
+ }
+ // DevCamDebug metadata translateFromHalMetadata AWB
+ IF_META_AVAILABLE(float, DevCamDebug_awb_r_gain,
+ CAM_INTF_META_DEV_CAM_AWB_R_GAIN, metadata) {
+ float fwk_DevCamDebug_awb_r_gain = *DevCamDebug_awb_r_gain;
+ camMetadata.update(DEVCAMDEBUG_AWB_R_GAIN, &fwk_DevCamDebug_awb_r_gain, 1);
+ }
+ IF_META_AVAILABLE(float, DevCamDebug_awb_g_gain,
+ CAM_INTF_META_DEV_CAM_AWB_G_GAIN, metadata) {
+ float fwk_DevCamDebug_awb_g_gain = *DevCamDebug_awb_g_gain;
+ camMetadata.update(DEVCAMDEBUG_AWB_G_GAIN, &fwk_DevCamDebug_awb_g_gain, 1);
+ }
+ IF_META_AVAILABLE(float, DevCamDebug_awb_b_gain,
+ CAM_INTF_META_DEV_CAM_AWB_B_GAIN, metadata) {
+ float fwk_DevCamDebug_awb_b_gain = *DevCamDebug_awb_b_gain;
+ camMetadata.update(DEVCAMDEBUG_AWB_B_GAIN, &fwk_DevCamDebug_awb_b_gain, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_awb_cct,
+ CAM_INTF_META_DEV_CAM_AWB_CCT, metadata) {
+ int32_t fwk_DevCamDebug_awb_cct = *DevCamDebug_awb_cct;
+ camMetadata.update(DEVCAMDEBUG_AWB_CCT, &fwk_DevCamDebug_awb_cct, 1);
+ }
+ IF_META_AVAILABLE(int32_t, DevCamDebug_awb_decision,
+ CAM_INTF_META_DEV_CAM_AWB_DECISION, metadata) {
+ int32_t fwk_DevCamDebug_awb_decision = *DevCamDebug_awb_decision;
+ camMetadata.update(DEVCAMDEBUG_AWB_DECISION, &fwk_DevCamDebug_awb_decision, 1);
+ }
+ }
+ // atrace_end(ATRACE_TAG_ALWAYS);
+
IF_META_AVAILABLE(uint32_t, frame_number, CAM_INTF_META_FRAME_NUMBER, metadata) {
int64_t fwk_frame_number = *frame_number;
camMetadata.update(ANDROID_SYNC_FRAME_NUMBER, &fwk_frame_number, 1);
@@ -8417,7 +8677,11 @@
ANDROID_STATISTICS_HISTOGRAM_MODE, ANDROID_STATISTICS_SHARPNESS_MAP_MODE,
ANDROID_STATISTICS_LENS_SHADING_MAP_MODE, ANDROID_TONEMAP_CURVE_BLUE,
ANDROID_TONEMAP_CURVE_GREEN, ANDROID_TONEMAP_CURVE_RED, ANDROID_TONEMAP_MODE,
- ANDROID_BLACK_LEVEL_LOCK };
+ ANDROID_BLACK_LEVEL_LOCK,
+ /* DevCamDebug metadata request_keys_basic */
+ DEVCAMDEBUG_META_ENABLE,
+ /* DevCamDebug metadata end */
+ };
size_t request_keys_cnt =
sizeof(request_keys_basic)/sizeof(request_keys_basic[0]);
@@ -8455,6 +8719,52 @@
#ifndef USE_HAL_3_3
ANDROID_CONTROL_POST_RAW_SENSITIVITY_BOOST,
#endif
+ // DevCamDebug metadata result_keys_basic
+ DEVCAMDEBUG_META_ENABLE,
+ // DevCamDebug metadata result_keys AF
+ DEVCAMDEBUG_AF_LENS_POSITION,
+ DEVCAMDEBUG_AF_TOF_CONFIDENCE,
+ DEVCAMDEBUG_AF_TOF_DISTANCE,
+ DEVCAMDEBUG_AF_LUMA,
+ DEVCAMDEBUG_AF_HAF_STATE,
+ DEVCAMDEBUG_AF_MONITOR_PDAF_TARGET_POS,
+ DEVCAMDEBUG_AF_MONITOR_PDAF_CONFIDENCE,
+ DEVCAMDEBUG_AF_MONITOR_PDAF_REFOCUS,
+ DEVCAMDEBUG_AF_MONITOR_TOF_TARGET_POS,
+ DEVCAMDEBUG_AF_MONITOR_TOF_CONFIDENCE,
+ DEVCAMDEBUG_AF_MONITOR_TOF_REFOCUS,
+ DEVCAMDEBUG_AF_MONITOR_TYPE_SELECT,
+ DEVCAMDEBUG_AF_MONITOR_REFOCUS,
+ DEVCAMDEBUG_AF_MONITOR_TARGET_POS,
+ DEVCAMDEBUG_AF_SEARCH_PDAF_TARGET_POS,
+ DEVCAMDEBUG_AF_SEARCH_PDAF_NEXT_POS,
+ DEVCAMDEBUG_AF_SEARCH_PDAF_NEAR_POS,
+ DEVCAMDEBUG_AF_SEARCH_PDAF_FAR_POS,
+ DEVCAMDEBUG_AF_SEARCH_PDAF_CONFIDENCE,
+ DEVCAMDEBUG_AF_SEARCH_TOF_TARGET_POS,
+ DEVCAMDEBUG_AF_SEARCH_TOF_NEXT_POS,
+ DEVCAMDEBUG_AF_SEARCH_TOF_NEAR_POS,
+ DEVCAMDEBUG_AF_SEARCH_TOF_FAR_POS,
+ DEVCAMDEBUG_AF_SEARCH_TOF_CONFIDENCE,
+ DEVCAMDEBUG_AF_SEARCH_TYPE_SELECT,
+ DEVCAMDEBUG_AF_SEARCH_NEXT_POS,
+ DEVCAMDEBUG_AF_SEARCH_TARGET_POS,
+ // DevCamDebug metadata result_keys AEC
+ DEVCAMDEBUG_AEC_TARGET_LUMA,
+ DEVCAMDEBUG_AEC_COMP_LUMA,
+ DEVCAMDEBUG_AEC_AVG_LUMA,
+ DEVCAMDEBUG_AEC_CUR_LUMA,
+ DEVCAMDEBUG_AEC_LINECOUNT,
+ DEVCAMDEBUG_AEC_REAL_GAIN,
+ DEVCAMDEBUG_AEC_EXP_INDEX,
+ DEVCAMDEBUG_AEC_LUX_IDX,
+ // DevCamDebug metadata result_keys AWB
+ DEVCAMDEBUG_AWB_R_GAIN,
+ DEVCAMDEBUG_AWB_G_GAIN,
+ DEVCAMDEBUG_AWB_B_GAIN,
+ DEVCAMDEBUG_AWB_CCT,
+ DEVCAMDEBUG_AWB_DECISION,
+ /* DevCamDebug metadata end */
};
size_t result_keys_cnt =
diff --git a/msm8998/QCamera2/HAL3/QCamera3HWI.h b/msm8998/QCamera2/HAL3/QCamera3HWI.h
index 86e1480..309d376 100644
--- a/msm8998/QCamera2/HAL3/QCamera3HWI.h
+++ b/msm8998/QCamera2/HAL3/QCamera3HWI.h
@@ -233,7 +233,11 @@
camera_metadata_t* translateFromHalMetadata(metadata_buffer_t *metadata,
nsecs_t timestamp, int32_t request_id,
const CameraMetadata& jpegMetadata, uint8_t pipeline_depth,
- uint8_t capture_intent, bool pprocDone, uint8_t fwk_cacMode,
+ uint8_t capture_intent,
+ /* DevCamDebug metadata translateFromHalMetadata augment .h */
+ uint8_t DevCamDebug_meta_enable,
+ /* DevCamDebug metadata end */
+ bool pprocDone, uint8_t fwk_cacMode,
bool firstMetadataInBatch);
camera_metadata_t* saveRequestSettings(const CameraMetadata& jpegMetadata,
camera3_capture_request_t *request);
@@ -475,6 +479,9 @@
uint8_t capture_intent;
uint8_t fwkCacMode;
bool shutter_notified;
+ /* DevCamDebug metadata PendingRequestInfo */
+ uint8_t DevCamDebug_meta_enable;
+ /* DevCamDebug metadata end */
} PendingRequestInfo;
typedef struct {
uint32_t frame_number;
@@ -527,6 +534,10 @@
uint8_t mCaptureIntent;
uint8_t mCacMode;
+ // DevCamDebug metadata internal variable
+ uint8_t mDevCamDebugMetaEnable;
+ /* DevCamDebug metadata end */
+
metadata_buffer_t mReprocMeta; //scratch meta buffer
/* 0: Not batch, non-zero: Number of image buffers in a batch */
uint8_t mBatchSize;
diff --git a/msm8998/QCamera2/HAL3/QCamera3VendorTags.cpp b/msm8998/QCamera2/HAL3/QCamera3VendorTags.cpp
index cf8123f..2830963 100644
--- a/msm8998/QCamera2/HAL3/QCamera3VendorTags.cpp
+++ b/msm8998/QCamera2/HAL3/QCamera3VendorTags.cpp
@@ -215,7 +215,52 @@
vendor_tag_info_t nexus_experimental_2016[NEXUS_EXPERIMENTAL_2016_END -
NEXUS_EXPERIMENTAL_2016_START] = {
- {"3a.hybrid_3a_enable", TYPE_BYTE }
+ {"3a.hybrid_3a_enable", TYPE_BYTE },
+ // DevCamDebug vendor tag
+ { "devcamdebug_meta_enable", TYPE_BYTE },
+ // DevCamDebug vendor tag AF
+ { "devcamdebug_af_lens_position", TYPE_INT32 },
+ { "devcamdebug_af_tof_confidence", TYPE_INT32 },
+ { "devcamdebug_af_tof_distance", TYPE_INT32 },
+ { "devcamdebug_af_luma", TYPE_INT32 },
+ { "devcamdebug_af_haf_state", TYPE_INT32 },
+ { "devcamdebug_af_monitor_pdaf_target_pos", TYPE_INT32 },
+ { "devcamdebug_af_monitor_pdaf_confidence", TYPE_INT32 },
+ { "devcamdebug_af_monitor_pdaf_refocus", TYPE_INT32 },
+ { "devcamdebug_af_monitor_tof_target_pos", TYPE_INT32 },
+ { "devcamdebug_af_monitor_tof_confidence", TYPE_INT32 },
+ { "devcamdebug_af_monitor_tof_refocus", TYPE_INT32 },
+ { "devcamdebug_af_monitor_type_select", TYPE_INT32 },
+ { "devcamdebug_af_monitor_refocus", TYPE_INT32 },
+ { "devcamdebug_af_monitor_target_pos", TYPE_INT32 },
+ { "devcamdebug_af_search_pdaf_target_pos", TYPE_INT32 },
+ { "devcamdebug_af_search_pdaf_next_pos", TYPE_INT32 },
+ { "devcamdebug_af_search_pdaf_near_pos", TYPE_INT32 },
+ { "devcamdebug_af_search_pdaf_far_pos", TYPE_INT32 },
+ { "devcamdebug_af_search_pdaf_confidence", TYPE_INT32 },
+ { "devcamdebug_af_search_tof_target_pos", TYPE_INT32 },
+ { "devcamdebug_af_search_tof_next_pos", TYPE_INT32 },
+ { "devcamdebug_af_search_tof_near_pos", TYPE_INT32 },
+ { "devcamdebug_af_search_tof_far_pos", TYPE_INT32 },
+ { "devcamdebug_af_search_tof_confidence", TYPE_INT32 },
+ { "devcamdebug_af_search_type_select", TYPE_INT32 },
+ { "devcamdebug_af_search_next_pos", TYPE_INT32 },
+ { "devcamdebug_af_search_target_pos", TYPE_INT32 },
+ // DevCamDebug vendor tag AEC
+ { "devcamdebug_aec_target_luma", TYPE_INT32 },
+ { "devcamdebug_aec_comp_luma", TYPE_INT32 },
+ { "devcamdebug_aec_avg_luma", TYPE_INT32 },
+ { "devcamdebug_aec_cur_luma", TYPE_INT32 },
+ { "devcamdebug_aec_linecount", TYPE_INT32 },
+ { "devcamdebug_aec_real_gain", TYPE_FLOAT },
+ { "devcamdebug_aec_exp_index", TYPE_INT32 },
+ { "devcamdebug_aec_lux_idx", TYPE_FLOAT },
+ // DevCamDebug vendor tag AWB
+ { "devcamdebug_awb_r_gain", TYPE_FLOAT },
+ { "devcamdebug_awb_g_gain", TYPE_FLOAT },
+ { "devcamdebug_awb_b_gain", TYPE_FLOAT },
+ { "devcamdebug_awb_cct", TYPE_INT32 },
+ { "devcamdebug_awb_decision", TYPE_INT32 },
};
vendor_tag_info_t *qcamera3_tag_info[QCAMERA3_SECTIONS_END -
@@ -284,6 +329,54 @@
(uint32_t)QCAMERA3_SENSOR_DYNAMIC_BLACK_LEVEL_PATTERN,
(uint32_t)QCAMERA3_SENSOR_IS_MONO_ONLY,
+ //NEXUS_EXPERIMENTAL_2016
+ // DEVCAMDEBUG
+ (uint32_t)DEVCAMDEBUG_META_ENABLE,
+ // DEVCAMDEBUG AF
+ (uint32_t)DEVCAMDEBUG_AF_LENS_POSITION,
+ (uint32_t)DEVCAMDEBUG_AF_TOF_CONFIDENCE,
+ (uint32_t)DEVCAMDEBUG_AF_TOF_DISTANCE,
+ (uint32_t)DEVCAMDEBUG_AF_LUMA,
+ (uint32_t)DEVCAMDEBUG_AF_HAF_STATE,
+ (uint32_t)DEVCAMDEBUG_AF_MONITOR_PDAF_TARGET_POS,
+ (uint32_t)DEVCAMDEBUG_AF_MONITOR_PDAF_CONFIDENCE,
+ (uint32_t)DEVCAMDEBUG_AF_MONITOR_PDAF_REFOCUS,
+ (uint32_t)DEVCAMDEBUG_AF_MONITOR_TOF_TARGET_POS,
+ (uint32_t)DEVCAMDEBUG_AF_MONITOR_TOF_CONFIDENCE,
+ (uint32_t)DEVCAMDEBUG_AF_MONITOR_TOF_REFOCUS,
+ (uint32_t)DEVCAMDEBUG_AF_MONITOR_TYPE_SELECT,
+ (uint32_t)DEVCAMDEBUG_AF_MONITOR_REFOCUS,
+ (uint32_t)DEVCAMDEBUG_AF_MONITOR_TARGET_POS,
+ (uint32_t)DEVCAMDEBUG_AF_SEARCH_PDAF_TARGET_POS,
+ (uint32_t)DEVCAMDEBUG_AF_SEARCH_PDAF_NEXT_POS,
+ (uint32_t)DEVCAMDEBUG_AF_SEARCH_PDAF_NEAR_POS,
+ (uint32_t)DEVCAMDEBUG_AF_SEARCH_PDAF_FAR_POS,
+ (uint32_t)DEVCAMDEBUG_AF_SEARCH_PDAF_CONFIDENCE,
+ (uint32_t)DEVCAMDEBUG_AF_SEARCH_TOF_TARGET_POS,
+ (uint32_t)DEVCAMDEBUG_AF_SEARCH_TOF_NEXT_POS,
+ (uint32_t)DEVCAMDEBUG_AF_SEARCH_TOF_NEAR_POS,
+ (uint32_t)DEVCAMDEBUG_AF_SEARCH_TOF_FAR_POS,
+ (uint32_t)DEVCAMDEBUG_AF_SEARCH_TOF_CONFIDENCE,
+ (uint32_t)DEVCAMDEBUG_AF_SEARCH_TYPE_SELECT,
+ (uint32_t)DEVCAMDEBUG_AF_SEARCH_NEXT_POS,
+ (uint32_t)DEVCAMDEBUG_AF_SEARCH_TARGET_POS,
+ // DEVCAMDEBUG AEC
+ (uint32_t)DEVCAMDEBUG_AEC_TARGET_LUMA,
+ (uint32_t)DEVCAMDEBUG_AEC_COMP_LUMA,
+ (uint32_t)DEVCAMDEBUG_AEC_AVG_LUMA,
+ (uint32_t)DEVCAMDEBUG_AEC_CUR_LUMA,
+ (uint32_t)DEVCAMDEBUG_AEC_LINECOUNT,
+ (uint32_t)DEVCAMDEBUG_AEC_REAL_GAIN,
+ (uint32_t)DEVCAMDEBUG_AEC_EXP_INDEX,
+ (uint32_t)DEVCAMDEBUG_AEC_LUX_IDX,
+ // DEVCAMDEBUG AWB
+ (uint32_t)DEVCAMDEBUG_AWB_R_GAIN,
+ (uint32_t)DEVCAMDEBUG_AWB_G_GAIN,
+ (uint32_t)DEVCAMDEBUG_AWB_B_GAIN,
+ (uint32_t)DEVCAMDEBUG_AWB_CCT,
+ (uint32_t)DEVCAMDEBUG_AWB_DECISION,
+ // DEVCAMDEBUG END
+
// QCAMERA3_DUALCAM_LINK_META_DATA
(uint32_t)QCAMERA3_DUALCAM_LINK_ENABLE,
(uint32_t)QCAMERA3_DUALCAM_LINK_IS_MAIN,
diff --git a/msm8998/QCamera2/HAL3/QCamera3VendorTags.h b/msm8998/QCamera2/HAL3/QCamera3VendorTags.h
index 532c8ab..e39efed 100644
--- a/msm8998/QCamera2/HAL3/QCamera3VendorTags.h
+++ b/msm8998/QCamera2/HAL3/QCamera3VendorTags.h
@@ -230,6 +230,52 @@
QCAMERA3_INSTANT_AEC_END,
NEXUS_EXPERIMENTAL_2016_HYBRID_AE_ENABLE = NEXUS_EXPERIMENTAL_2016_START,
+ // DEVCAMDEBUG
+ DEVCAMDEBUG_META_ENABLE,
+ // DEVCAMDEBUG AF
+ DEVCAMDEBUG_AF_LENS_POSITION,
+ DEVCAMDEBUG_AF_TOF_CONFIDENCE,
+ DEVCAMDEBUG_AF_TOF_DISTANCE,
+ DEVCAMDEBUG_AF_LUMA,
+ DEVCAMDEBUG_AF_HAF_STATE,
+ DEVCAMDEBUG_AF_MONITOR_PDAF_TARGET_POS,
+ DEVCAMDEBUG_AF_MONITOR_PDAF_CONFIDENCE,
+ DEVCAMDEBUG_AF_MONITOR_PDAF_REFOCUS,
+ DEVCAMDEBUG_AF_MONITOR_TOF_TARGET_POS,
+ DEVCAMDEBUG_AF_MONITOR_TOF_CONFIDENCE,
+ DEVCAMDEBUG_AF_MONITOR_TOF_REFOCUS,
+ DEVCAMDEBUG_AF_MONITOR_TYPE_SELECT,
+ DEVCAMDEBUG_AF_MONITOR_REFOCUS,
+ DEVCAMDEBUG_AF_MONITOR_TARGET_POS,
+ DEVCAMDEBUG_AF_SEARCH_PDAF_TARGET_POS,
+ DEVCAMDEBUG_AF_SEARCH_PDAF_NEXT_POS,
+ DEVCAMDEBUG_AF_SEARCH_PDAF_NEAR_POS,
+ DEVCAMDEBUG_AF_SEARCH_PDAF_FAR_POS,
+ DEVCAMDEBUG_AF_SEARCH_PDAF_CONFIDENCE,
+ DEVCAMDEBUG_AF_SEARCH_TOF_TARGET_POS,
+ DEVCAMDEBUG_AF_SEARCH_TOF_NEXT_POS,
+ DEVCAMDEBUG_AF_SEARCH_TOF_NEAR_POS,
+ DEVCAMDEBUG_AF_SEARCH_TOF_FAR_POS,
+ DEVCAMDEBUG_AF_SEARCH_TOF_CONFIDENCE,
+ DEVCAMDEBUG_AF_SEARCH_TYPE_SELECT,
+ DEVCAMDEBUG_AF_SEARCH_NEXT_POS,
+ DEVCAMDEBUG_AF_SEARCH_TARGET_POS,
+ // DEVCAMDEBUG AEC
+ DEVCAMDEBUG_AEC_TARGET_LUMA,
+ DEVCAMDEBUG_AEC_COMP_LUMA,
+ DEVCAMDEBUG_AEC_AVG_LUMA,
+ DEVCAMDEBUG_AEC_CUR_LUMA,
+ DEVCAMDEBUG_AEC_LINECOUNT,
+ DEVCAMDEBUG_AEC_REAL_GAIN,
+ DEVCAMDEBUG_AEC_EXP_INDEX,
+ DEVCAMDEBUG_AEC_LUX_IDX,
+ // DEVCAMDEBUG AWB
+ DEVCAMDEBUG_AWB_R_GAIN,
+ DEVCAMDEBUG_AWB_G_GAIN,
+ DEVCAMDEBUG_AWB_B_GAIN,
+ DEVCAMDEBUG_AWB_CCT,
+ DEVCAMDEBUG_AWB_DECISION,
+ // DEVCAMDEBUG END
NEXUS_EXPERIMENTAL_2016_END,
};
diff --git a/msm8998/QCamera2/stack/common/cam_intf.h b/msm8998/QCamera2/stack/common/cam_intf.h
index 626d86d..1b82026 100644
--- a/msm8998/QCamera2/stack/common/cam_intf.h
+++ b/msm8998/QCamera2/stack/common/cam_intf.h
@@ -1107,6 +1107,52 @@
INCLUDE(CAM_INTF_META_DC_LOW_POWER_ENABLE, uint8_t, 1);
INCLUDE(CAM_INTF_META_DC_SAC_OUTPUT_INFO, cam_sac_output_info_t, 1);
INCLUDE(CAM_INTF_META_HYBRID_AE, uint8_t, 1);
+ /* DevCamDebug metadata CAM_INTF.H */
+ INCLUDE(CAM_INTF_META_DEV_CAM_ENABLE, uint8_t, 1);
+ /* DevCamDebug metadata CAM_INTF.H AF */
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_LENS_POSITION, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_TOF_CONFIDENCE, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_TOF_DISTANCE, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_LUMA, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_HAF_STATE, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_MONITOR_PDAF_TARGET_POS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_MONITOR_PDAF_CONFIDENCE, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_MONITOR_PDAF_REFOCUS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_MONITOR_TOF_TARGET_POS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_MONITOR_TOF_CONFIDENCE, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_MONITOR_TOF_REFOCUS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_MONITOR_TYPE_SELECT, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_MONITOR_REFOCUS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_MONITOR_TARGET_POS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_TARGET_POS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_NEXT_POS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_NEAR_POS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_FAR_POS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_CONFIDENCE, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_TARGET_POS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_NEXT_POS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_NEAR_POS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_FAR_POS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_CONFIDENCE, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_SEARCH_TYPE_SELECT, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_SEARCH_NEXT_POS, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AF_SEARCH_TARGET_POS, int32_t, 1);
+ /* DevCamDebug metadata CAM_INTF.H AEC */
+ INCLUDE(CAM_INTF_META_DEV_CAM_AEC_TARGET_LUMA, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AEC_COMP_LUMA, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AEC_AVG_LUMA, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AEC_CUR_LUMA, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AEC_LINECOUNT, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AEC_REAL_GAIN, float, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AEC_EXP_INDEX, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AEC_LUX_IDX, float, 1);
+ /* DevCamDebug metadata CAM_INTF.H AWB */
+ INCLUDE(CAM_INTF_META_DEV_CAM_AWB_R_GAIN, float, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AWB_G_GAIN, float, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AWB_B_GAIN, float, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AWB_CCT, int32_t, 1);
+ INCLUDE(CAM_INTF_META_DEV_CAM_AWB_DECISION, int32_t, 1);
+ /* DevCamDebug metadata end */
} metadata_data_t;
/* Update clear_metadata_buffer() function when a new is_xxx_valid is added to
diff --git a/msm8998/QCamera2/stack/common/cam_types.h b/msm8998/QCamera2/stack/common/cam_types.h
index 912d817..06269f3 100644
--- a/msm8998/QCamera2/stack/common/cam_types.h
+++ b/msm8998/QCamera2/stack/common/cam_types.h
@@ -2334,6 +2334,52 @@
CAM_INTF_META_DC_LOW_POWER_ENABLE,
/* Whether to enable hybrid ae mode */
CAM_INTF_META_HYBRID_AE,
+ /* DevCamDebug metadata CAM_TYPES.h */
+ CAM_INTF_META_DEV_CAM_ENABLE,
+ /* DevCamDebug metadata CAM_TYPES.h AF */
+ CAM_INTF_META_DEV_CAM_AF_LENS_POSITION,
+ CAM_INTF_META_DEV_CAM_AF_TOF_CONFIDENCE,
+ CAM_INTF_META_DEV_CAM_AF_TOF_DISTANCE,
+ CAM_INTF_META_DEV_CAM_AF_LUMA,
+ CAM_INTF_META_DEV_CAM_AF_HAF_STATE,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_PDAF_TARGET_POS,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_PDAF_CONFIDENCE,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_PDAF_REFOCUS,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_TOF_TARGET_POS,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_TOF_CONFIDENCE,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_TOF_REFOCUS,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_TYPE_SELECT,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_REFOCUS,
+ CAM_INTF_META_DEV_CAM_AF_MONITOR_TARGET_POS,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_TARGET_POS,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_NEXT_POS,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_NEAR_POS,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_FAR_POS,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_PDAF_CONFIDENCE,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_TARGET_POS,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_NEXT_POS,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_NEAR_POS,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_FAR_POS,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_TOF_CONFIDENCE,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_TYPE_SELECT,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_NEXT_POS,
+ CAM_INTF_META_DEV_CAM_AF_SEARCH_TARGET_POS,
+ /* DevCamDebug metadata CAM_TYPES.h AEC */
+ CAM_INTF_META_DEV_CAM_AEC_TARGET_LUMA,
+ CAM_INTF_META_DEV_CAM_AEC_COMP_LUMA,
+ CAM_INTF_META_DEV_CAM_AEC_AVG_LUMA,
+ CAM_INTF_META_DEV_CAM_AEC_CUR_LUMA,
+ CAM_INTF_META_DEV_CAM_AEC_LINECOUNT,
+ CAM_INTF_META_DEV_CAM_AEC_REAL_GAIN,
+ CAM_INTF_META_DEV_CAM_AEC_EXP_INDEX,
+ CAM_INTF_META_DEV_CAM_AEC_LUX_IDX,
+ /* DevCamDebug metadata CAM_TYPES.h AWB */
+ CAM_INTF_META_DEV_CAM_AWB_R_GAIN,
+ CAM_INTF_META_DEV_CAM_AWB_G_GAIN,
+ CAM_INTF_META_DEV_CAM_AWB_B_GAIN,
+ CAM_INTF_META_DEV_CAM_AWB_CCT,
+ CAM_INTF_META_DEV_CAM_AWB_DECISION,
+ /* DevCamDebug metadata end */
CAM_INTF_PARM_MAX
} cam_intf_parm_type_t;