diff --git a/coreapi/TunnelManager.cc b/coreapi/TunnelManager.cc index ebbad9de3..8c4968400 100644 --- a/coreapi/TunnelManager.cc +++ b/coreapi/TunnelManager.cc @@ -79,13 +79,16 @@ static void sCloseRtpTransport(RtpTransport *t, void *userData){ } void TunnelManager::closeRtpTransport(RtpTransport *t, TunnelSocket *s){ mTunnelClient->closeSocket(s); - ms_free(t); } static RtpTransport *sCreateRtpTransport(void* userData, int port){ return ((TunnelManager *) userData)->createRtpTransport(port); } +void sDestroyRtpTransport(RtpTransport *t){ + ms_free(t); +} + RtpTransport *TunnelManager::createRtpTransport(int port){ TunnelSocket *socket=mTunnelClient->createSocket(port); socket->setUserPointer(this); @@ -94,6 +97,7 @@ RtpTransport *TunnelManager::createRtpTransport(int port){ t->t_recvfrom=customRecvfrom; t->t_sendto=customSendto; t->t_close=sCloseRtpTransport; + t->t_destroy=sDestroyRtpTransport; t->data=socket; return t; } diff --git a/coreapi/linphonecall.c b/coreapi/linphonecall.c index 04373a681..7ceafdae7 100644 --- a/coreapi/linphonecall.c +++ b/coreapi/linphonecall.c @@ -1605,9 +1605,13 @@ void linphone_call_init_video_stream(LinphoneCall *call){ if (lc->rtptf){ RtpTransport *vrtp=lc->rtptf->video_rtp_func(lc->rtptf->video_rtp_func_data, call->media_ports[1].rtp_port); RtpTransport *vrtcp=lc->rtptf->video_rtcp_func(lc->rtptf->video_rtcp_func_data, call->media_ports[1].rtcp_port); - rtp_session_set_transports(call->videostream->ms.sessions.rtp_session,vrtp,vrtcp); + RtpTransport *meta_rtp; + RtpTransport *meta_rtcp; + meta_rtp_transport_new(&meta_rtp,TRUE,vrtp, 0); + meta_rtp_transport_new(&meta_rtcp,FALSE,vrtcp, 0); + rtp_session_set_transports(call->videostream->ms.sessions.rtp_session,meta_rtp,meta_rtcp); } - call->videostream_app_evq = ortp_ev_queue_new(); + call->videostream_app_evq = ortp_ev_queue_new(); rtp_session_register_event_queue(call->videostream->ms.sessions.rtp_session,call->videostream_app_evq); _linphone_call_prepare_ice_for_stream(call,1,FALSE); #ifdef TEST_EXT_RENDERER diff --git a/mediastreamer2 b/mediastreamer2 index 4d43eeedb..73ee30b2f 160000 --- a/mediastreamer2 +++ b/mediastreamer2 @@ -1 +1 @@ -Subproject commit 4d43eeedbcf715182325c27438106735593f4e8e +Subproject commit 73ee30b2f6dcf4ca752d0a26bef4c1415e4796d3 diff --git a/oRTP b/oRTP index 509e86632..6774293d2 160000 --- a/oRTP +++ b/oRTP @@ -1 +1 @@ -Subproject commit 509e86632b4a9544ff5d7ce57b66c89e3e384933 +Subproject commit 6774293d236a3f02c9dd56f30f44055847de9c02