summaryrefslogtreecommitdiffstats
path: root/gst/rtpmanager
diff options
context:
space:
mode:
authorOlivier CrĂȘte <olivier.crete@collabora.co.uk>2009-05-22 00:16:19 +0200
committerWim Taymans <wim@metal.(none)>2009-05-22 00:16:19 +0200
commitab80a4fa411e85380ee5da3e7f7abc1553053628 (patch)
tree6aa444748c6bb5aafeeab1f352a41599d18f31ee /gst/rtpmanager
parentb6e891bbdad221105daecdef83098a2585d0f039 (diff)
downloadgst-plugins-bad-ab80a4fa411e85380ee5da3e7f7abc1553053628.tar.gz
gst-plugins-bad-ab80a4fa411e85380ee5da3e7f7abc1553053628.tar.bz2
gst-plugins-bad-ab80a4fa411e85380ee5da3e7f7abc1553053628.zip
rtpbin: Implement releasing of rtcp src pad
See #561752
Diffstat (limited to 'gst/rtpmanager')
-rw-r--r--gst/rtpmanager/gstrtpbin.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/gst/rtpmanager/gstrtpbin.c b/gst/rtpmanager/gstrtpbin.c
index 7d3b9823..4db28f73 100644
--- a/gst/rtpmanager/gstrtpbin.c
+++ b/gst/rtpmanager/gstrtpbin.c
@@ -2338,8 +2338,13 @@ pad_failed:
static void
remove_rtcp (GstRtpBin * rtpbin, GstRtpBinSession * session, GstPad * pad)
{
- g_warning ("gstrtpbin: releasing pad %s:%s is not implemented",
- GST_DEBUG_PAD_NAME (pad));
+ gst_pad_set_active (pad, FALSE);
+ gst_element_remove_pad (GST_ELEMENT (rtpbin), pad);
+
+ if (session->send_rtcp_src) {
+ gst_element_release_request_pad (session->session, session->send_rtcp_src);
+ session->send_rtcp_src = NULL;
+ }
}
/* If the requested name is NULL we should create a name with