[Spce-user] WebRTC to Legacy SIP no 2 way audio/video

Andrew Pogrebennyk apogrebennyk at sipwise.com
Wed Aug 19 09:13:41 EDT 2015


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Hi Jon,

On 08/13/2015 03:59 PM, Jon Bonilla (Manwe) wrote:
> What I get is:
> 
> - If Firefox is in the call, the spce removes firefox's video from
> sdp. Looks like it doesn't like it.
> 
> - Calling from webrtc to sip, I see the video offer and accept it
> but I get one way audio (from webrtc2sip) and no video in any
> direction. Tested with h264 enabled and not.
> 
> - Calling from sip 2 webrtc I get one or two way audio (always
> works from webrtc2sip) depending on the chrome version I use.

I just tried it on trunk (but should be the same on mr3.8.2) using
Firefox 40 (mine prefers RTP/SAVPF for some reason so I put that in
the preferences, but it also works with DTLS..) and Jitsi (legacy
RTP/AVP):
basically I always got nice two way audio but regarding video it's
more tricky. I see local video preview in jssip and no video in jitsi.
Anyhow I don't see that the rtpengine is removing the video line, it's
all passing through. Here is an example of a call from jitsi to webrtc:
> received WebSocket text message:
> 
> INVITE sip:fdtqa215 at rf170grbesrc.invalid;transport=ws SIP/2.0 
> Max-Forwards: 70 Record-Route:
> <sip:10.15.20.185;transport=ws;r2=on;lr=on;ftag=39D317C5-55D47B21000A4
2F8-0AF89700;ngcplb=yes;socket=sip:10.15.20.185:5060>
>
> 
Record-Route:
<sip:127.0.0.1;r2=on;lr=on;ftag=39D317C5-55D47B21000A42F8-0AF89700;ngcpl
b=yes;socket=sip:10.15.20.185:5060>
> Via: SIP/2.0/WS
> 10.15.20.185;branch=z9hG4bKff7b.9a380c4ab4a0e16aa668c720112d6563.0 
> Via: SIP/2.0/UDP
> 127.0.0.1:5080;received=127.0.0.1;branch=z9hG4bKPphpgabv;rport=5080
>
> 
From: "43993006"
<sip:43993006 at 10.15.20.185>;tag=39D317C5-55D47B21000A42F8-0AF89700
> To: <sip:fdtqa215 at 10.15.20.185> CSeq: 10 INVITE Call-ID:
> 19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0 
> P-Asserted-Identity: <sip:43993006 at 10.15.20.185> Content-Type:
> application/sdp Content-Length: 1523 Contact:
> <sip:ngcp-lb at 10.15.20.185:5060;ngcpct=7369703a3132372e302e302e313a3530
3830>
>
>  v=0 o=43993006-jitsi.org 0 0 IN IP4 10.15.20.185 s=- c=IN IP4
> 10.15.20.185 t=0 0 m=audio 32054 UDP/TLS/RTP/SAVPF 8 0 101 
> a=rtpmap:8 PCMA/8000 a=rtpmap:0 PCMU/8000 a=rtpmap:101
> telephone-event/8000 a=rtcp-xr:voip-metrics a=direction:active 
> a=sendrecv a=rtcp:32055 a=crypto:1 AES_CM_128_HMAC_SHA1_80
> inline:90QOPGShbnx+hPspSF4SWg+gUUlvaShCRMmFiC6G a=setup:actpass 
> a=fingerprint:sha-1
> E9:D0:F1:1E:FC:95:4C:82:EE:E9:E6:AD:4C:07:5A:8C:79:35:3A:27 
> a=ice-ufrag:6m2mAuoU a=ice-pwd:jjJjXZMsRqOcYLx7EyHlQDVWXX 
> a=candidate:phnDQfBbKemsZ6TL 1 UDP 2130706431 10.15.20.185 32054
> typ host a=candidate:phnDQfBbKemsZ6TL 2 UDP 2130706430 10.15.20.185
> 32055 typ host m=video 32080 UDP/TLS/RTP/SAVPF 96 97 99 98 100 
> a=rtpmap:96 H263-1998/90000 a=fmtp:96
> CIF=1;QCIF=1;CUSTOM=3840,2160,2;VGA=2 a=rtpmap:97 H264/90000 
> a=fmtp:97 profile-level-id=4DE01f;packetization-mode=1 
> a=imageattr:97 send * recv [x=[0-3840],y=[0-2160]] a=rtpmap:99
> H264/90000 a=fmtp:99 profile-level-id=4DE01f a=imageattr:99 send *
> recv [x=[0-3840],y=[0-2160]] a=rtpmap:98 red/90000 a=rtpmap:100
> VP8/90000 a=direction:active a=recvonly a=rtcp:32081 a=crypto:1
> AES_CM_128_HMAC_SHA1_80
> inline:yaTuxZkSobmpwqOJI8PWXRVWfVjuPsg82avFZkjL a=setup:actpass 
> a=fingerprint:sha-1
> E9:D0:F1:1E:FC:95:4C:82:EE:E9:E6:AD:4C:07:5A:8C:79:35:3A:27 
> a=ice-ufrag:qFsJW91U a=ice-pwd:8Lm0b9a8UFfxbXQ2yLYvHh05Vq 
> a=candidate:phnDQfBbKemsZ6TL 1 UDP 2130706431 10.15.20.185 32080
> typ host a=candidate:phnDQfBbKemsZ6TL 2 UDP 2130706430 10.15.20.185
> 32081 typ host
> 
> 
> 
> rtcninja:RTCPeerConnection forced end of candidates after
> gatheringTimeout timeout +1s jssip.js (line 22451) JsSIP:Transport
> 
> 
> sending WebSocket message:
> 
> SIP/2.0 200 OK Record-Route:
> <sip:10.15.20.185;transport=ws;r2=on;lr=on;ftag=39D317C5-55D47B21000A4
2F8-0AF89700;ngcplb=yes;socket=sip:10.15.20.185:5060>
>
> 
Record-Route:
<sip:127.0.0.1;r2=on;lr=on;ftag=39D317C5-55D47B21000A42F8-0AF89700;ngcpl
b=yes;socket=sip:10.15.20.185:5060>
> Via: SIP/2.0/WS
> 10.15.20.185;branch=z9hG4bKff7b.9a380c4ab4a0e16aa668c720112d6563.0 
> Via: SIP/2.0/UDP
> 127.0.0.1:5080;received=127.0.0.1;branch=z9hG4bKPphpgabv;rport=5080
>
> 
To: <sip:fdtqa215 at 10.15.20.185>;tag=bqesvragea
> From: "43993006"
> <sip:43993006 at 10.15.20.185>;tag=39D317C5-55D47B21000A42F8-0AF89700 
> Call-ID: 19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0 CSeq: 10
> INVITE Contact: <sip:fdtqa215 at rf170grbesrc.invalid;transport=ws> 
> X-Can-Renegotiate: false Session-Expires: 90;refresher=uas 
> Supported: timer,ice,replaces,outbound Content-Type:
> application/sdp Content-Length: 3116
> 
> v=0 o=mozilla...THIS_IS_SDPARTA-40.0 5181698443043457132 0 IN IP4
> 0.0.0.0 s=- t=0 0 a=sendrecv a=fingerprint:sha-256
> 59:2E:49:B4:F4:E0:5A:7D:82:1F:6A:DA:8A:46:A9:21:ED:5B:EC:F2:AE:2C:87:6
3:3F:E3:6A:B0:C9:E5:B4:14
>
> 
a=ice-options:trickle
> a=msid-semantic:WMS * m=audio 9 UDP/TLS/RTP/SAVPF 8 c=IN IP4
> 0.0.0.0 a=candidate:0 1 UDP 2122252543 10.15.20.146 36669 typ host 
> a=candidate:2 1 UDP 2122187007 10.15.22.112 51403 typ host 
> a=candidate:4 1 UDP 2122121471 172.17.42.1 45261 typ host 
> a=candidate:6 1 UDP 2122055935 172.17.135.182 41247 typ host 
> a=candidate:0 2 UDP 2122252542 10.15.20.146 59448 typ host 
> a=candidate:2 2 UDP 2122187006 10.15.22.112 58831 typ host 
> a=candidate:4 2 UDP 2122121470 172.17.42.1 39445 typ host 
> a=candidate:6 2 UDP 2122055934 172.17.135.182 44129 typ host 
> a=candidate:1 1 UDP 1686110207 86.59.95.122 36669 typ srflx raddr
> 10.15.20.146 rport 36669 a=candidate:5 1 UDP 1685979135
> 86.59.95.122 45261 typ srflx raddr 172.17.42.1 rport 45261 
> a=candidate:7 1 UDP 1685913599 86.59.95.122 41247 typ srflx raddr
> 172.17.135.182 rport 41247 a=candidate:1 2 UDP 1686110206
> 86.59.95.122 59448 typ srflx raddr 10.15.20.146 rport 59448 
> a=candidate:5 2 UDP 1685979134 86.59.95.122 39445 typ srflx raddr
> 172.17.42.1 rport 39445 a=candidate:7 2 UDP 1685913598 86.59.95.122
> 44129 typ srflx raddr 172.17.135.182 rport 44129 a=sendrecv 
> a=ice-pwd:1b5e851f8e7576dc8327357d73dde720 a=ice-ufrag:4aed8e36 
> a=msid:{b4cc86e9-e948-451f-9289-00d75db1edfc}
> {43cefb32-d036-4fe5-b9e4-d435b67dbe67} a=rtpmap:8 PCMA/8000 
> a=setup:active a=ssrc:1005755770
> cname:{b9b16d44-f568-41f6-b35d-be0229c0c88f} m=video 9
> UDP/TLS/RTP/SAVPF 97 c=IN IP4 0.0.0.0 a=candidate:0 1 UDP
> 2122252543 10.15.20.146 42238 typ host a=candidate:2 1 UDP
> 2122187007 10.15.22.112 34924 typ host a=candidate:4 1 UDP
> 2122121471 172.17.42.1 36738 typ host a=candidate:6 1 UDP
> 2122055935 172.17.135.182 38024 typ host a=candidate:0 2 UDP
> 2122252542 10.15.20.146 33143 typ host a=candidate:2 2 UDP
> 2122187006 10.15.22.112 49944 typ host a=candidate:4 2 UDP
> 2122121470 172.17.42.1 42743 typ host a=candidate:6 2 UDP
> 2122055934 172.17.135.182 46911 typ host a=candidate:1 1 UDP
> 1686110207 86.59.95.122 42238 typ srflx raddr 10.15.20.146 rport
> 42238 a=candidate:5 1 UDP 1685979135 86.59.95.122 36738 typ srflx
> raddr 172.17.42.1 rport 36738 a=candidate:7 1 UDP 1685913599
> 86.59.95.122 38024 typ srflx raddr 172.17.135.182 rport 38024 
> a=candidate:1 2 UDP 1686110206 86.59.95.122 33143 typ srflx raddr
> 10.15.20.146 rport 33143 a=candidate:5 2 UDP 1685979134
> 86.59.95.122 42743 typ srflx raddr 172.17.42.1 rport 42743 
> a=candidate:7 2 UDP 1685913598 86.59.95.122 46911 typ srflx raddr
> 172.17.135.182 rport 46911 a=sendonly a=fmtp:97
> profile-level-id=42e01f;level-asymmetry-allowed=1;packetization-mode=1
>
> 
a=ice-pwd:1b5e851f8e7576dc8327357d73dde720
> a=ice-ufrag:4aed8e36 a=msid:{b4cc86e9-e948-451f-9289-00d75db1edfc}
> {c9708cac-9b3c-4744-86a2-eee326fb9d6d} a=rtcp-fb:97 nack 
> a=rtcp-fb:97 nack pli a=rtcp-fb:97 ccm fir a=rtpmap:97 H264/90000 
> a=setup:active a=ssrc:1100543733
> cname:{b9b16d44-f568-41f6-b35d-be0229c0c88f}
> 
> 
> Aug 19 14:50:57 sp1 rtpengine[6076]:
> [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0] Call branch
> 'adb1139a' deleted, no more branches remaining Aug 19 14:50:57 sp1
> rtpengine[6076]: [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0]
> Final packet stats: Aug 19 14:50:57 sp1 rtpengine[6076]:
> [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0] --- Tag
> '060D8629-55D47B21000A4274-0A882700', created 2:24 ago for branch
> 'z9hG4bK4118.9a2a6ec333ed58b6557f585dcdebf367.0', in dialogue with
> 'adb1139a' Aug 19 14:50:57 sp1 rtpengine[6076]:
> [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0] ------ Media #1
> (audio over UDP/TLS/RTP/SAVPF) using PCMA/8000 Aug 19 14:50:57 sp1
> rtpengine[6076]: [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0]
> --------- Port 32054 <>    10.15.20.146:36669, 5284 p, 959878 b, 0
> e, 1439988628 last_packet Aug 19 14:50:57 sp1 rtpengine[6076]:
> [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0] --------- Port
> 32055 <>    10.15.20.146:59448 (RTCP), 24 p, 2444 b, 0 e,
> 1439988627 last_packet Aug 19 14:50:57 sp1 rtpengine[6076]:
> [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0] ------ Media #2
> (video over UDP/TLS/RTP/SAVPF) using H264/90000 Aug 19 14:50:57 sp1
> rtpengine[6076]: [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0]
> --------- Port 32080 <>    10.15.20.146:42238, 5711 p, 3989782 b, 0
> e, 1439988627 last_packet Aug 19 14:50:57 sp1 rtpengine[6076]:
> [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0] --------- Port
> 32081 <>    10.15.20.146:33143 (RTCP), 114 p, 9092 b, 0 e,
> 1439988627 last_packet Aug 19 14:50:57 sp1 rtpengine[6076]:
> [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0] --- Tag
> 'adb1139a', created 2:24 ago for branch '', in dialogue with
> '060D8629-55D47B21000A4274-0A882700' Aug 19 14:50:57 sp1
> rtpengine[6076]: [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0]
> ------ Media #1 (audio over RTP/AVP) using PCMA/8000 Aug 19
> 14:50:57 sp1 rtpengine[6076]:
> [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0] --------- Port
> 32066 <>    10.15.20.146:5018 , 5300 p, 962884 b, 0 e, 1439988627
> last_packet Aug 19 14:50:57 sp1 rtpengine[6076]:
> [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0] --------- Port
> 32067 <>    10.15.20.146:5019  (RTCP), 21 p, 2394 b, 0 e,
> 1439988627 last_packet Aug 19 14:50:57 sp1 rtpengine[6076]:
> [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0] ------ Media #2
> (video over RTP/AVP) using unknown codec Aug 19 14:50:57 sp1
> rtpengine[6076]: [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0]
> --------- Port 32094 <>    10.15.20.146:5020 , 3 p, 0 b, 0 e,
> 1439988521 last_packet Aug 19 14:50:57 sp1 rtpengine[6076]:
> [19a63fbe55e9dfb9756b5ed08f8421c0 at 0:0:0:0:0:0:0:0] --------- Port
> 32095 <>    10.15.20.146:5021  (RTCP), 234 p, 4428 b, 0 e,
> 1439988626 last_packet

