summaryrefslogtreecommitdiff
path: root/gst/frei0r
diff options
context:
space:
mode:
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;
}