Hi list,
I know * generates it's outgoing RTP stream based on the incomming RTP
stream, i'm having some audio problems after i recieve an rtp reinvite from
my
carrier.
Situation:
Phone -- Asterisk A --- Asterisk B --- Carrier --- PSTN
Asterisk A: reinvite = no
Asterisk B: reinvite = no
If i dial out on phone via asterisk A, Asterisk B relay's the INVITE to the
carrier, after the PSTN answers the call the carrier sends a reinvite to
Asterisk B to change the ip to one of the the Media Gateways of the carrier, the
media gateway however sends RTP with a completely different timestamp
to Asterisk B, so Asterisk B copies that timstamp and Asterisk A gets an audio
hickup.
IE
asterisk B recieves: asterisk B sends
to A
sequence 1 timestamp 0 SSRC 1234 from ip 1.2.3.4 sequence 1
timestamp 0 SSRC 4321 from ip Asterisk B
sequence 2 timestamp 30 SSRC 1234 from ip 1.2.3.4 sequence 2
timestamp 30 SSRC 4321 from ip Asterisk B
sequence 3 timestamp 60 SSRC 1234 from ip 1.2.3.4 sequence 3
timestamp 60 SSRC 4321 from ip Asterisk B
so far, so good, but then Asterisk B recieves a reinvite from the carrier and
start to send this rtp to Asterisk A
sequence 500 timestamp 500000 SSRC 5678 from ip 1.2.3.4 sequence 4
timestamp 500000 SSRC 1234 from ip Asterisk B
sequence 501 timestamp 500030 SSRC 5678 from ip 1.2.3.4 sequence 5
timestamp 500030 SSRC 1234 from ip Asterisk B
sequence 502 timestamp 500060 SSRC 5678 from ip 1.2.3.4 sequence 6
timestamp 500060 SSRC 1234 from ip Asterisk B
IMHO Asterisk B should change it SSRC to tell Asterisk A the RTP source has
changed (and fix this timestamp gap)?
Erik