oulan / sipdroid

Automatically exported from code.google.com/p/sipdroid
GNU General Public License v3.0
0 stars 0 forks source link

Possible incorrect Speex WB handling in SDP offer #1005

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago

What steps will reproduce the problem?
1. Install jitsi client
2. make a call to a sipdriod

What is the expected output? What do you see instead?
call should establish. Instead I receive incompatible codecs error

What version of the product are you using? On what device/operating system?
2.4 on cyanogenmod 7.1, ZTE Blade

Which SIP server are you using? What happens with PBXes?
CommuniGate Pro which is most likely irrelevant because it is acting as a SIP 
proxy not changing codecs in SDP. I don't have account with pbxes, but if it 
allows direct SIP-to-SIP calls, the problem should be reproduceable there as 
well.

Which type of network are you using?
wifi

Please provide any additional information below.

Most likely this is because sipdriod only supports speex NB and gets confused 
when speex WB is offered. Disabling speex altogether solves the problem.

Request to sipdroid:

20:36:58.048 5 SIPDATA-780708 out: INVITE 
sip:dop@xx.xx.xx.xx:47948;transport=udp SIP/2.0
20:36:58.048 5 SIPDATA-780708 out: Via: SIP/2.0/UDP 
xx.xx.xx.xx:5060;branch=z9hG4bK126794-aoixtxv;cgp=itoolabs.net;rport
20:36:58.048 5 SIPDATA-780708 out: Record-Route: <sip:xx.xx.xx.xx:5060;lr>
20:36:58.048 5 SIPDATA-780708 out: Record-Route: <sip:xx.xx.xx.xx:5060;lr>
20:36:58.048 5 SIPDATA-780708 out: Record-Route: 
<sip:rev.789-10.40.74.239.dialog.cgatepro;lr>
20:36:58.048 5 SIPDATA-780708 out: Max-Forwards: 67
20:36:58.048 5 SIPDATA-780708 out: From: "Dmitry Panov" 
<sip:dop@xxx.xx>;tag=3AA7E33E-812-8F35DAF6_aoixtxv-1C9F
20:36:58.048 5 SIPDATA-780708 out: To: <sip:dop@xxx.yy>
20:36:58.048 5 SIPDATA-780708 out: Call-ID: 
706130bb21879d3d1b4ffb9b72ce1269@0:0:0:0:0:0:0:0.egress
20:36:58.048 5 SIPDATA-780708 out: Contact: 
<sip:signode-812-8F35DAF6_aoixtxv-1C9F@xx.xx.xx.xx>
20:36:58.048 5 SIPDATA-780708 out: CSeq: 1 INVITE
20:36:58.048 5 SIPDATA-780708 out: Supported: 100rel,timer,replaces,histinfo
20:36:58.048 5 SIPDATA-780708 out: Session-Expires: 7200
20:36:58.048 5 SIPDATA-780708 out: Min-SE: 3600
20:36:58.048 5 SIPDATA-780708 out: User-Agent: CommuniGatePro-callLeg/5.3.10
20:36:58.048 5 SIPDATA-780708 out: Allow: 
INVITE,ACK,BYE,CANCEL,OPTIONS,INFO,MESSAGE,SUBSCRIBE,NOTIFY,PRACK,REFER
20:36:58.048 5 SIPDATA-780708 out: Content-Type: application/sdp
20:36:58.048 5 SIPDATA-780708 out: Content-Length: 581
20:36:58.048 5 SIPDATA-780708 out: 
20:36:58.048 5 SIPDATA-780708 out: v=0
20:36:58.048 5 SIPDATA-780708 out: o=CGPLeg000812 563173700 281586851 IN IP4 
xx.xx.xx.xx
20:36:58.048 5 SIPDATA-780708 out: s=-
20:36:58.048 5 SIPDATA-780708 out: c=IN IP4 xx.xx.xx.xx
20:36:58.048 5 SIPDATA-780708 out: t=0 0
20:36:58.048 5 SIPDATA-780708 out: a=mediagateway:itoolabs.com:761
20:36:58.048 5 SIPDATA-780708 out: m=audio 60000 RTP/AVP 96 97 98 9 100 3 0 8 
101
20:36:58.048 5 SIPDATA-780708 out: c=IN IP4 xx.xx.xx.xx
20:36:58.048 5 SIPDATA-780708 out: a=rtpmap:96 SILK/24000
20:36:58.048 5 SIPDATA-780708 out: a=rtpmap:97 SILK/16000
20:36:58.048 5 SIPDATA-780708 out: a=rtpmap:98 speex/16000
20:36:58.048 5 SIPDATA-780708 out: a=rtpmap:9 G722/8000
20:36:58.048 5 SIPDATA-780708 out: a=rtpmap:100 iLBC/8000
20:36:58.048 5 SIPDATA-780708 out: a=rtpmap:3 GSM/8000
20:36:58.048 5 SIPDATA-780708 out: a=rtpmap:0 PCMU/8000
20:36:58.048 5 SIPDATA-780708 out: a=rtpmap:8 PCMA/8000
20:36:58.048 5 SIPDATA-780708 out: a=rtpmap:101 telephone-event/8000
20:36:58.048 5 SIPDATA-780708 out: a=rtcpping:T:32:3278
20:36:58.048 5 SIPDATA-780708 out: a=extmap:1 
urn:ietf:params:rtp-hdrext:csrc-audio-level
20:36:58.048 5 SIPDATA-780708 out: a=zrtp-hash:1.10 
8cee0d3e8bc3203384c520389c2264ee4c76a4306ebffec1f62374bdb7630174

