diff --git a/ext/speex/gstspeexdec.c b/ext/speex/gstspeexdec.c index b70c45c63f..4dd0c0ac22 100644 --- a/ext/speex/gstspeexdec.c +++ b/ext/speex/gstspeexdec.c @@ -197,17 +197,17 @@ speex_dec_convert (GstPad * pad, dec = GST_SPEEX_DEC (gst_pad_get_parent (pad)); - if (dec->packetno < 1) { - res = FALSE; - goto cleanup; - } - if (src_format == *dest_format) { *dest_value = src_value; res = TRUE; goto cleanup; } + if (dec->packetno < 1) { + res = FALSE; + goto cleanup; + } + if (pad == dec->sinkpad && (src_format == GST_FORMAT_BYTES || *dest_format == GST_FORMAT_BYTES)) { res = FALSE;