diff options
author | Liong Sauw Ming <ming@teluu.com> | 2011-05-19 08:05:23 +0000 |
---|---|---|
committer | Liong Sauw Ming <ming@teluu.com> | 2011-05-19 08:05:23 +0000 |
commit | dc02120b2dff4da759a0f20717ec503107447c44 (patch) | |
tree | 9934a138792670bf4538e5c02b0ee1e38730f3d3 /pjsip | |
parent | f8901ea61be686ac4f76e86aa6ec550d11388ffb (diff) |
Fixed #1268: Option for automatic/manual sending of RTCP SDES/BYE for the stream.
git-svn-id: http://svn.pjsip.org/repos/pjproject/branches/1.x@3571 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip')
-rw-r--r-- | pjsip/src/pjsua-lib/pjsua_media.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/pjsip/src/pjsua-lib/pjsua_media.c b/pjsip/src/pjsua-lib/pjsua_media.c index 2eced3d9..f6791131 100644 --- a/pjsip/src/pjsua-lib/pjsua_media.c +++ b/pjsip/src/pjsua-lib/pjsua_media.c @@ -1530,6 +1530,9 @@ pj_status_t pjsua_media_channel_deinit(pjsua_call_id call_id) { pjsua_call *call = &pjsua_var.calls[call_id]; + if (call->session) + pjmedia_session_send_rtcp_bye(call->session); + stop_media_session(call_id); if (call->med_tp_st != PJSUA_MED_TP_IDLE) { @@ -1573,6 +1576,7 @@ pj_status_t pjsua_media_channel_update(pjsua_call_id call_id, const pjmedia_sdp_session *local_sdp, const pjmedia_sdp_session *remote_sdp) { + unsigned i; int prev_media_st = 0; pjsua_call *call = &pjsua_var.calls[call_id]; pjmedia_session_info sess_info; @@ -1598,6 +1602,10 @@ pj_status_t pjsua_media_channel_update(pjsua_call_id call_id, if (status != PJ_SUCCESS) return status; + for (i = 0; i < sess_info.stream_cnt; ++i) { + sess_info.stream_info[i].rtcp_sdes_bye_disabled = PJ_TRUE; + } + /* Update audio index from the negotiated SDP */ call->audio_idx = find_audio_index(local_sdp, PJ_TRUE); @@ -1717,6 +1725,9 @@ pj_status_t pjsua_media_channel_update(pjsua_call_id call_id, return status; } + if (prev_media_st == PJSUA_CALL_MEDIA_NONE) + pjmedia_session_send_rtcp_sdes(call->session); + /* If DTMF callback is installed by application, install our * callback to the session. */ |