mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-26 05:16:13 +00:00
matroskademux: make demuxer reusable
Remove pads from flow combiner and reset last flow return to FLOW_OK by resetting the flow combiner. This prevents FLOW_FLUSHING when trying to re-use the demuxer after setting it back to NULL/READY state. https://bugzilla.gnome.org/show_bug.cgi?id=737359
This commit is contained in:
parent
84ec78bd86
commit
1371fa0c61
1 changed files with 4 additions and 1 deletions
|
@ -265,9 +265,10 @@ gst_matroska_demux_init (GstMatroskaDemux * demux)
|
||||||
|
|
||||||
GST_OBJECT_FLAG_SET (demux, GST_ELEMENT_FLAG_INDEXABLE);
|
GST_OBJECT_FLAG_SET (demux, GST_ELEMENT_FLAG_INDEXABLE);
|
||||||
|
|
||||||
|
demux->flowcombiner = gst_flow_combiner_new ();
|
||||||
|
|
||||||
/* finish off */
|
/* finish off */
|
||||||
gst_matroska_demux_reset (GST_ELEMENT (demux));
|
gst_matroska_demux_reset (GST_ELEMENT (demux));
|
||||||
demux->flowcombiner = gst_flow_combiner_new ();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -327,6 +328,8 @@ gst_matroska_demux_reset (GstElement * element)
|
||||||
}
|
}
|
||||||
|
|
||||||
demux->invalid_duration = FALSE;
|
demux->invalid_duration = FALSE;
|
||||||
|
|
||||||
|
gst_flow_combiner_clear (demux->flowcombiner);
|
||||||
}
|
}
|
||||||
|
|
||||||
static GstBuffer *
|
static GstBuffer *
|
||||||
|
|
Loading…
Reference in a new issue