diff options
author | Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com> | 2010-08-24 17:02:06 +1000 |
---|---|---|
committer | Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com> | 2010-08-24 17:02:06 +1000 |
commit | f66cfebc3c6cb86d16fe04660ab314d8a1afdede (patch) | |
tree | 1457e3963ed0c47b22276f06d904bfd39df38702 /plugins/multimedia/gstreamer/camerabin/camerabincontrol.cpp | |
parent | f6621701b73d99cd3af7aeba0c6503aeb988e109 (diff) |
QCamera stops the backend to apply certain settings if backend
can not do this itself more effectively in Active state.
Diffstat (limited to 'plugins/multimedia/gstreamer/camerabin/camerabincontrol.cpp')
-rw-r--r-- | plugins/multimedia/gstreamer/camerabin/camerabincontrol.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/plugins/multimedia/gstreamer/camerabin/camerabincontrol.cpp b/plugins/multimedia/gstreamer/camerabin/camerabincontrol.cpp index c2fe4af539..b2d21ce7fb 100644 --- a/plugins/multimedia/gstreamer/camerabin/camerabincontrol.cpp +++ b/plugins/multimedia/gstreamer/camerabin/camerabincontrol.cpp @@ -155,7 +155,7 @@ void CameraBinControl::updateStatus() void CameraBinControl::reloadLater() { #ifdef CAMEABIN_DEBUG - qDebug() << "reload pipeline requested"; + qDebug() << "reload pipeline requested" << m_state; #endif if (!m_reloadPending && m_state == QCamera::ActiveState) { m_reloadPending = true; @@ -176,3 +176,18 @@ void CameraBinControl::delayedReload() } } } + +bool CameraBinControl::canChangeProperty(PropertyChangeType changeType, QCamera::Status status) const +{ + Q_UNUSED(status); + + switch (changeType) { + case QCameraControl::CaptureMode: + case QCameraControl::ImageEncodingSettings: + case QCameraControl::VideoEncodingSettings: + case QCameraControl::Viewfinder: + return true; + default: + return false; + } +} |