diff options
Diffstat (limited to 'camera')
-rw-r--r-- | camera/QCamera2/HAL3/QCamera3HWI.cpp | 32 | ||||
-rw-r--r-- | camera/QCamera2/QCamera2Factory.cpp | 5 |
2 files changed, 24 insertions, 13 deletions
diff --git a/camera/QCamera2/HAL3/QCamera3HWI.cpp b/camera/QCamera2/HAL3/QCamera3HWI.cpp index 05c0c41..eecd454 100644 --- a/camera/QCamera2/HAL3/QCamera3HWI.cpp +++ b/camera/QCamera2/HAL3/QCamera3HWI.cpp @@ -6791,7 +6791,12 @@ int QCamera3HardwareInterface::initStaticMetadata(uint32_t cameraId) 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, NEXUS_EXPERIMENTAL_2016_HYBRID_AE_ENABLE}; + ANDROID_BLACK_LEVEL_LOCK, NEXUS_EXPERIMENTAL_2016_HYBRID_AE_ENABLE, + QCAMERA3_PRIVATEDATA_REPROCESS, QCAMERA3_CDS_MODE, QCAMERA3_CDS_INFO, + QCAMERA3_CROP_COUNT_REPROCESS, QCAMERA3_CROP_REPROCESS, + QCAMERA3_CROP_ROI_MAP_REPROCESS, QCAMERA3_TEMPORAL_DENOISE_ENABLE, + QCAMERA3_TEMPORAL_DENOISE_PROCESS_TYPE, QCAMERA3_USE_AV_TIMER + }; size_t request_keys_cnt = sizeof(request_keys_basic)/sizeof(request_keys_basic[0]); @@ -6828,7 +6833,13 @@ int QCamera3HardwareInterface::initStaticMetadata(uint32_t cameraId) ANDROID_STATISTICS_FACE_SCORES, ANDROID_SENSOR_DYNAMIC_BLACK_LEVEL, ANDROID_SENSOR_DYNAMIC_WHITE_LEVEL, NEXUS_EXPERIMENTAL_2016_HYBRID_AE_ENABLE, - ANDROID_CONTROL_POST_RAW_SENSITIVITY_BOOST }; + ANDROID_CONTROL_POST_RAW_SENSITIVITY_BOOST, + QCAMERA3_PRIVATEDATA_REPROCESS, QCAMERA3_CDS_MODE, QCAMERA3_CDS_INFO, + QCAMERA3_CROP_COUNT_REPROCESS, QCAMERA3_CROP_REPROCESS, + QCAMERA3_CROP_ROI_MAP_REPROCESS, QCAMERA3_TUNING_META_DATA_BLOB, + QCAMERA3_TEMPORAL_DENOISE_ENABLE, QCAMERA3_TEMPORAL_DENOISE_PROCESS_TYPE, + QCAMERA3_SENSOR_DYNAMIC_BLACK_LEVEL_PATTERN + }; size_t result_keys_cnt = sizeof(result_keys_basic)/sizeof(result_keys_basic[0]); @@ -6906,7 +6917,8 @@ int QCamera3HardwareInterface::initStaticMetadata(uint32_t cameraId) ANDROID_CONTROL_AWB_LOCK_AVAILABLE, ANDROID_STATISTICS_INFO_AVAILABLE_LENS_SHADING_MAP_MODES, ANDROID_SHADING_AVAILABLE_MODES, - ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL }; + ANDROID_INFO_SUPPORTED_HARDWARE_LEVEL, QCAMERA3_OPAQUE_RAW_FORMAT + }; Vector<int32_t> available_characteristics_keys; available_characteristics_keys.appendArray(characteristics_keys_basic, @@ -6914,9 +6926,6 @@ int QCamera3HardwareInterface::initStaticMetadata(uint32_t cameraId) if (hasBlackRegions) { available_characteristics_keys.add(ANDROID_SENSOR_OPTICAL_BLACK_REGIONS); } - staticInfo.update(ANDROID_REQUEST_AVAILABLE_CHARACTERISTICS_KEYS, - available_characteristics_keys.array(), - available_characteristics_keys.size()); /*available stall durations depend on the hw + sw and will be different for different devices */ /*have to add for raw after implementation*/ @@ -6989,8 +6998,15 @@ int QCamera3HardwareInterface::initStaticMetadata(uint32_t cameraId) &gCamCapability[cameraId]->padding_info, &buf_planes); strides[i*3+2] = buf_planes.plane_info.mp[0].stride; } - staticInfo.update(QCAMERA3_OPAQUE_RAW_STRIDES, strides, - 3*raw_count); + + if (raw_count > 0) { + staticInfo.update(QCAMERA3_OPAQUE_RAW_STRIDES, strides, + 3*raw_count); + available_characteristics_keys.add(QCAMERA3_OPAQUE_RAW_STRIDES); + } + staticInfo.update(ANDROID_REQUEST_AVAILABLE_CHARACTERISTICS_KEYS, + available_characteristics_keys.array(), + available_characteristics_keys.size()); gStaticMetadata[cameraId] = staticInfo.release(); return rc; diff --git a/camera/QCamera2/QCamera2Factory.cpp b/camera/QCamera2/QCamera2Factory.cpp index 676dd65..6101036 100644 --- a/camera/QCamera2/QCamera2Factory.cpp +++ b/camera/QCamera2/QCamera2Factory.cpp @@ -58,7 +58,6 @@ QCamera2Factory *gQCamera2Factory = NULL; *==========================================================================*/ QCamera2Factory::QCamera2Factory() { - camera_info info; mHalDescriptors = NULL; mCallbacks = NULL; mNumOfCameras = get_num_of_cameras(); @@ -78,10 +77,6 @@ QCamera2Factory::QCamera2Factory() } else { mHalDescriptors[i].device_version = CAMERA_DEVICE_API_VERSION_1_0; } - //Query camera at this point in order - //to avoid any delays during subsequent - //calls to 'getCameraInfo()' - getCameraInfo(i, &info); } } else { ALOGE("%s: Not enough resources to allocate HAL descriptor table!", |