From 46e0c7b97d8055f5cb505dcfac49aea787f16e4a Mon Sep 17 00:00:00 2001 From: Sjoerd Simons Date: Fri, 17 Oct 2014 22:23:27 +0200 Subject: rtpmux: Don't set PROXY_CAPS flag on the src pad rtpmux behaves like a funnel in that it forwards whatever upstream is sending buffers. So setting proxy caps doesn't make sense as the upstream don't have to have compatible caps, thus resulting in an empty caps set as a result of a caps query. Instead set fixed caps just as funnel does. https://bugzilla.gnome.org/show_bug.cgi?id=738722 --- gst/rtpmanager/gstrtpmux.c | 2 +- tests/check/elements/rtpmux.c | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/gst/rtpmanager/gstrtpmux.c b/gst/rtpmanager/gstrtpmux.c index c66c70ade..254f14e39 100644 --- a/gst/rtpmanager/gstrtpmux.c +++ b/gst/rtpmanager/gstrtpmux.c @@ -245,7 +245,7 @@ gst_rtp_mux_init (GstRTPMux * rtp_mux) "src"), "src"); gst_pad_set_event_function (rtp_mux->srcpad, GST_DEBUG_FUNCPTR (gst_rtp_mux_src_event)); - GST_PAD_SET_PROXY_CAPS (rtp_mux->srcpad); + gst_pad_use_fixed_caps (rtp_mux->srcpad); gst_element_add_pad (GST_ELEMENT (rtp_mux), rtp_mux->srcpad); rtp_mux->ssrc = DEFAULT_SSRC; diff --git a/tests/check/elements/rtpmux.c b/tests/check/elements/rtpmux.c index 6f316f109..11ba9794b 100644 --- a/tests/check/elements/rtpmux.c +++ b/tests/check/elements/rtpmux.c @@ -161,6 +161,10 @@ test_basic (const gchar * elem_name, const gchar * sink2, int count, "seqnum-offset", G_TYPE_UINT, 56, "timestamp-offset", G_TYPE_UINT, 57, "ssrc", G_TYPE_UINT, 66, NULL); fail_unless (gst_pad_set_caps (src1, caps)); + gst_caps_unref (caps); + + caps = gst_pad_peer_query_caps (sink, NULL); + fail_if (gst_caps_is_empty (caps)); gst_segment_init (&segment, GST_FORMAT_TIME); segment.start = 100000; -- cgit v1.2.3