diff options
-rw-r--r-- | ext/opus/gstopusdec.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/ext/opus/gstopusdec.c b/ext/opus/gstopusdec.c index 5fdfd5573..501a37978 100644 --- a/ext/opus/gstopusdec.c +++ b/ext/opus/gstopusdec.c @@ -555,9 +555,12 @@ opus_dec_chain_parse_data (GstOpusDec * dec, GstBuffer * buffer) gst_buffer_unmap (buf, &map); if (n < 0) { - GST_ELEMENT_ERROR (dec, STREAM, DECODE, ("Decoding error: %d", n), (NULL)); + GstFlowReturn ret = GST_FLOW_ERROR; + gst_buffer_unref (outbuf); - return GST_FLOW_ERROR; + GST_AUDIO_DECODER_ERROR (dec, 1, STREAM, DECODE, ("Error decoding stream"), + ("Decoding error (%d): %s", n, opus_strerror (n)), ret); + return ret; } GST_DEBUG_OBJECT (dec, "decoded %d samples", n); gst_buffer_set_size (outbuf, n * 2 * dec->n_channels); |