summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2014-08-27 11:01:01 +0300
committerSebastian Dröge <sebastian@centricular.com>2014-08-27 11:01:53 +0300
commited15b309307b5fe907c34053f5035183b7d9ec68 (patch)
tree02781bbafa8362c03721c3448261b922700ca2c7
parentb38264a9cb6096f9a92ee45ea0c084c7a877c0c4 (diff)
concat: Allow seeking on the currently playing stream
This is consistent with the stream time reporting.
-rw-r--r--plugins/elements/gstconcat.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/plugins/elements/gstconcat.c b/plugins/elements/gstconcat.c
index 919163dd72..340a2d1069 100644
--- a/plugins/elements/gstconcat.c
+++ b/plugins/elements/gstconcat.c
@@ -563,9 +563,19 @@ gst_concat_src_event (GstPad * pad, GstObject * parent, GstEvent * event)
switch (GST_EVENT_TYPE (event)) {
case GST_EVENT_SEEK:{
- /* We don't support seeking */
- gst_event_unref (event);
- ret = FALSE;
+ GstPad *sinkpad = NULL;
+
+ g_mutex_lock (&self->lock);
+ if ((sinkpad = self->current_sinkpad))
+ gst_object_ref (sinkpad);
+ g_mutex_unlock (&self->lock);
+ if (sinkpad) {
+ ret = gst_pad_push_event (sinkpad, event);
+ gst_object_unref (sinkpad);
+ } else {
+ gst_event_unref (event);
+ ret = FALSE;
+ }
break;
}
case GST_EVENT_QOS:{