From 864ab3a39a8ce5155bf975e9ddd58fd20cd9f87f Mon Sep 17 00:00:00 2001 From: Dmytro Poplavskiy Date: Fri, 13 Jul 2012 11:12:06 +1000 Subject: 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 --- .../gstreamer/camerabin/camerabinaudioencoder.cpp | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) (limited to 'src/plugins/gstreamer/camerabin/camerabinaudioencoder.cpp') diff --git a/src/plugins/gstreamer/camerabin/camerabinaudioencoder.cpp b/src/plugins/gstreamer/camerabin/camerabinaudioencoder.cpp index bfd22a305..ebbadd1a5 100644 --- a/src/plugins/gstreamer/camerabin/camerabinaudioencoder.cpp +++ b/src/plugins/gstreamer/camerabin/camerabinaudioencoder.cpp @@ -81,24 +81,31 @@ QAudioEncoderSettings CameraBinAudioEncoder::audioSettings() const void CameraBinAudioEncoder::setAudioSettings(const QAudioEncoderSettings &settings) { - m_userSettings = settings; - m_audioSettings = settings; - emit settingsChanged(); + if (m_audioSettings != settings) { + m_audioSettings = settings; + m_actualAudioSettings = settings; + emit settingsChanged(); + } +} + +QAudioEncoderSettings CameraBinAudioEncoder::actualAudioSettings() const +{ + return m_actualAudioSettings; } void CameraBinAudioEncoder::setActualAudioSettings(const QAudioEncoderSettings &settings) { - m_audioSettings = settings; + m_actualAudioSettings = settings; } void CameraBinAudioEncoder::resetActualSettings() { - m_audioSettings = m_userSettings; + m_actualAudioSettings = m_audioSettings; } GstEncodingProfile *CameraBinAudioEncoder::createProfile() { - QString codec = m_audioSettings.codec(); + QString codec = m_actualAudioSettings.codec(); GstCaps *caps; if (codec.isEmpty()) -- cgit v1.2.3