summaryrefslogtreecommitdiff
path: root/src/plugins/gstreamer/camerabin/camerabinvideoencoder.cpp
diff options
context:
space:
mode:
authorDmytro Poplavskiy <dmytro.poplavskiy@nokia.com>2012-07-13 11:12:06 +1000
committerQt by Nokia <qt-info@nokia.com>2012-07-16 07:18:15 +0200
commit864ab3a39a8ce5155bf975e9ddd58fd20cd9f87f (patch)
treedaccf4b4d86cec4ba4c6812b746065c3371f4d1b /src/plugins/gstreamer/camerabin/camerabinvideoencoder.cpp
parentb6a8c713bcc0b0cc032fdbf909143f3ba8ca15a6 (diff)
downloadqtmultimedia-864ab3a39a8ce5155bf975e9ddd58fd20cd9f87f.tar.gz
Camerabin camera service: configure default video settings
encodebin doesn't like the encoding profile with ANY container caps, if container and codecs are not specified try to find a commonly used supported combination Change-Id: Icbde042bd17d9682112fb8bbb8f0d506f6ddebe1 Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Diffstat (limited to 'src/plugins/gstreamer/camerabin/camerabinvideoencoder.cpp')
-rw-r--r--src/plugins/gstreamer/camerabin/camerabinvideoencoder.cpp19
1 files changed, 13 insertions, 6 deletions
diff --git a/src/plugins/gstreamer/camerabin/camerabinvideoencoder.cpp b/src/plugins/gstreamer/camerabin/camerabinvideoencoder.cpp
index 085b9a13c..e75603042 100644
--- a/src/plugins/gstreamer/camerabin/camerabinvideoencoder.cpp
+++ b/src/plugins/gstreamer/camerabin/camerabinvideoencoder.cpp
@@ -103,19 +103,26 @@ QVideoEncoderSettings CameraBinVideoEncoder::videoSettings() const
void CameraBinVideoEncoder::setVideoSettings(const QVideoEncoderSettings &settings)
{
- m_videoSettings = settings;
- m_userSettings = settings;
- emit settingsChanged();
+ if (m_videoSettings != settings) {
+ m_actualVideoSettings = settings;
+ m_videoSettings = settings;
+ emit settingsChanged();
+ }
+}
+
+QVideoEncoderSettings CameraBinVideoEncoder::actualVideoSettings() const
+{
+ return m_actualVideoSettings;
}
void CameraBinVideoEncoder::setActualVideoSettings(const QVideoEncoderSettings &settings)
{
- m_videoSettings = settings;
+ m_actualVideoSettings = settings;
}
void CameraBinVideoEncoder::resetActualSettings()
{
- m_videoSettings = m_userSettings;
+ m_actualVideoSettings = m_videoSettings;
}
@@ -152,7 +159,7 @@ QPair<int,int> CameraBinVideoEncoder::rateAsRational(qreal frameRate) const
GstEncodingProfile *CameraBinVideoEncoder::createProfile()
{
- QString codec = m_videoSettings.codec();
+ QString codec = m_actualVideoSettings.codec();
GstCaps *caps;
if (codec.isEmpty())