]> 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)
committerGeorge Joseph <gjoseph@sangoma.com>
Wed, 17 Sep 2025 17:40:37 +0000 (11:40 -0600)
commit2a661446c4a0c2bc7ad99da8e8a41c214bd662c9
tree6d2bb22363cdfd19db7db2d83f45f619231473fd
parentd40d5c999a5ca812fa2bce7124107f901dd4445f
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
(cherry picked from commit b333ee3be7b08e17fea78838b58380308659e23c)
channels/chan_pjsip.c