From da9b436cd1be60da495f55fc4f4236136e7851f8 Mon Sep 17 00:00:00 2001 From: Dmytro Poplavskiy Date: Fri, 12 Aug 2011 11:52:47 +1000 Subject: Ported gstreamer camera backend from camerabin to camerabin2. Change-Id: Ieb08df492e7b9cbfe35e93a056685cfdac6e704e Reviewed-on: http://codereview.qt.nokia.com/2994 Reviewed-by: Qt Sanity Bot Reviewed-by: Michael Goddard --- src/plugins/gstreamer/camerabin/camerabinfocus.cpp | 23 ++++++++++------------ 1 file changed, 10 insertions(+), 13 deletions(-) (limited to 'src/plugins/gstreamer/camerabin/camerabinfocus.cpp') diff --git a/src/plugins/gstreamer/camerabin/camerabinfocus.cpp b/src/plugins/gstreamer/camerabin/camerabinfocus.cpp index c07b8e09c..b989c50b1 100644 --- a/src/plugins/gstreamer/camerabin/camerabinfocus.cpp +++ b/src/plugins/gstreamer/camerabin/camerabinfocus.cpp @@ -48,7 +48,8 @@ #include //#define CAMERABIN_DEBUG 1 -#define ENUM_NAME(c,e,v) (c::staticMetaObject.enumerator(c::staticMetaObject.indexOfEnumerator(e)).valueToKey((v))) +#define ZOOM_PROPERTY "zoom" +#define MAX_ZOOM_PROPERTY "max-zoom" CameraBinFocus::CameraBinFocus(CameraBinSession *session) :QCameraFocusControl(session), @@ -59,8 +60,6 @@ CameraBinFocus::CameraBinFocus(CameraBinSession *session) { connect(m_session, SIGNAL(stateChanged(QCamera::State)), this, SLOT(_q_handleCameraStateChange(QCamera::State))); - connect(m_session, SIGNAL(imageCaptured(int,QImage)), - this, SLOT(_q_handleCapturedImage())); } CameraBinFocus::~CameraBinFocus() @@ -91,7 +90,9 @@ qreal CameraBinFocus::maximumOpticalZoom() const qreal CameraBinFocus::maximumDigitalZoom() const { - return 10; + gfloat zoomFactor = 1.0; + g_object_get(GST_BIN(m_session->cameraBin()), MAX_ZOOM_PROPERTY, &zoomFactor, NULL); + return zoomFactor; } qreal CameraBinFocus::opticalZoom() const @@ -102,15 +103,15 @@ qreal CameraBinFocus::opticalZoom() const qreal CameraBinFocus::digitalZoom() const { gfloat zoomFactor = 1.0; - g_object_get(GST_BIN(m_session->cameraBin()), "zoom", &zoomFactor, NULL); + g_object_get(GST_BIN(m_session->cameraBin()), ZOOM_PROPERTY, &zoomFactor, NULL); return zoomFactor; } void CameraBinFocus::zoomTo(qreal optical, qreal digital) { Q_UNUSED(optical); - digital = qBound(qreal(1.0), digital, qreal(10.0)); - g_object_set(GST_BIN(m_session->cameraBin()), "zoom", digital, NULL); + digital = qBound(qreal(1.0), digital, maximumDigitalZoom()); + g_object_set(GST_BIN(m_session->cameraBin()), ZOOM_PROPERTY, digital, NULL); emit digitalZoomChanged(digital); } @@ -184,9 +185,9 @@ void CameraBinFocus::_q_setFocusStatus(QCamera::LockStatus status, QCamera::Lock { #ifdef CAMERABIN_DEBUG qDebug() << Q_FUNC_INFO << "Current:" - << ENUM_NAME(QCamera, "LockStatus", m_focusStatus) + << m_focusStatus << "New:" - << ENUM_NAME(QCamera, "LockStatus", status) << ENUM_NAME(QCamera, "LockChangeReason", reason); + << status << reason; #endif if (m_focusStatus != status) { @@ -211,10 +212,6 @@ void CameraBinFocus::_q_handleCameraStateChange(QCamera::State state) _q_setFocusStatus(QCamera::Unlocked, QCamera::LockLost); } -void CameraBinFocus::_q_handleCapturedImage() -{ -} - void CameraBinFocus::_q_startFocusing() { _q_setFocusStatus(QCamera::Searching, QCamera::UserRequest); -- cgit v1.2.3