]> git.ipfire.org Git - thirdparty/asterisk.git/commit
chan_pjsip.c: Change SSRC after media source change
authorMartin Tomec <tomec@ipex.cz>
Wed, 25 Jun 2025 13:20:17 +0000 (15:20 +0200)
committerMartin Tomec <tomec@ipex.cz>
Thu, 10 Jul 2025 14:48:53 +0000 (14:48 +0000)
commitb333ee3be7b08e17fea78838b58380308659e23c
tree2114ca23fd2012e922180b24ff03e982edf66641
parent733196abf9195997ef908ea48ccd5a21a0f9a425
chan_pjsip.c: Change SSRC after media source change

When the RTP media source changes, such as after a blind transfer, the new source introduces a discontinuous timestamp. According to RFC 3550, Section 5.1, an RTP stream's timestamp for a given SSRC must increment monotonically and linearly.
To comply with the standard and avoid a large timestamp jump on the existing SSRC, a new SSRC is generated for the new media stream.
This change resolves known interoperability issues with certain SBCs (like Sonus/Ribbon) that stop forwarding media when they detect such a timestamp violation. This code uses the existing implementation from chan_sip.

Resolves: #927
channels/chan_pjsip.c