From 33cc1b4854d58fcb06131c88ffbfb38b991667bf Mon Sep 17 00:00:00 2001 From: Mark Nauwelaerts Date: Mon, 23 Mar 2015 20:57:56 +0100 Subject: flvdemux: resurrect some flow return handling https://bugzilla.gnome.org/show_bug.cgi?id=744572 --- gst/flv/gstflvdemux.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/gst/flv/gstflvdemux.c b/gst/flv/gstflvdemux.c index 2ca73f53e..9a6928f02 100644 --- a/gst/flv/gstflvdemux.c +++ b/gst/flv/gstflvdemux.c @@ -1230,7 +1230,8 @@ gst_flv_demux_parse_tag_audio (GstFlvDemux * demux, GstBuffer * buffer) goto beach; } - ret = gst_flow_combiner_update_flow (demux->flowcombiner, ret); + ret = gst_flow_combiner_update_pad_flow (demux->flowcombiner, + demux->audio_pad, ret); beach: gst_buffer_unmap (buffer, &map); @@ -1651,7 +1652,8 @@ gst_flv_demux_parse_tag_video (GstFlvDemux * demux, GstBuffer * buffer) goto beach; } - ret = gst_flow_combiner_update_flow (demux->flowcombiner, ret); + ret = gst_flow_combiner_update_pad_flow (demux->flowcombiner, + demux->video_pad, ret); beach: gst_buffer_unmap (buffer, &map); @@ -2761,6 +2763,7 @@ flv_demux_handle_seek_push (GstFlvDemux * demux, GstEvent * event) GST_WARNING_OBJECT (demux, "upstream seek failed"); } + gst_flow_combiner_reset (demux->flowcombiner); /* Tell all the stream we moved to a different position (discont) */ demux->audio_need_discont = TRUE; demux->video_need_discont = TRUE; @@ -2972,6 +2975,7 @@ gst_flv_demux_handle_seek_pull (GstFlvDemux * demux, GstEvent * event, demux->segment.format, demux->segment.position)); } + gst_flow_combiner_reset (demux->flowcombiner); /* Tell all the stream a new segment is needed */ demux->audio_need_segment = TRUE; demux->video_need_segment = TRUE; @@ -3162,6 +3166,7 @@ gst_flv_demux_sink_event (GstPad * pad, GstObject * parent, GstEvent * event) demux->new_seg_event = NULL; } } + gst_flow_combiner_reset (demux->flowcombiner); break; } default: -- cgit v1.2.3