diff options
-rw-r--r-- | camera/OMXCameraAdapter/OMX3A.cpp | 9 | ||||
-rw-r--r-- | camera/inc/OMXCameraAdapter/OMXCameraAdapter.h | 1 |
2 files changed, 10 insertions, 0 deletions
diff --git a/camera/OMXCameraAdapter/OMX3A.cpp b/camera/OMXCameraAdapter/OMX3A.cpp index 5078fd7..6c8d85f 100644 --- a/camera/OMXCameraAdapter/OMX3A.cpp +++ b/camera/OMXCameraAdapter/OMX3A.cpp @@ -49,6 +49,8 @@ status_t OMXCameraAdapter::setParameters3A(const CameraParameters ¶ms, LOG_FUNCTION_NAME; + Mutex::Autolock lock(m3ASettingsUpdateLock); + str = params.get(CameraParameters::KEY_SCENE_MODE); mode = getLUTvalue_HALtoOMX( str, SceneLUT); if ( mFirstTimeInit || ((str != NULL) && ( mParameters3A.SceneMode != mode )) ) { @@ -1512,6 +1514,10 @@ status_t OMXCameraAdapter::apply3Asettings( Gen3A_settings& Gen3A ) unsigned int currSett; // 32 bit int portIndex; + LOG_FUNCTION_NAME; + + Mutex::Autolock lock(m3ASettingsUpdateLock); + /* * Scenes have a priority during the process * of applying 3A related parameters. @@ -1637,6 +1643,9 @@ status_t OMXCameraAdapter::apply3Asettings( Gen3A_settings& Gen3A ) mPending3Asettings &= ~currSett; } } + + LOG_FUNCTION_NAME_EXIT; + return ret; } diff --git a/camera/inc/OMXCameraAdapter/OMXCameraAdapter.h b/camera/inc/OMXCameraAdapter/OMXCameraAdapter.h index 8418ff4..04bc64c 100644 --- a/camera/inc/OMXCameraAdapter/OMXCameraAdapter.h +++ b/camera/inc/OMXCameraAdapter/OMXCameraAdapter.h @@ -834,6 +834,7 @@ private: OMX_VERSIONTYPE mLocalVersionParam; unsigned int mPending3Asettings; + Mutex m3ASettingsUpdateLock; Gen3A_settings mParameters3A; OMX_TI_CONFIG_3A_FACE_PRIORITY mFacePriority; |