summaryrefslogtreecommitdiff
path: root/gst/interleave/interleave.c
diff options
context:
space:
mode:
Diffstat (limited to 'gst/interleave/interleave.c')
-rw-r--r--gst/interleave/interleave.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/gst/interleave/interleave.c b/gst/interleave/interleave.c
index cb2cd0fbb..2a2fd6e4b 100644
--- a/gst/interleave/interleave.c
+++ b/gst/interleave/interleave.c
@@ -750,6 +750,16 @@ gst_interleave_sink_getcaps (GstPad * pad, GstInterleave * self,
GST_OBJECT_UNLOCK (self);
+ if (filter != NULL) {
+ GstCaps *caps = result;
+
+ GST_LOG_OBJECT (pad, "intersecting filter caps %" GST_PTR_FORMAT " with "
+ "preliminary result %" GST_PTR_FORMAT, filter, caps);
+
+ result = gst_caps_intersect_full (filter, caps, GST_CAPS_INTERSECT_FIRST);
+ gst_caps_unref (caps);
+ }
+
GST_DEBUG_OBJECT (pad, "Returning caps %" GST_PTR_FORMAT, result);
return result;