Use automatic pad activation in elements that can take advantage of it
Pads are activated automatically when they are added if the element state is >=PAUSED, so it's not necessary to activate them manually anymore. This patch removes manual pad activation from gstaggregator, gstconcat, gstfunnel, and gstinputselector. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3636>
This commit is contained in:
parent
13fc49770e
commit
2c2767b94a
@ -2108,7 +2108,6 @@ gst_aggregator_request_new_pad (GstElement * element,
|
|||||||
GstAggregator *self;
|
GstAggregator *self;
|
||||||
GstAggregatorPad *agg_pad;
|
GstAggregatorPad *agg_pad;
|
||||||
GstAggregatorClass *klass = GST_AGGREGATOR_GET_CLASS (element);
|
GstAggregatorClass *klass = GST_AGGREGATOR_GET_CLASS (element);
|
||||||
GstAggregatorPrivate *priv = GST_AGGREGATOR (element)->priv;
|
|
||||||
|
|
||||||
self = GST_AGGREGATOR (element);
|
self = GST_AGGREGATOR (element);
|
||||||
|
|
||||||
@ -2120,9 +2119,6 @@ gst_aggregator_request_new_pad (GstElement * element,
|
|||||||
|
|
||||||
GST_DEBUG_OBJECT (element, "Adding pad %s", GST_PAD_NAME (agg_pad));
|
GST_DEBUG_OBJECT (element, "Adding pad %s", GST_PAD_NAME (agg_pad));
|
||||||
|
|
||||||
if (priv->running)
|
|
||||||
gst_pad_set_active (GST_PAD (agg_pad), TRUE);
|
|
||||||
|
|
||||||
/* add the pad to the element */
|
/* add the pad to the element */
|
||||||
gst_element_add_pad (element, GST_PAD (agg_pad));
|
gst_element_add_pad (element, GST_PAD (agg_pad));
|
||||||
|
|
||||||
|
@ -311,8 +311,6 @@ gst_concat_request_new_pad (GstElement * element, GstPadTemplate * templ,
|
|||||||
GST_OBJECT_FLAG_SET (sinkpad, GST_PAD_FLAG_PROXY_CAPS);
|
GST_OBJECT_FLAG_SET (sinkpad, GST_PAD_FLAG_PROXY_CAPS);
|
||||||
GST_OBJECT_FLAG_SET (sinkpad, GST_PAD_FLAG_PROXY_ALLOCATION);
|
GST_OBJECT_FLAG_SET (sinkpad, GST_PAD_FLAG_PROXY_ALLOCATION);
|
||||||
|
|
||||||
gst_pad_set_active (sinkpad, TRUE);
|
|
||||||
|
|
||||||
g_mutex_lock (&self->lock);
|
g_mutex_lock (&self->lock);
|
||||||
self->sinkpads = g_list_prepend (self->sinkpads, gst_object_ref (sinkpad));
|
self->sinkpads = g_list_prepend (self->sinkpads, gst_object_ref (sinkpad));
|
||||||
if (!self->current_sinkpad) {
|
if (!self->current_sinkpad) {
|
||||||
|
@ -238,8 +238,6 @@ gst_funnel_request_new_pad (GstElement * element, GstPadTemplate * templ,
|
|||||||
GST_OBJECT_FLAG_SET (sinkpad, GST_PAD_FLAG_PROXY_CAPS);
|
GST_OBJECT_FLAG_SET (sinkpad, GST_PAD_FLAG_PROXY_CAPS);
|
||||||
GST_OBJECT_FLAG_SET (sinkpad, GST_PAD_FLAG_PROXY_ALLOCATION);
|
GST_OBJECT_FLAG_SET (sinkpad, GST_PAD_FLAG_PROXY_ALLOCATION);
|
||||||
|
|
||||||
gst_pad_set_active (sinkpad, TRUE);
|
|
||||||
|
|
||||||
gst_element_add_pad (element, sinkpad);
|
gst_element_add_pad (element, sinkpad);
|
||||||
|
|
||||||
GST_DEBUG_OBJECT (element, "requested pad %s:%s",
|
GST_DEBUG_OBJECT (element, "requested pad %s:%s",
|
||||||
|
@ -1934,7 +1934,6 @@ gst_input_selector_request_new_pad (GstElement * element,
|
|||||||
|
|
||||||
GST_OBJECT_FLAG_SET (sinkpad, GST_PAD_FLAG_PROXY_CAPS);
|
GST_OBJECT_FLAG_SET (sinkpad, GST_PAD_FLAG_PROXY_CAPS);
|
||||||
GST_OBJECT_FLAG_SET (sinkpad, GST_PAD_FLAG_PROXY_ALLOCATION);
|
GST_OBJECT_FLAG_SET (sinkpad, GST_PAD_FLAG_PROXY_ALLOCATION);
|
||||||
gst_pad_set_active (sinkpad, TRUE);
|
|
||||||
GST_INPUT_SELECTOR_UNLOCK (sel);
|
GST_INPUT_SELECTOR_UNLOCK (sel);
|
||||||
gst_element_add_pad (GST_ELEMENT (sel), sinkpad);
|
gst_element_add_pad (GST_ELEMENT (sel), sinkpad);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user