]> git.ipfire.org Git - thirdparty/asterisk.git/commit
Add a 'secret' probation strictrtp mode to handle delayed changes in RTP source
authorMatthew Jordan <mjordan@digium.com>
Thu, 7 Mar 2013 15:48:06 +0000 (15:48 +0000)
committerMatthew Jordan <mjordan@digium.com>
Thu, 7 Mar 2013 15:48:06 +0000 (15:48 +0000)
commit80b8c2349c427a94a428670f1183bdc693936813
tree0a07c07c194da424f97295fa2a8df3538823fb58
parenta3a2b995197103fb1d613121daab2b8320de622b
Add a 'secret' probation strictrtp mode to handle delayed changes in RTP source

Often, Asterisk may realize that a change in the source of an RTP stream is
about to occur and ask that the RTP engine reset it's lock on the current RTP
source. In certain scenarios, it may take awhile for the new remote system to
send RTP packets, while the old remote system may continue providing RTP during
that time period. This causes Asterisk to re-lock onto the old source, thereby
rejecting the new source when the old source stops sending RTP and the new
source begins.

This patch prevents that by having a constant secondary, 'secret' probation
mode enabled when an RTP source has been chosen. RTP packets from other sources
are always considered, but never chosen unless the current RTP source stops
sending RTP.

Review: https://reviewboard.asterisk.org/r/2364

(closes issue AST-1124)
Reported by: John Bigelow
Tested by: John Bigelow

(closes issue AST-1125)
Reported by: John Bigelow
Tested by: John Bigelow
........

Merged revisions 382573 from http://svn.asterisk.org/svn/asterisk/branches/11

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@382589 65c4cc65-6c06-0410-ace0-fbb531ad65f3
channels/chan_sip.c
include/asterisk/rtp_engine.h
main/rtp_engine.c
res/res_rtp_asterisk.c