mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-03 11:25:35 +00:00
res_pjsip_sdp_rtp: Improve detecting of lack of RTP activity
Change RTP timer behavior for detecting RTP only after two-way SDP channel establishment. Ignore detecting after receiving 183 with SDP or while direct media is used. Make rtp_timeout and rtp_timeout_hold options consistent to rtptimeout and rtpholdtimeout options in chan_sip. ASTERISK-26689 #close ASTERISK-29929 #close Change-Id: I07326d5b9c40f25db717fd6075f6f3a8d77279eb
This commit is contained in:
committed by
Friendly Automation
parent
bf9dafa7c2
commit
5565d86fa6
@@ -334,14 +334,6 @@ static int check_for_rtp_changes(struct ast_channel *chan, struct ast_rtp_instan
|
||||
ast_sockaddr_setnull(&media->direct_media_addr);
|
||||
changed = 1;
|
||||
if (media->rtp) {
|
||||
/* Direct media has ended - reset time of last received RTP packet
|
||||
* to avoid premature RTP timeout. Synchronisation between the
|
||||
* modification of direct_mdedia_addr+last_rx here and reading the
|
||||
* values in res_pjsip_sdp_rtp.c:rtp_check_timeout() is provided
|
||||
* by the channel's lock (which is held while this function is
|
||||
* executed).
|
||||
*/
|
||||
ast_rtp_instance_set_last_rx(media->rtp, time(NULL));
|
||||
ast_rtp_instance_set_prop(media->rtp, AST_RTP_PROPERTY_RTCP, 1);
|
||||
if (position != -1) {
|
||||
ast_channel_set_fd(chan, position + AST_EXTENDED_FDS, ast_rtp_instance_fd(media->rtp, 1));
|
||||
|
Reference in New Issue
Block a user