[Freeswitch-users] SDP with double m=audio lines and with the same port

Michael Jerris mike at jerris.com
Tue May 31 21:27:48 MSD 2016


Yes, I already said the most trivial way to do it.  Send webrtc traffic and registers to freeswitch directly on websockets, or if not, dynamically generate dialplan to send invites to webrtc hosts with that variable.


> On May 31, 2016, at 1:04 PM, Ján Füri <furi at vmtele.com> wrote:
> 
> I asked anybody whether there is a way how to achieve my goal. Somebody that is more skilled than I am.
> I was asking if there are "trivially easy ways to accomplish my goal". Freeswitch is an awesome software, I like it very much, but replacing kamailio with freeswitch is not a solution for me (in our environment).
> 
> 
> On 31.05.2016 18:28, Michael Jerris wrote:
>> Its all software, anything is possible with enough code modification.  We don't have a setting to do those things right now, as it doesn't make any sense when there are trivially easy ways to accomplish the same goal without writing any more code.
>> 
>> 
>>> On May 31, 2016, at 12:07 PM, Ján Füri < <mailto:furi at vmtele.com>furi at vmtele.com <mailto:furi at vmtele.com>> wrote:
>>> 
>>> 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.
>>>> 
>>>> 
>>>>> On May 30, 2016, at 9:14 AM, Ján Füri <furi at vmtele.com <mailto:furi at vmtele.com>> wrote:
>>>>> 
>>>>> 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
>>>>> 
>> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20160531/a730e285/attachment.html 


Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users mailing list