vp8decoder: Drain the output queue on EOS/finish

The finish() virtual method was flushing the queue, instead push the
remaining buffers. It is not required to reset in finish() unlike
drain(). This a regression causing last frame to always be lost.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2333>
This commit is contained in:
Nicolas Dufresne 2021-06-16 10:31:13 -04:00 committed by GStreamer Marge Bot
parent e5e2b6a652
commit 2696bcd9e2

View file

@ -279,7 +279,7 @@ gst_vp8_decoder_finish (GstVideoDecoder * decoder)
GST_DEBUG_OBJECT (self, "finish"); GST_DEBUG_OBJECT (self, "finish");
gst_vp8_decoder_reset (self); gst_vp8_decoder_drain_output_queue (GST_VP8_DECODER (decoder), 0);
return GST_FLOW_OK; return GST_FLOW_OK;
} }