Loading services/camera/libcameraservice/device3/Camera3Device.cpp +6 −2 Original line number Original line Diff line number Diff line Loading @@ -4739,6 +4739,7 @@ bool Camera3Device::RequestThread::threadLoop() { status_t Camera3Device::RequestThread::prepareHalRequests() { status_t Camera3Device::RequestThread::prepareHalRequests() { ATRACE_CALL(); ATRACE_CALL(); bool batchedRequest = mNextRequests[0].captureRequest->mBatchSize > 1; for (size_t i = 0; i < mNextRequests.size(); i++) { for (size_t i = 0; i < mNextRequests.size(); i++) { auto& nextRequest = mNextRequests.editItemAt(i); auto& nextRequest = mNextRequests.editItemAt(i); sp<CaptureRequest> captureRequest = nextRequest.captureRequest; sp<CaptureRequest> captureRequest = nextRequest.captureRequest; Loading @@ -4762,7 +4763,10 @@ status_t Camera3Device::RequestThread::prepareHalRequests() { mPrevTriggers = triggerCount; mPrevTriggers = triggerCount; // If the request is the same as last, or we had triggers last time // If the request is the same as last, or we had triggers last time bool newRequest = mPrevRequest != captureRequest || triggersMixedIn; bool newRequest = (mPrevRequest != captureRequest || triggersMixedIn) && // Request settings are all the same within one batch, so only treat the first // request in a batch as new !(batchedRequest && i >= 0); if (newRequest) { if (newRequest) { /** /** * HAL workaround: * HAL workaround: Loading Loading @@ -4911,7 +4915,7 @@ status_t Camera3Device::RequestThread::prepareHalRequests() { // preview), and the current request is not the last one in the batch, // preview), and the current request is not the last one in the batch, // do not send callback to the app. // do not send callback to the app. bool hasCallback = true; bool hasCallback = true; if (mNextRequests[0].captureRequest->mBatchSize > 1 && i != mNextRequests.size()-1) { if (batchedRequest && i != mNextRequests.size()-1) { hasCallback = false; hasCallback = false; } } res = parent->registerInFlight(halRequest->frame_number, res = parent->registerInFlight(halRequest->frame_number, Loading Loading
services/camera/libcameraservice/device3/Camera3Device.cpp +6 −2 Original line number Original line Diff line number Diff line Loading @@ -4739,6 +4739,7 @@ bool Camera3Device::RequestThread::threadLoop() { status_t Camera3Device::RequestThread::prepareHalRequests() { status_t Camera3Device::RequestThread::prepareHalRequests() { ATRACE_CALL(); ATRACE_CALL(); bool batchedRequest = mNextRequests[0].captureRequest->mBatchSize > 1; for (size_t i = 0; i < mNextRequests.size(); i++) { for (size_t i = 0; i < mNextRequests.size(); i++) { auto& nextRequest = mNextRequests.editItemAt(i); auto& nextRequest = mNextRequests.editItemAt(i); sp<CaptureRequest> captureRequest = nextRequest.captureRequest; sp<CaptureRequest> captureRequest = nextRequest.captureRequest; Loading @@ -4762,7 +4763,10 @@ status_t Camera3Device::RequestThread::prepareHalRequests() { mPrevTriggers = triggerCount; mPrevTriggers = triggerCount; // If the request is the same as last, or we had triggers last time // If the request is the same as last, or we had triggers last time bool newRequest = mPrevRequest != captureRequest || triggersMixedIn; bool newRequest = (mPrevRequest != captureRequest || triggersMixedIn) && // Request settings are all the same within one batch, so only treat the first // request in a batch as new !(batchedRequest && i >= 0); if (newRequest) { if (newRequest) { /** /** * HAL workaround: * HAL workaround: Loading Loading @@ -4911,7 +4915,7 @@ status_t Camera3Device::RequestThread::prepareHalRequests() { // preview), and the current request is not the last one in the batch, // preview), and the current request is not the last one in the batch, // do not send callback to the app. // do not send callback to the app. bool hasCallback = true; bool hasCallback = true; if (mNextRequests[0].captureRequest->mBatchSize > 1 && i != mNextRequests.size()-1) { if (batchedRequest && i != mNextRequests.size()-1) { hasCallback = false; hasCallback = false; } } res = parent->registerInFlight(halRequest->frame_number, res = parent->registerInFlight(halRequest->frame_number, Loading