From 3cf076035dd96b2959114697660424453fb23222 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Sebastian=20Dr=C3=B6ge?= Date: Thu, 5 Jul 2012 13:12:17 +0200 Subject: [PATCH] gst: Implement segment-done event --- gst/asfdemux/gstasfdemux.c | 2 ++ gst/realmedia/rademux.c | 2 ++ gst/realmedia/rmdemux.c | 2 ++ 3 files changed, 6 insertions(+) diff --git a/gst/asfdemux/gstasfdemux.c b/gst/asfdemux/gstasfdemux.c index 3d28203..28ea579 100644 --- a/gst/asfdemux/gstasfdemux.c +++ b/gst/asfdemux/gstasfdemux.c @@ -1730,6 +1730,8 @@ eos: gst_element_post_message (GST_ELEMENT_CAST (demux), gst_message_new_segment_done (GST_OBJECT (demux), GST_FORMAT_TIME, stop)); + gst_asf_demux_send_event_unlocked (demux, + gst_event_new_segment_done (GST_FORMAT_TIME, stop)); } else if (flow != GST_FLOW_EOS) { /* check if we have a chained asf, in case, we don't eos yet */ if (gst_asf_demux_check_chained_asf (demux)) { diff --git a/gst/realmedia/rademux.c b/gst/realmedia/rademux.c index a81ee54..113774f 100644 --- a/gst/realmedia/rademux.c +++ b/gst/realmedia/rademux.c @@ -697,6 +697,8 @@ eos: gst_element_post_message (GST_ELEMENT (demux), gst_message_new_segment_done (GST_OBJECT (demux), GST_FORMAT_TIME, stop)); + gst_pad_push_event (demux->srcpad, + gst_event_new_segment_done (GST_FORMAT_TIME, stop)); } else { /* normal playback, send EOS event downstream */ GST_DEBUG_OBJECT (demux, "sending EOS event, at end of stream"); diff --git a/gst/realmedia/rmdemux.c b/gst/realmedia/rmdemux.c index c98e16a..240a85d 100644 --- a/gst/realmedia/rmdemux.c +++ b/gst/realmedia/rmdemux.c @@ -922,6 +922,8 @@ need_pause: gst_element_post_message (GST_ELEMENT (rmdemux), gst_message_new_segment_done (GST_OBJECT (rmdemux), GST_FORMAT_TIME, stop)); + gst_rmdemux_send_event (rmdemux, + gst_event_new_segment_done (GST_FORMAT_TIME, stop)); } else { /* normal playback, send EOS to all linked pads */ GST_LOG_OBJECT (rmdemux, "Sending EOS, at end of stream"); -- 2.7.4