Thank you
Michael,
I understand, so isn't it possible to have SDP with
m=audio lines SAVPF, SAVP and AVP all together ?
Because I set media_webrtc=true, AVP and SAVP lines are
replaced with SAVPF.
If I had all three m=audio proto lines I was able to
manage it with Kamailio.
And back to my first question, is that possible to set
different ports for m=audio lines in SDP ?
Jan
On 31.05.2016 17:16,
Michael Jerris wrote:
If you don't use some other engine to handle webrtc,
then if you are calling something that is registered
to you over websockets it will automatically enable
media_webrtc for you. Otherwise you'll need some
external way of knowing if the endpoint is webrtc or
not so you can apply the settings properly.
Hello,
My freeswitch's INVITE sdp offers two
m=audio lines. (RTP/SAVP and RTP/AVP).
That's OK, because I want it so ;)
But both use the same audio port number.
Is that possible to change this behavior ?
To use different audio port numbers for each
m=audio line ...
Please check my example below. In SDP from
my freeswitch, both m-lines have m=audio 22284.
The reason, why I want to change this is
WebRTC and RTPengine. RTPengine changes this
INVITEs to RTP/SAVPF.
And the changed RTP/SAVPF is then not
acceptable for chrome browsers. Firefox
works well (so far).
I already reported this to the RTPengine but
they say the problem is with INVITE from
freeswitch because the m-audio lines use the
same port.
My example :
incoming calls -> Media Server
(freeswitch) -> Kamailio (sip and
websocket proxy) -> WebRTP and SIP
clients
I have found a feature media_webrtc=true
so I could avoid using rtpengine for webrtc
clients (that would be really awesome), but
then classic sip clients are offered only
with RTP/SAVPF and most sip phones do not
know RTP/SAVPF so the calls are rejected :(
INVITE SDP from freeswitch:
v=0.
o=SBC 1464589775 1464589776 IN IP4
<freeswitch-public-ip>.
s=SBC.
c=IN IP4 <freeswitch-public-ip>.
t=0 0.
m=audio 22284 RTP/SAVP 8 0 9 3
18.
a=rtpmap:8 PCMA/8000.
a=rtpmap:0 PCMU/8000.
a=rtpmap:9 G722/8000.
a=rtpmap:3 GSM/8000.
a=rtpmap:18 G729/8000.
a=rtcp:22285 IN IP4
<freeswitch-public-ip>.
a=crypto:1 AEAD_AES_256_GCM_8
inline:Q/O+iUzZ9AZLcrADA7w/XcpkmuW6yArr1vsaWc0coTyWUIRLX2qfCA7XDAs.
a=crypto:2 AEAD_AES_128_GCM_8
inline:mBb/SmBuSQNSm8lC5giUfZMCv0ZYINvsQiX2sw.
a=crypto:3 AES_CM_256_HMAC_SHA1_80
inline:ahOTNSsdmHLIOBqvUyGyNjd+gDfAE/+jA6w7XwzGWxBMjtzf5akXNvM/OGy0jQ.
a=crypto:4 AES_CM_192_HMAC_SHA1_80
inline:k7002pXV/SUT7JHhZTYaMV5keUTp1EP57M4rcNZnAoZZzsceTXA.
a=crypto:5 AES_CM_128_HMAC_SHA1_80
inline:bHcV4E/OnzMkNeaFplPWt4RELILYZeGlifnJNlRV.
a=crypto:6 AES_CM_256_HMAC_SHA1_32
inline:zJkowU1tc5rQR5BPpg2m3eE97ZqXLFFJc1Agh89XuZynPFMrXhO266+eMZCd2A.
a=crypto:7 AES_CM_192_HMAC_SHA1_32
inline:2DwGI3UAPsLFBS5sJBsc+pzEsITQwDHCvB0u7pK/XEE3G8swsrw.
a=crypto:8 AES_CM_128_HMAC_SHA1_32
inline:Jen6Gm56Z+4RTRmfpXTpSpoG5bduyythl1j21a15.
a=crypto:9 AES_CM_128_NULL_AUTH
inline:Nn83liGQY7eY8LGs9qz/7EoPiHOpRgwY8H7Ts/b5.
a=ptime:20.
m=audio 22284 RTP/AVP 8 0 9 3
18.
a=rtpmap:8 PCMA/8000.
a=rtpmap:0 PCMU/8000.
a=rtpmap:9 G722/8000.
a=rtpmap:3 GSM/8000.
a=rtpmap:18 G729/8000.
a=rtcp:22285 IN IP4
<freeswitch-public-ip>.
a=ptime:20.
INVITE SDP from RTPengine :
v=0
o=SBC 1464589775 1464589776 IN IP4
212.232.17.66
s=SBC
c=IN IP4 <rtpengine-public-ip>
t=0 0
m=audio 31836 RTP/SAVPF 8 0 9 3
18
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:9 G722/8000
a=rtpmap:3 GSM/8000
a=rtpmap:18 G729/8000
a=ptime:20
a=sendrecv
a=rtcp:31837
a=setup:actpass
a=fingerprint:sha-1
11:76:2D:2A:F7:0D:5A:23:9D:F6:0C:E7:4C:DF:1E:CB:BF:5D:76:4F
a=ice-ufrag:NauDcjVU
a=ice-pwd:AiHk6LF4tE0GElyFMWtLeod1wH
a=candidate:cE0FGbXWIfwj6OGD 1 UDP
2130706431 <rtpengine-public-ip> 31836
typ host
a=candidate:cE0FGbXWIfwj6OGD 2 UDP
2130706430 <rtpengine-public-ip> 31837
typ host
m=audio 31866 RTP/SAVPF 8 0 9 3
18
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:9 G722/8000
a=rtpmap:3 GSM/8000
a=rtpmap:18 G729/8000
a=ptime:20
a=sendrecv
a=rtcp:31867
a=setup:actpass
a=fingerprint:sha-1
11:76:2D:2A:F7:0D:5A:23:9D:F6:0C:E7:4C:DF:1E:CB:BF:5D:76:4F
a=ice-ufrag:YxCyPhQV
a=ice-pwd:2vYt8YaMhIp2DSLPeYOKDqqBX0
a=candidate:cE0FGbXWIfwj6OGD 1 UDP
2130706431 <rtpengine-public-ip> 31866
typ host
a=candidate:cE0FGbXWIfwj6OGD 2 UDP
2130706430 <rtpengine-public-ip> 31867
typ host