mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-16 21:14:44 +00:00
flacdec: Actually output the pending buffer.. and not a blank one.
It was previously sending the bogus buffer which was returned from the bufferalloc (required for reverse negotiation apparently) instead of the pending buffer.
This commit is contained in:
parent
9bf294c310
commit
e8cbbd22f8
1 changed files with 4 additions and 3 deletions
|
@ -938,10 +938,11 @@ gst_flac_dec_write (GstFlacDec * flacdec, const FLAC__Frame * frame,
|
|||
GST_BUFFER_OFFSET (flacdec->pending),
|
||||
GST_BUFFER_SIZE (flacdec->pending),
|
||||
GST_BUFFER_CAPS (flacdec->pending), &outbuf);
|
||||
if (ret == GST_FLOW_OK)
|
||||
gst_pad_push (flacdec->srcpad, outbuf);
|
||||
if (ret == GST_FLOW_OK) {
|
||||
gst_pad_push (flacdec->srcpad, flacdec->pending);
|
||||
gst_buffer_unref (outbuf);
|
||||
}
|
||||
|
||||
gst_buffer_unref (flacdec->pending);
|
||||
outbuf = flacdec->pending = NULL;
|
||||
flacdec->segment.last_stop += flacdec->pending_samples;
|
||||
flacdec->pending_samples = 0;
|
||||
|
|
Loading…
Reference in a new issue