summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2013-12-24 14:40:25 +0100
committerSebastian Dröge <sebastian@centricular.com>2013-12-24 14:40:25 +0100
commit2f07b570f76b4a2e5de40b1fe467aad29ece3ed0 (patch)
treee85d3c77ba71a6fe55a14d44aa230f45c12aaecc
parent5b1108dd5f88bfa67655f90d7de9a8308a183f19 (diff)
rndbuffersize: Proxy CAPS, ALLOCATION, SCHEDULING and srcpad events properly
-rw-r--r--gst/debugutils/rndbuffersize.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/gst/debugutils/rndbuffersize.c b/gst/debugutils/rndbuffersize.c
index 6259579f0..009f833bd 100644
--- a/gst/debugutils/rndbuffersize.c
+++ b/gst/debugutils/rndbuffersize.c
@@ -159,11 +159,17 @@ gst_rnd_buffer_size_init (GstRndBufferSize * self)
GST_DEBUG_FUNCPTR (gst_rnd_buffer_size_sink_event));
gst_pad_set_chain_function (self->sinkpad,
GST_DEBUG_FUNCPTR (gst_rnd_buffer_size_chain));
+ GST_OBJECT_FLAG_SET (self->sinkpad, GST_PAD_FLAG_PROXY_CAPS);
+ GST_OBJECT_FLAG_SET (self->sinkpad, GST_PAD_FLAG_PROXY_ALLOCATION);
+ GST_OBJECT_FLAG_SET (self->sinkpad, GST_PAD_FLAG_PROXY_SCHEDULING);
gst_element_add_pad (GST_ELEMENT (self), self->sinkpad);
self->srcpad = gst_pad_new_from_static_template (&src_template, "src");
gst_pad_set_event_function (self->srcpad,
GST_DEBUG_FUNCPTR (gst_rnd_buffer_size_src_event));
+ GST_OBJECT_FLAG_SET (self->srcpad, GST_PAD_FLAG_PROXY_CAPS);
+ GST_OBJECT_FLAG_SET (self->srcpad, GST_PAD_FLAG_PROXY_ALLOCATION);
+ GST_OBJECT_FLAG_SET (self->srcpad, GST_PAD_FLAG_PROXY_SCHEDULING);
gst_element_add_pad (GST_ELEMENT (self), self->srcpad);
}
@@ -296,8 +302,7 @@ gst_rnd_buffer_size_src_event (GstPad * pad, GstObject * parent,
gint64 start;
if (GST_EVENT_TYPE (event) != GST_EVENT_SEEK) {
- GST_WARNING_OBJECT (pad, "dropping %s event", GST_EVENT_TYPE_NAME (event));
- return FALSE;
+ return gst_pad_event_default (pad, parent, event);
}
self = GST_RND_BUFFER_SIZE (parent);
@@ -417,7 +422,7 @@ gst_rnd_buffer_size_sink_event (GstPad * pad, GstObject * parent,
break;
}
- return gst_pad_push_event (rnd->srcpad, event);
+ return gst_pad_event_default (pad, parent, event);
}
static GstFlowReturn