From 4dc92cff1ec25b63c32c73879d66b778f0a26635 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Mon, 27 Oct 2008 09:10:54 +0000 Subject: gst/flv/: Close the currently playing segment from the streaming thread instead of the thread where the seek event is... Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup), (gst_flv_demux_handle_seek_pull), (gst_flv_demux_dispose): * gst/flv/gstflvdemux.h: * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Close the currently playing segment from the streaming thread instead of the thread where the seek event is handled. --- gst/flv/gstflvparse.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'gst/flv/gstflvparse.c') diff --git a/gst/flv/gstflvparse.c b/gst/flv/gstflvparse.c index 16c83ec3..b68edd68 100644 --- a/gst/flv/gstflvparse.c +++ b/gst/flv/gstflvparse.c @@ -699,6 +699,10 @@ gst_flv_parse_tag_audio (GstFLVDemux * demux, const guint8 * data, /* Do we need a newsegment event ? */ if (G_UNLIKELY (demux->audio_need_segment)) { + if (demux->close_seg_event) + gst_pad_push_event (demux->audio_pad, + gst_event_ref (demux->close_seg_event)); + if (!demux->new_seg_event) { GST_DEBUG_OBJECT (demux, "pushing newsegment from %" GST_TIME_FORMAT " to %" GST_TIME_FORMAT, @@ -1007,6 +1011,10 @@ gst_flv_parse_tag_video (GstFLVDemux * demux, const guint8 * data, /* Do we need a newsegment event ? */ if (G_UNLIKELY (demux->video_need_segment)) { + if (demux->close_seg_event) + gst_pad_push_event (demux->video_pad, + gst_event_ref (demux->close_seg_event)); + if (!demux->new_seg_event) { GST_DEBUG_OBJECT (demux, "pushing newsegment from %" GST_TIME_FORMAT " to %" GST_TIME_FORMAT, -- cgit v1.2.1