GStreamer: improve camerabin audio settings checking.

Don't try setting a sample rate or a channel count equal to 0.

Change-Id: Ib2e1728f0d9af09df9c4d3fd1322b5cb174a2981
Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
This commit is contained in:
Yoann Lopes
2015-02-05 16:34:27 +01:00
parent e47ecb75b5
commit 656da3d4d6

View File

@@ -420,7 +420,7 @@ void CameraBinSession::setAudioCaptureCaps()
const int sampleRate = settings.sampleRate();
const int channelCount = settings.channelCount();
if (sampleRate == -1 && channelCount == -1)
if (sampleRate <= 0 && channelCount <=0)
return;
#if GST_CHECK_VERSION(1,0,0)
@@ -434,9 +434,9 @@ void CameraBinSession::setAudioCaptureCaps()
"depth", G_TYPE_INT, 16,
NULL);
#endif
if (sampleRate != -1)
if (sampleRate > 0)
gst_structure_set(structure, "rate", G_TYPE_INT, sampleRate, NULL);
if (channelCount != -1)
if (channelCount > 0)
gst_structure_set(structure, "channels", G_TYPE_INT, channelCount, NULL);
GstCaps *caps = gst_caps_new_full(structure, NULL);