summaryrefslogtreecommitdiffstats
path: root/camera
diff options
context:
space:
mode:
authorEmilian Peev <epeev@mm-sol.com>2012-03-19 13:50:57 +0200
committerEino-Ville Talvala <etalvala@google.com>2012-03-23 12:11:09 -0700
commit796f0f82433a3040198f216d15fd9ce17c04f360 (patch)
tree029da229aeaf8b59ec1d2d0c521baeebf817990a /camera
parent484116750df56d0805d5f5727ad94701f916e8c6 (diff)
downloadhardware_ti_omap4xxx-796f0f82433a3040198f216d15fd9ce17c04f360.zip
hardware_ti_omap4xxx-796f0f82433a3040198f216d15fd9ce17c04f360.tar.gz
hardware_ti_omap4xxx-796f0f82433a3040198f216d15fd9ce17c04f360.tar.bz2
CameraHal: Remove excessive focus mode configurations
- This change should improve overall stability during image capture. Configuring focus mode while image capture is active is always going to result in 'OMX_ErrorBadParameter'. Bug: 6026480 Change-Id: I735c5d25adc293d163f77488c0dc6d30a636544b Signed-off-by: Emilian Peev <epeev@mm-sol.com>
Diffstat (limited to 'camera')
-rwxr-xr-xcamera/OMXCameraAdapter/OMXCameraAdapter.cpp10
-rw-r--r--camera/OMXCameraAdapter/OMXFocus.cpp5
2 files changed, 7 insertions, 8 deletions
diff --git a/camera/OMXCameraAdapter/OMXCameraAdapter.cpp b/camera/OMXCameraAdapter/OMXCameraAdapter.cpp
index 12facc0..b5f156e 100755
--- a/camera/OMXCameraAdapter/OMXCameraAdapter.cpp
+++ b/camera/OMXCameraAdapter/OMXCameraAdapter.cpp
@@ -2972,11 +2972,6 @@ OMX_ERRORTYPE OMXCameraAdapter::OMXCameraAdapterFillBufferDone(OMX_IN OMX_HANDLE
}
}
- if ( (nextState & CAPTURE_ACTIVE) )
- {
- mPending3Asettings |= SetFocus;
- }
-
///Prepare the frames to be sent - initialize CameraFrame object and reference count
// TODO(XXX): ancillary data for snapshot frame is not being sent for video snapshot
// if we are waiting for a snapshot and in video mode...go ahead and send
@@ -3044,10 +3039,13 @@ OMX_ERRORTYPE OMXCameraAdapter::OMXCameraAdapterFillBufferDone(OMX_IN OMX_HANDLE
// On the fly update to 3A settings not working
// Do not update 3A here if we are in the middle of a capture
// or in the middle of transitioning to it
- if( mPending3Asettings && ((nextState & CAPTURE_ACTIVE) == 0))
+ if( mPending3Asettings &&
+ ( (nextState & CAPTURE_ACTIVE) == 0 ) &&
+ ( (state & CAPTURE_ACTIVE) == 0 ) )
{
apply3Asettings(mParameters3A);
}
+
}
else if( pBuffHeader->nOutputPortIndex == OMX_CAMERA_PORT_VIDEO_OUT_MEASUREMENT )
{
diff --git a/camera/OMXCameraAdapter/OMXFocus.cpp b/camera/OMXCameraAdapter/OMXFocus.cpp
index e9a969c..5703610 100644
--- a/camera/OMXCameraAdapter/OMXFocus.cpp
+++ b/camera/OMXCameraAdapter/OMXFocus.cpp
@@ -311,10 +311,11 @@ status_t OMXCameraAdapter::cancelAutoFocus()
OMX_IMAGE_FocusControlAutoInfinity ) ) {
stopAutoFocus();
} else if (focusMode.eFocusControl == OMX_IMAGE_FocusControlAuto) {
+ // This re-enabling of CAF doesn't seem to
+ // be needed any more.
// re-apply CAF after unlocking and canceling
- mPending3Asettings |= SetFocus;
+ // mPending3Asettings |= SetFocus;
}
-
// If the apps call #cancelAutoFocus()}, the face callbacks will also resume.
pauseFaceDetection(false);