diff options
author | Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com> | 2012-07-13 11:12:06 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-07-16 07:18:15 +0200 |
commit | 864ab3a39a8ce5155bf975e9ddd58fd20cd9f87f (patch) | |
tree | daccf4b4d86cec4ba4c6812b746065c3371f4d1b /src/plugins/gstreamer/camerabin/camerabinvideoencoder.cpp | |
parent | b6a8c713bcc0b0cc032fdbf909143f3ba8ca15a6 (diff) | |
download | qtmultimedia-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.cpp | 19 |
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()) |