As you see the audio packets count is all OK, what concerns me a bit
though is "... using unknown codec" for video and one of the sides,
not sure if it's a real problem or limitation of codec detection.

Also when calling from firefox to jitsi - callee is receiving the
following SDP with video from the spce:
> v=0 o=mozilla...THIS_IS_SDPARTA-40.0 8397703290242474878 0 IN IP4
> 10.15.20.185 s=- t=0 0 a=msid-semantic:WMS * m=audio 32756 RTP/AVP
> 109 9 0 8 c=IN IP4 10.15.20.185 
> a=msid:{361e1941-f449-41de-b1f0-12befcc2935f}
> {05bff3b3-3880-4f2b-bcd6-211edca5abbf} a=rtpmap:109 opus/48000/2 
> a=rtpmap:9 G722/8000/1 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 
> a=ssrc:916474622 cname:{c7b7dc0a-03fc-4d83-acac-8196c1fecf14} 
> a=sendrecv a=rtcp:32757 a=ice-ufrag:xgRxSGHv 
> a=ice-pwd:YfHll267p1qNIpvopGLcS9app2 a=candidate:phnDQfBbKemsZ6TL 1
> UDP 2130706431 10.15.20.185 32756 typ host 
> a=candidate:phnDQfBbKemsZ6TL 2 UDP 2130706430 10.15.20.185 32757
> typ host m=video 32784 RTP/AVP 120 126 97 c=IN IP4 10.15.20.185 
> a=fmtp:120 max-fs=12288;max-fr=60 a=fmtp:126
> profile-level-id=42e01f;level-asymmetry-allowed=1;packetization-mode=1
>
> 
a=fmtp:97 profile-level-id=42e01f;level-asymmetry-allowed=1
> a=msid:{361e1941-f449-41de-b1f0-12befcc2935f}
> {f87a424d-2703-4377-9fd5-b21cd9bfa050} a=rtcp-fb:120 nack 
> a=rtcp-fb:120 nack pli a=rtcp-fb:120 ccm fir a=rtcp-fb:126 nack 
> a=rtcp-fb:126 nack pli a=rtcp-fb:126 ccm fir a=rtcp-fb:97 nack 
> a=rtcp-fb:97 nack pli a=rtcp-fb:97 ccm fir a=rtpmap:120 VP8/90000 
> a=rtpmap:126 H264/90000 a=rtpmap:97 H264/90000 a=ssrc:3299375652
> cname:{c7b7dc0a-03fc-4d83-acac-8196c1fecf14} a=sendrecv 
> a=rtcp:32785 a=ice-ufrag:6gL2ob4D 
> a=ice-pwd:Y5izNkESLpJo0Hc04XSHrk2wBN a=candidate:phnDQfBbKemsZ6TL 1
> UDP 2130706431 10.15.20.185 32784 typ host 
> a=candidate:phnDQfBbKemsZ6TL 2 UDP 2130706430 10.15.20.185 32785
> typ host

I'm going to make some more tests using chrome and another computer,
because this one has some issues with the webcam that have been
causing blank screen in the past.

BR,
Andrew
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)

iF4EAREIAAYFAlXUgQUACgkQdegZtfziaKPebgD+NIRpOzcf3AAwSeP1+2DcWws+
ubLBGH6PL8z06tcHVn4A/1aEQtKTO3sXCcGcOngsOWUE+Vk5dcj1aHKBC7nZj3ZS
=vgzY
-----END PGP SIGNATURE-----



More information about the Spce-user mailing list