diff options
author | Tyler Luu <tluu@ti.com> | 2011-11-17 07:48:03 -0800 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2011-11-17 07:48:03 -0800 |
commit | ecb47004265c3063a3297dab414a8fb94c34a5f0 (patch) | |
tree | 4bfc10722a5ca868b32db7b02105bea57bf2cc7f | |
parent | 4e78038336166dc1ec3125337bc3f059a6deca2b (diff) | |
parent | d6ba3e2081aff0bfae747f2141de4680d187f047 (diff) | |
download | hardware_ti_omap4-ecb47004265c3063a3297dab414a8fb94c34a5f0.zip hardware_ti_omap4-ecb47004265c3063a3297dab414a8fb94c34a5f0.tar.gz hardware_ti_omap4-ecb47004265c3063a3297dab414a8fb94c34a5f0.tar.bz2 |
am b5375cf2: am 05ea07df: CameraHal: Use Different Timeout for Video Mode
* commit 'b5375cf2e7f917556b377be4ec0974f7c62dbe0d':
CameraHal: Use Different Timeout for Video Mode
-rw-r--r-- | camera/OMXCameraAdapter/OMXFocus.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/camera/OMXCameraAdapter/OMXFocus.cpp b/camera/OMXCameraAdapter/OMXFocus.cpp index ce569ec..30ce3c1 100644 --- a/camera/OMXCameraAdapter/OMXFocus.cpp +++ b/camera/OMXCameraAdapter/OMXFocus.cpp @@ -31,7 +31,8 @@ #include "ErrorUtils.h" #define TOUCH_FOCUS_RANGE 0xFF -#define AF_CALLBACK_TIMEOUT 5000000 //5 seconds timeout +#define AF_IMAGE_CALLBACK_TIMEOUT 5000000 //5 seconds timeout +#define AF_VIDEO_CALLBACK_TIMEOUT 2800000 //2.8 seconds timeout namespace android { @@ -83,6 +84,7 @@ status_t OMXCameraAdapter::doAutoFocus() OMX_IMAGE_CONFIG_FOCUSCONTROLTYPE focusControl; OMX_PARAM_FOCUSSTATUSTYPE focusStatus; OMX_CONFIG_BOOLEANTYPE bOMX; + int timeout = 0; LOG_FUNCTION_NAME; @@ -182,7 +184,10 @@ status_t OMXCameraAdapter::doAutoFocus() CAMHAL_LOGDA("Autofocus started successfully"); } - if(mDoAFSem.WaitTimeout(AF_CALLBACK_TIMEOUT) != NO_ERROR) { + // configure focus timeout based on capture mode + timeout = (mCapMode == VIDEO_MODE) ? AF_VIDEO_CALLBACK_TIMEOUT : AF_IMAGE_CALLBACK_TIMEOUT; + + if(mDoAFSem.WaitTimeout(timeout) != NO_ERROR) { //If somethiing bad happened while we wait if (mComponentState == OMX_StateInvalid) { CAMHAL_LOGEA("Invalid State after Auto Focus Exitting!!!"); @@ -196,7 +201,6 @@ status_t OMXCameraAdapter::doAutoFocus() NULL ); returnFocusStatus(true); } else { - ret = returnFocusStatus(false); } } else { // Focus mode in continuous |