Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0dabe8d0 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Camera: Don't skip ZSL frames for fixed focus sensors" into pi-dev

parents cc08faac 33f5b8c4
Loading
Loading
Loading
Loading
+18 −22
Original line number Diff line number Diff line
@@ -802,15 +802,10 @@ nsecs_t ZslProcessor::getCandidateTimestampLocked(size_t* metadataIdx) const {
                            __FUNCTION__);
                    continue;
                }
                uint8_t afMode = entry.data.u8[0];
                if (afMode == ANDROID_CONTROL_AF_MODE_OFF) {
                    // Skip all the ZSL buffer for manual AF mode, as we don't really
                    // know the af state.
                    continue;
                }

                // Check AF state if device has focuser and focus mode isn't fixed
                if (mHasFocuser && !isFixedFocusMode(afMode)) {
                if (mHasFocuser) {
                    uint8_t afMode = entry.data.u8[0];
                    if (!isFixedFocusMode(afMode)) {
                        // Make sure the candidate frame has good focus.
                        entry = frame.find(ANDROID_CONTROL_AF_STATE);
                        if (entry.count == 0) {
@@ -822,11 +817,12 @@ nsecs_t ZslProcessor::getCandidateTimestampLocked(size_t* metadataIdx) const {
                        if (afState != ANDROID_CONTROL_AF_STATE_PASSIVE_FOCUSED &&
                                afState != ANDROID_CONTROL_AF_STATE_FOCUSED_LOCKED &&
                                afState != ANDROID_CONTROL_AF_STATE_NOT_FOCUSED_LOCKED) {
                        ALOGVV("%s: ZSL queue frame AF state is %d is not good for capture, skip it",
                                __FUNCTION__, afState);
                            ALOGVV("%s: ZSL queue frame AF state is %d is not good for capture,"
                                    " skip it", __FUNCTION__, afState);
                            continue;
                        }
                    }
                }

                minTimestamp = frameTimestamp;
                idx = j;