From 3001f3b4332e2a5173f6cb7d56592747899f461c Mon Sep 17 00:00:00 2001 From: Thiago Santos Date: Thu, 14 Aug 2014 18:53:40 -0300 Subject: [PATCH] inputselector: always proxy caps query Otherwise it would only be proxied for the active pad which can lead upstream to use an incompatible caps for the downstream element. Even if a reconfigure event is sent upstream when the pad is activated, this will save the caps reconfiguration if it is already using an acceptable caps. --- plugins/elements/gstinputselector.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/plugins/elements/gstinputselector.c b/plugins/elements/gstinputselector.c index 45db79bd8a..fb50802516 100644 --- a/plugins/elements/gstinputselector.c +++ b/plugins/elements/gstinputselector.c @@ -588,8 +588,13 @@ static gboolean gst_selector_pad_query (GstPad * pad, GstObject * parent, GstQuery * query) { gboolean res = FALSE; + GstInputSelector *self = (GstInputSelector *) parent; switch (GST_QUERY_TYPE (query)) { + case GST_QUERY_CAPS: + /* always proxy caps query, regardless of active pad or not */ + res = gst_pad_peer_query (self->srcpad, query); + break; case GST_QUERY_ALLOCATION:{ GstPad *active_sinkpad; GstInputSelector *sel = GST_INPUT_SELECTOR (parent);