summaryrefslogtreecommitdiff
path: root/gst/frei0r
diff options
context:
space:
mode:
authorThiago Santos <thiagoss@osg.samsung.com>2016-01-11 13:33:46 -0300
committerThiago Santos <thiagoss@osg.samsung.com>2016-01-11 17:00:17 -0300
commitf94079c1a970b32db2ed9c0fc2b59966766cc02a (patch)
treea4acbcd45d575da1017b57784f6002d151eef5b2 /gst/frei0r
parent04ec72872289cf48452d3278df6fe78b739e33b4 (diff)
downloadgstreamer-plugins-bad-f94079c1a970b32db2ed9c0fc2b59966766cc02a.tar.gz
frei0rmixer: replace accept-caps with caps query
It wants to check if upstream can produce a certain format, accept-caps might only check if the next element can produce it.
Diffstat (limited to 'gst/frei0r')
-rw-r--r--gst/frei0r/gstfrei0rmixer.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/gst/frei0r/gstfrei0rmixer.c b/gst/frei0r/gstfrei0rmixer.c
index 8d5f59b19..f2c84538a 100644
--- a/gst/frei0r/gstfrei0rmixer.c
+++ b/gst/frei0r/gstfrei0rmixer.c
@@ -216,8 +216,12 @@ gst_frei0r_mixer_set_caps (GstFrei0rMixer * self, GstPad * pad, GstCaps * caps)
}
}
} else if (!gst_caps_is_equal (caps, self->caps)) {
- if (gst_pad_peer_query_accept_caps (pad, self->caps))
+ GstCaps *upstream_caps;
+
+ upstream_caps = gst_pad_peer_query_caps (pad, NULL);
+ if (gst_caps_can_intersect (self->caps, upstream_caps))
gst_pad_push_event (pad, gst_event_new_reconfigure ());
+ gst_caps_unref (upstream_caps);
ret = FALSE;
}