<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">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.<div class=""><br class=""></div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On May 31, 2016, at 12:07 PM, Ján Füri <<a href="mailto:furi@vmtele.com" class="">furi@vmtele.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class="">
<meta content="text/html; charset=windows-1252" http-equiv="Content-Type" class="">
<div text="#000000" bgcolor="#FFFFFF" class="">
Thank you Michael, <br class="">
I understand, so isn't it possible to have SDP with m=audio lines
SAVPF, SAVP and AVP all together ?<br class="">
Because I set media_webrtc=true, AVP and SAVP lines are replaced
with SAVPF.<br class="">
If I had all three m=audio proto lines I was able to manage it with
Kamailio.<br class="">
<br class="">
And back to my first question, is that possible to set different
ports for m=audio lines in SDP ?<br class="">
<br class="">
Jan<br class="">
<br class="">
<div class="moz-cite-prefix">On 31.05.2016 17:16, Michael Jerris
wrote:<br class="">
</div>
<blockquote cite="mid:4FA45CD4-80AC-4CBD-BBA9-426953BD7390@jerris.com" type="cite" class="">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252" class="">
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.
<div class=""><br class="">
</div>
<div class=""><br class="">
<div class="">
<blockquote type="cite" class="">
<div class="">On May 30, 2016, at 9:14 AM, Ján Füri <<a moz-do-not-send="true" href="mailto:furi@vmtele.com" class=""></a><a class="moz-txt-link-abbreviated" href="mailto:furi@vmtele.com">furi@vmtele.com</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<meta http-equiv="content-type" content="text/html;
charset=windows-1252" class="">
<div text="#000000" bgcolor="#FFFFFF" class=""> Hello, <br class="">
<br class="">
My freeswitch's INVITE sdp offers two m=audio lines.
(RTP/SAVP and RTP/AVP). <br class="">
That's OK, because I want it so ;)<br class="">
<br class="">
But both use the same audio port number. <br class="">
Is that possible to change this behavior ? To use
different audio port numbers for each m=audio line ...<br class="">
Please check my example below. In SDP from my
freeswitch, both m-lines have <b class="">m=audio </b><b class="">22284</b>.<br class="">
<br class="">
The reason, why I want to change this is WebRTC and
RTPengine. RTPengine changes this INVITEs to RTP/SAVPF.<br class="">
And the changed RTP/SAVPF is then not acceptable for
chrome browsers. Firefox works well (so far).<br class="">
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.<br class="">
<br class="">
My example :<br class="">
incoming calls -> Media Server (freeswitch) ->
Kamailio (sip and websocket proxy) -> WebRTP and SIP
clients <br class="">
<br class="">
I have found a feature <b class="">media_webrtc=true</b>
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
:(<br class="">
<br class="">
<br class="">
INVITE SDP from freeswitch: <br class="">
<br class="">
v=0.<br class="">
o=SBC 1464589775 1464589776 IN IP4
<freeswitch-public-ip>.<br class="">
s=SBC.<br class="">
c=IN IP4 <freeswitch-public-ip>.<br class="">
t=0 0.<br class="">
<b class="">m=audio 22284 RTP/SAVP 8 0 9 3 18.</b><br class="">
a=rtpmap:8 PCMA/8000.<br class="">
a=rtpmap:0 PCMU/8000.<br class="">
a=rtpmap:9 G722/8000.<br class="">
a=rtpmap:3 GSM/8000.<br class="">
a=rtpmap:18 G729/8000.<br class="">
a=rtcp:22285 IN IP4 <freeswitch-public-ip>.<br class="">
a=crypto:1 AEAD_AES_256_GCM_8
inline:Q/O+iUzZ9AZLcrADA7w/XcpkmuW6yArr1vsaWc0coTyWUIRLX2qfCA7XDAs.<br class="">
a=crypto:2 AEAD_AES_128_GCM_8
inline:mBb/SmBuSQNSm8lC5giUfZMCv0ZYINvsQiX2sw.<br class="">
a=crypto:3 AES_CM_256_HMAC_SHA1_80
inline:ahOTNSsdmHLIOBqvUyGyNjd+gDfAE/+jA6w7XwzGWxBMjtzf5akXNvM/OGy0jQ.<br class="">
a=crypto:4 AES_CM_192_HMAC_SHA1_80
inline:k7002pXV/SUT7JHhZTYaMV5keUTp1EP57M4rcNZnAoZZzsceTXA.<br class="">
a=crypto:5 AES_CM_128_HMAC_SHA1_80
inline:bHcV4E/OnzMkNeaFplPWt4RELILYZeGlifnJNlRV.<br class="">
a=crypto:6 AES_CM_256_HMAC_SHA1_32
inline:zJkowU1tc5rQR5BPpg2m3eE97ZqXLFFJc1Agh89XuZynPFMrXhO266+eMZCd2A.<br class="">
a=crypto:7 AES_CM_192_HMAC_SHA1_32
inline:2DwGI3UAPsLFBS5sJBsc+pzEsITQwDHCvB0u7pK/XEE3G8swsrw.<br class="">
a=crypto:8 AES_CM_128_HMAC_SHA1_32
inline:Jen6Gm56Z+4RTRmfpXTpSpoG5bduyythl1j21a15.<br class="">
a=crypto:9 AES_CM_128_NULL_AUTH
inline:Nn83liGQY7eY8LGs9qz/7EoPiHOpRgwY8H7Ts/b5.<br class="">
a=ptime:20.<br class="">
<b class="">m=audio 22284 RTP/AVP 8 0 9 3 18.</b><br class="">
a=rtpmap:8 PCMA/8000.<br class="">
a=rtpmap:0 PCMU/8000.<br class="">
a=rtpmap:9 G722/8000.<br class="">
a=rtpmap:3 GSM/8000.<br class="">
a=rtpmap:18 G729/8000.<br class="">
a=rtcp:22285 IN IP4 <freeswitch-public-ip>.<br class="">
a=ptime:20.<br class="">
<br class="">
<br class="">
<br class="">
<br class="">
INVITE SDP from RTPengine :<br class="">
<br class="">
v=0<br class="">
o=SBC 1464589775 1464589776 IN IP4 212.232.17.66<br class="">
s=SBC<br class="">
c=IN IP4 <rtpengine-public-ip><br class="">
t=0 0<br class="">
<b class="">m=audio 31836 RTP/SAVPF 8 0 9 3 18</b><br class="">
a=rtpmap:8 PCMA/8000<br class="">
a=rtpmap:0 PCMU/8000<br class="">
a=rtpmap:9 G722/8000<br class="">
a=rtpmap:3 GSM/8000<br class="">
a=rtpmap:18 G729/8000<br class="">
a=ptime:20<br class="">
a=sendrecv<br class="">
a=rtcp:31837<br class="">
a=setup:actpass<br class="">
a=fingerprint:sha-1
11:76:2D:2A:F7:0D:5A:23:9D:F6:0C:E7:4C:DF:1E:CB:BF:5D:76:4F<br class="">
a=ice-ufrag:NauDcjVU<br class="">
a=ice-pwd:AiHk6LF4tE0GElyFMWtLeod1wH<br class="">
a=candidate:cE0FGbXWIfwj6OGD 1 UDP 2130706431
<rtpengine-public-ip> 31836 typ host<br class="">
a=candidate:cE0FGbXWIfwj6OGD 2 UDP 2130706430
<rtpengine-public-ip> 31837 typ host<br class="">
<b class="">m=audio 31866 RTP/SAVPF 8 0 9 3 18</b><br class="">
a=rtpmap:8 PCMA/8000<br class="">
a=rtpmap:0 PCMU/8000<br class="">
a=rtpmap:9 G722/8000<br class="">
a=rtpmap:3 GSM/8000<br class="">
a=rtpmap:18 G729/8000<br class="">
a=ptime:20<br class="">
a=sendrecv<br class="">
a=rtcp:31867<br class="">
a=setup:actpass<br class="">
a=fingerprint:sha-1
11:76:2D:2A:F7:0D:5A:23:9D:F6:0C:E7:4C:DF:1E:CB:BF:5D:76:4F<br class="">
a=ice-ufrag:YxCyPhQV<br class="">
a=ice-pwd:2vYt8YaMhIp2DSLPeYOKDqqBX0<br class="">
a=candidate:cE0FGbXWIfwj6OGD 1 UDP 2130706431
<rtpengine-public-ip> 31866 typ host<br class="">
a=candidate:cE0FGbXWIfwj6OGD 2 UDP 2130706430
<rtpengine-public-ip> 31867 typ host<br class="">
<br class="">
</div>
</div>
</blockquote>
</div>
</div></blockquote></div></div></blockquote></div><br class=""></div></body></html>