diff --git a/app/src/main/cpp/PhoneDevice.cpp b/app/src/main/cpp/PhoneDevice.cpp index 04a089fe..b77d0cef 100644 --- a/app/src/main/cpp/PhoneDevice.cpp +++ b/app/src/main/cpp/PhoneDevice.cpp @@ -1145,13 +1145,14 @@ bool CPhoneDevice::OnImageReady(cv::Mat& mat) NdkCamera::CAPTURE_RESULT captureResult = mCamera->getCaptureResult(); char str[128] = { 0 }; - snprintf(str, sizeof(str), "AE=%u EXPS=%ums ISO=%d AF=%u LDR=%d AFS=%u HDR=%d", captureResult.autoExposure, + snprintf(str, sizeof(str), "AE=%u EXPS=%ums ISO=%d AF=%u LDR=%d AFS=%u AES=%u HDR=%d", captureResult.autoExposure, (unsigned int)(captureResult.exposureTime / 1000000), captureResult.sensitibity, captureResult.autoFocus, // isnan(captureResult.FocusDistance) ? 0 : captureResult.FocusDistance, GpioControl::getLightAdc(), (unsigned int)captureResult.afState, + (unsigned int)captureResult.aeState, captureResult.hdrMode); // cv::putText(mat, str, cv::Point(0, mat.rows - 20), cv::FONT_HERSHEY_COMPLEX, fontScale, scalar, thickness1, cv::LINE_AA); diff --git a/app/src/main/cpp/camera2/ndkcamera.cpp b/app/src/main/cpp/camera2/ndkcamera.cpp index ada01577..ed0e852d 100644 --- a/app/src/main/cpp/camera2/ndkcamera.cpp +++ b/app/src/main/cpp/camera2/ndkcamera.cpp @@ -907,6 +907,10 @@ void NdkCamera::onCaptureCompleted(ACameraCaptureSession* session, ACaptureReque return; } + val = { 0 }; + status = ACameraMetadata_getConstEntry(result, ACAMERA_CONTROL_AE_STATE, &val); + mResult.aeState = (status == ACAMERA_OK) ? val.data.u8[0] : ACAMERA_CONTROL_AE_STATE_INACTIVE; + val = { 0 }; status = ACameraMetadata_getConstEntry(result, ACAMERA_SENSOR_EXPOSURE_TIME, &val); int64_t exTime = (status == ACAMERA_OK) ? val.data.i64[0] : -1; diff --git a/app/src/main/cpp/camera2/ndkcamera.h b/app/src/main/cpp/camera2/ndkcamera.h index 887866f3..8d68a5ce 100644 --- a/app/src/main/cpp/camera2/ndkcamera.h +++ b/app/src/main/cpp/camera2/ndkcamera.h @@ -85,6 +85,7 @@ public: uint8_t autoFocus; uint8_t autoExposure; uint8_t afState; + uint8_t aeState; int64_t exposureTime; float FocusDistance; int32_t sensitibity;