From 939a95d44b2cd52fce494521680a5d4bc5616666 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Thu, 19 Feb 2015 12:35:07 +0200 Subject: [PATCH] rtpsession: Send initial events on sync_rtcp pad when using RTP/RTCP muxing Otherwise we will just send buffers on the pad without any events beforehand and will get g_warnings() about that. --- gst/rtpmanager/gstrtpsession.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gst/rtpmanager/gstrtpsession.c b/gst/rtpmanager/gstrtpsession.c index 8c7306b482..3a968a5450 100644 --- a/gst/rtpmanager/gstrtpsession.c +++ b/gst/rtpmanager/gstrtpsession.c @@ -1300,6 +1300,14 @@ gst_rtp_session_sync_rtcp (RTPSession * sess, gst_object_ref (sync_src); GST_RTP_SESSION_UNLOCK (rtpsession); + /* set rtcp caps on output pad, this happens + * when we receive RTCP muxed with RTP according + * to RFC5761. Otherwise we would have forwarded + * the events from the recv_rtcp_sink pad already + */ + if (!gst_pad_has_current_caps (sync_src)) + do_rtcp_events (rtpsession, sync_src); + GST_LOG_OBJECT (rtpsession, "sending Sync RTCP"); result = gst_pad_push (sync_src, buffer); gst_object_unref (sync_src);