From a128502221352a82e23c5b143619917c76892669 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Mon, 23 Mar 2015 12:09:25 +0100 Subject: [PATCH] opusdec: Take channels and sample rate from the caps if we have no stream header --- ext/opus/gstopusdec.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/ext/opus/gstopusdec.c b/ext/opus/gstopusdec.c index 7cffd175ba..d3c8e8d9cd 100644 --- a/ext/opus/gstopusdec.c +++ b/ext/opus/gstopusdec.c @@ -582,6 +582,22 @@ gst_opus_dec_set_format (GstAudioDecoder * bdec, GstCaps * caps) goto done; gst_buffer_replace (&dec->vorbiscomment, buf); } + } else { + /* defaults if not in the caps */ + dec->n_channels = 2; + dec->sample_rate = 48000; + + gst_structure_get_int (s, "channels", &dec->n_channels); + gst_structure_get_int (s, "rate", &dec->sample_rate); + + /* default stereo mapping */ + dec->channel_mapping_family = 0; + dec->channel_mapping[0] = 0; + dec->channel_mapping[1] = 1; + dec->n_streams = 1; + dec->n_stereo_streams = 1; + + gst_opus_dec_negotiate (dec, NULL); } done: