It might be JMF or it might be the sip-communicator. Look through the
I dont know if its a bug of SIP Communicator or Asterisk. Is it allowed to change the codec of a RTP Stream from one packet to the next without further signaling ?
Szenario: SIPC is calling X-LITE via ASTERISK
(see attached .pcap files: .66=SIPC .26=XLITE .47=ASTERISK)
SIP Message Exchange:
SIPC->ASTERISK - INVITE XLITE, codecs: 0,3,4,...
ASTERISK->XLITE - INVITE XLITE, codecs: 0,3,8,...
XLITE->ASTERISK - OK, codecs: 0,8,3,...
ASTERISK->SIPC - OK, codecs: 3,0,8,...
XLITE<->ASTERISK use codec 0 the whole time
ASTERISK->SIPC, codec: 0
AVTransmitter.start(): SIPC->ASTERISK, codec: 3
Uh, ASTERISK recognised that it is receiving codec 3 from SIPC not 0, so it switches its outgoing codec from 0 to 3 too:
ASTERISK->SIPC, codec: 3
--> SIPC freaks out on the receiving side. Probably because the codec switched from g.711u to gsm inside the rtp stream? But wait...:
Now here comes the next(same?) problem. I replaced Asterisk with the SIP Express Router. Now both clients will speak which each other directly and not via a proxy. SIPser is only used for SIP not RTP and they both speak g711u without any codec changes. But receiving audio still freezes on SIPC if AVTransmitter.start() is called.
I dont know where to look now...
sipcvsasterisk.pcap (2.65 KB)
xlitevsasterisk.pcap (2.5 KB)
Bell Labs Europe