Response from sipdroid:

20:36:58.928 5 SIPDATA-780716 inp: SIP/2.0 180 Ringing
20:36:58.928 5 SIPDATA-780716 inp: Via: SIP/2.0/UDP 
xx.xx.xx.xx:5060;branch=z9hG4bK126794-aoixtxv;cgp=itoolabs.net;rport=5060
20:36:58.928 5 SIPDATA-780716 inp: Record-Route: <sip:xx.xx.xx.xx:5060;lr>
20:36:58.928 5 SIPDATA-780716 inp: Record-Route: <sip:xx.xx.xx.xx:5060;lr>
20:36:58.928 5 SIPDATA-780716 inp: Record-Route: 
<sip:rev.789-10.40.74.239.dialog.cgatepro;lr>
20:36:58.928 5 SIPDATA-780716 inp: To: <sip:dop@xxx.xx>;tag=cde7f7e51f6f2498
20:36:58.928 5 SIPDATA-780716 inp: From: "Dmitry Panov" 
<sip:dop@xx.yy>;tag=3AA7E33E-812-8F35DAF6_aoixtxv-1C9F
20:36:58.928 5 SIPDATA-780716 inp: Call-ID: 
706130bb21879d3d1b4ffb9b72ce1269@0:0:0:0:0:0:0:0.egress
20:36:58.928 5 SIPDATA-780716 inp: CSeq: 1 INVITE
20:36:58.928 5 SIPDATA-780716 inp: Server: Sipdroid/2.4 beta/Blade
20:36:58.928 5 SIPDATA-780716 inp: Content-Length: 172
20:36:58.928 5 SIPDATA-780716 inp: Content-Type: application/sdp
20:36:58.928 5 SIPDATA-780716 inp: 
20:36:58.928 5 SIPDATA-780716 inp: v=0
20:36:58.928 5 SIPDATA-780716 inp: o=dop@mail.Itoolabs.Co.UK 0 0 IN IP4 
192.168.16.10
20:36:58.928 5 SIPDATA-780716 inp: s=Session SIP/SDP
20:36:58.928 5 SIPDATA-780716 inp: c=IN IP4 xx.xx.xx.xx
20:36:58.928 5 SIPDATA-780716 inp: t=0 0
20:36:58.928 5 SIPDATA-780716 inp: m=audio 50016 RTP/AVP 98 101
20:36:58.928 5 SIPDATA-780716 inp: a=rtpmap:101 telephone-event/8000

Already here you can see format announcement (98) without the corresponding 
rtpmap attribute which is afair not allowed for dynamic payload types.

This response almost immediately followed by forbidden:

20:36:59.172 5 SIPDATA-780718 inp: SIP/2.0 403 Forbidden
20:36:59.172 5 SIPDATA-780718 inp: Via: SIP/2.0/UDP 
xx.xx.xx.xx:5060;branch=z9hG4bK126794-aoixtxv;cgp=itoolabs.net;rport=5060
20:36:59.172 5 SIPDATA-780718 inp: To: <sip:dop@xxx.xx>
20:36:59.172 5 SIPDATA-780718 inp: From: "Dmitry Panov" 
<sip:dop@xxx.yy>;tag=3AA7E33E-812-8F35DAF6_aoixtxv-1C9F
20:36:59.172 5 SIPDATA-780718 inp: Call-ID: 
706130bb21879d3d1b4ffb9b72ce1269@0:0:0:0:0:0:0:0.egress
20:36:59.172 5 SIPDATA-780718 inp: CSeq: 1 INVITE
20:36:59.172 5 SIPDATA-780718 inp: Server: Sipdroid/2.4 beta/Blade
20:36:59.172 5 SIPDATA-780718 inp: Content-Length: 0

Original issue reported on code.google.com by dop251 on 2 Jan 2012 at 9:34

GoogleCodeExporter commented 9 years ago
I get the same error making calls from pjsua r2914 (Sept 2009) to SipDroid 2.7 
beta (May 2012) on sgs2 touchwiz ics. pjsua by default offers speex WB as the 
preferred codec; if I disable speex WB (leaving speex NB as the prefered) then 
it works.

Original comment by samjgarn...@gmail.com on 29 Aug 2012 at 2:56