mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-25 11:11:08 +00:00
videodecoder: Always drain the decoder after a discont group in reverse playback mode
This commit is contained in:
parent
5a4fbb1638
commit
6189847ed0
1 changed files with 6 additions and 8 deletions
|
@ -1888,6 +1888,9 @@ gst_video_decoder_flush_parse (GstVideoDecoder * dec, gboolean at_eos)
|
||||||
GstVideoDecoderPrivate *priv = dec->priv;
|
GstVideoDecoderPrivate *priv = dec->priv;
|
||||||
GstFlowReturn res = GST_FLOW_OK;
|
GstFlowReturn res = GST_FLOW_OK;
|
||||||
GList *walk;
|
GList *walk;
|
||||||
|
GstVideoDecoderClass *decoder_class;
|
||||||
|
|
||||||
|
decoder_class = GST_VIDEO_DECODER_GET_CLASS (dec);
|
||||||
|
|
||||||
GST_DEBUG_OBJECT (dec, "flushing buffers to parsing");
|
GST_DEBUG_OBJECT (dec, "flushing buffers to parsing");
|
||||||
|
|
||||||
|
@ -1995,14 +1998,9 @@ gst_video_decoder_flush_parse (GstVideoDecoder * dec, gboolean at_eos)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* We need to tell the subclass to drain now */
|
/* We need to tell the subclass to drain now */
|
||||||
if (at_eos) {
|
GST_DEBUG_OBJECT (dec, "Finishing");
|
||||||
GstVideoDecoderClass *decoder_class;
|
if (decoder_class->finish)
|
||||||
|
res = decoder_class->finish (dec);
|
||||||
GST_DEBUG_OBJECT (dec, "Finishing");
|
|
||||||
decoder_class = GST_VIDEO_DECODER_GET_CLASS (dec);
|
|
||||||
if (decoder_class->finish)
|
|
||||||
res = decoder_class->finish (dec);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (res != GST_FLOW_OK)
|
if (res != GST_FLOW_OK)
|
||||||
goto done;
|
goto done;
|
||||||
|
|
Loading…
Reference in a new issue