|
|
|
@ -1880,10 +1880,10 @@ void NdkCamera::onCaptureCompleted(ACameraCaptureSession* session, ACaptureReque
|
|
|
|
|
|
|
|
|
|
if (m_params.customHdr)
|
|
|
|
|
{
|
|
|
|
|
int32_t compensation = m_params.compensation;
|
|
|
|
|
if (compensation == 0)
|
|
|
|
|
int32_t hdrStep = m_params.hdrStep;
|
|
|
|
|
if (hdrStep == 0)
|
|
|
|
|
{
|
|
|
|
|
compensation = 1;
|
|
|
|
|
hdrStep = 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
val = { 0 };
|
|
|
|
@ -1897,13 +1897,12 @@ void NdkCamera::onCaptureCompleted(ACameraCaptureSession* session, ACaptureReque
|
|
|
|
|
uint8_t aeModeOff = ACAMERA_CONTROL_AE_MODE_OFF;
|
|
|
|
|
|
|
|
|
|
XYLOG(XYLOG_SEVERITY_INFO, "HDR: Base Exp=%lld ISO=%d", exTime / 1000, sensitivity);
|
|
|
|
|
|
|
|
|
|
if (exTime != -1 && sensitivity > 0)
|
|
|
|
|
{
|
|
|
|
|
for (int idx = 0; idx < burstCaptures; idx++)
|
|
|
|
|
{
|
|
|
|
|
ACaptureRequest_setEntry_u8(requests[idx], ACAMERA_CONTROL_AE_MODE, 1, &aeModeOff);
|
|
|
|
|
int64_t expt = exTime * ((idx == 0) ? 1 : (compensation + idx));
|
|
|
|
|
int64_t expt = (idx == 0) ? exTime : (exTime * (hdrStep + idx));
|
|
|
|
|
ACaptureRequest_setEntry_i64(requests[idx], ACAMERA_SENSOR_EXPOSURE_TIME, 1, &expt);
|
|
|
|
|
ACaptureRequest_setEntry_i32(requests[idx], ACAMERA_SENSOR_SENSITIVITY, 1, &sensitivity);
|
|
|
|
|
sensitivity = sensitivityRange.min_;
|
|
|
|
|