<html><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px"><div id="yui_3_16_0_1_1433228428777_52424"><span>Hi Emrah,</span></div><div id="yui_3_16_0_1_1433228428777_52424"><span><br></span></div><div id="yui_3_16_0_1_1433228428777_52424">Currently in the mod_opus module there are only instances at 48 khz and 8 khz.<br></div><div id="yui_3_16_0_1_1433228428777_52424">Actually Freeswitch should respect what the remote client is telling it in the fmtp.</div><div id="yui_3_16_0_1_1433228428777_52424">I am working on a patch that makes use of the the remote fmtp sprop-maxcapturerate (and this would happen per call).<br></div><div id="yui_3_16_0_1_1433228428777_52424"><br></div><div id="yui_3_16_0_1_1433228428777_52424">If you don't want to resample inside FS (consumes CPU) , set your clients to send at the proper sample rate (eg: 8000 to sample narrowband audio) , and use "opus@8000h" as codec string in the dialplan if you do transcoding to a 8000 hz codec.</div><div id="yui_3_16_0_1_1433228428777_52424">&nbsp;</div><div id="yui_3_16_0_1_1433228428777_52424">Regards,</div><div id="yui_3_16_0_1_1433228428777_52424">Dragos</div><div id="yui_3_16_0_1_1433228428777_52424"><br></div><br>  <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 16px;" id="yui_3_16_0_1_1433228428777_52417"> <div style="font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; font-size: 16px;" id="yui_3_16_0_1_1433228428777_52416"> <div dir="ltr" id="yui_3_16_0_1_1433228428777_52422"> <hr size="1" id="yui_3_16_0_1_1433228428777_52433">  <font size="2" face="Arial" id="yui_3_16_0_1_1433228428777_53352"> <b><span style="font-weight:bold;">From:</span></b> Emrah &lt;lists@kavun.ch&gt;<br> <b><span style="font-weight: bold;">To:</span></b> FreeSWITCH Users Help &lt;freeswitch-users@lists.freeswitch.org&gt; <br> <b><span style="font-weight: bold;">Sent:</span></b> Tuesday, June 2, 2015 6:23 AM<br> <b><span style="font-weight: bold;">Subject:</span></b> Re: [Freeswitch-users] FS6947 - Tuning Opus bandwidth<br> </font> </div> <div class="y_msg_container" id="yui_3_16_0_1_1433228428777_52415"><br><div id="yiv3694565655"><div id="yui_3_16_0_1_1433228428777_52414">Hi there,<div class="yiv3694565655" id="yui_3_16_0_1_1433228428777_52420">@Mike: yes, but in a commonsensical approach the Opus library on the client's side would resample and therefore optimize the codec and the bandwidth accordingly up to FS.</div><div class="yiv3694565655" id="yui_3_16_0_1_1433228428777_52418">@Julien, I saw the setting for Opus globally, but it defeats the purpose. I don't want to limit the bandwidth of Opus for all instances. I'd like to optimize Opus on a per call basis.</div><div class="yiv3694565655" id="yui_3_16_0_1_1433228428777_52413"><br class="yiv3694565655"></div><div class="yiv3694565655" id="yui_3_16_0_1_1433228428777_52580">Thanks for the replies<br class="yiv3694565655"><div id="yui_3_16_0_1_1433228428777_52579"><blockquote type="cite" class="yiv3694565655" id="yui_3_16_0_1_1433228428777_52578"><div class="yiv3694565655" id="yui_3_16_0_1_1433228428777_53354">On May 31, 2015, at 2:13 PM, Michael Jerris &lt;<a rel="nofollow" ymailto="mailto:mike@jerris.com" target="_blank" class="yiv3694565655 removed-link" href="">mike@jerris.com</a>&gt; wrote:</div><br class="yiv3694565655Apple-interchange-newline"><div class="yiv3694565655" id="yui_3_16_0_1_1433228428777_52577">Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH.<span class="yiv3694565655"></span><br class="yiv3694565655"><br class="yiv3694565655">On Sunday, May 31, 2015, Julien Chavanton &lt;<a rel="nofollow" ymailto="mailto:jchavanton@gmail.com" target="_blank" class="yiv3694565655 removed-link" href="">jchavanton@gmail.com</a>&gt; wrote:<br class="yiv3694565655"><blockquote class="yiv3694565655gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;" id="yui_3_16_0_1_1433228428777_52576"><div dir="ltr" class="yiv3694565655" id="yui_3_16_0_1_1433228428777_52575">Hi Emrah,<br class="yiv3694565655"><div class="yiv3694565655" id="yui_3_16_0_1_1433228428777_52583"><br class="yiv3694565655">The settings exist but they are not available from the <span class="yiv3694565655">dialplan</span>, right now they can only be set globally .<br class="yiv3694565655">https://<span class="yiv3694565655" id="yui_3_16_0_1_1433228428777_53357">freeswitch</span>.org/confluence/display/<span class="yiv3694565655">FREESWITCH</span>/mod_opus<br class="yiv3694565655"><br class="yiv3694565655">You can control the bandwidth using <span class="yiv3694565655" id="yui_3_16_0_1_1433228428777_52582">maxplaybackrate</span> and <span class="yiv3694565655">maxplaybackrate</span> this will control the local encoder and also adds the corresponding <span class="yiv3694565655">FMTP</span> parameters to the <span class="yiv3694565655">SDP</span> to be used by the remote encoder (if it does implement the following draft, the draft is evolving but I think it as not changed)<br class="yiv3694565655"><br class="yiv3694565655"><a rel="nofollow" target="_blank" class="yiv3694565655 removed-link" href="">https://tools</a>.<span class="yiv3694565655">ietf</span>.org/html/draft-<span class="yiv3694565655">ietf</span>-payload-<span class="yiv3694565655">rtp</span>-opus-11<br class="yiv3694565655"><br class="yiv3694565655">Maybe something like :<br class="yiv3694565655"><br class="yiv3694565655"><span class="yiv3694565655">maxaveragebitrate</span> 24000<br class="yiv3694565655"><span class="yiv3694565655">maxplaybackrate</span> 8000<br class="yiv3694565655"><br class="yiv3694565655">The discussion was getting slightly more complicated when we where discussing about unnecessary <span class="yiv3694565655">resampling</span> this was not a problem but it was just adding extra load on the server.<br class="yiv3694565655"></div></div><div class="yiv3694565655gmail_extra"><br class="yiv3694565655"><div class="yiv3694565655gmail_quote">On Sun, May 31, 2015 at 6:09 AM, Emrah <span dir="ltr" class="yiv3694565655">&lt;<a rel="nofollow" class="yiv3694565655 removed-link" href="">lists@kavun.ch</a>&gt;</span> wrote:<br class="yiv3694565655"><blockquote class="yiv3694565655gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Hi list,<br class="yiv3694565655">
<br class="yiv3694565655">
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed.<br class="yiv3694565655">
The scope is simple. There should be a setting in the dialplan that allows downsampling of Opus for applications that do not require the 48khz / 2 channels framework. I.e.: terminating to the PSTN with Opus to take advantage of low bandwidth and great PLC.<br class="yiv3694565655">
There seems to be a lot of confusion around bandwidth in general there. It doesn't matter if the internal clock of the device is always sampling at 48khz / 2ch. There are settings that can facilitate a lower bandwidth consumption for particular use cases, and it seems the reason it is not being implemented in FS is just a matter of being confused about the intent of the 48khz 2ch base.<br class="yiv3694565655">
Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases.<br class="yiv3694565655">
If I'm calling the PSTN, I'd rather have my client downsample and stream at a lower bandwidth, even if my audio capture would still be at 48khz / 2ch as per the RFC, and save on bandwidth, than transcode the full 48khz spectrum into PCM on my FS and minimize processing power on the client's side.<br class="yiv3694565655">
<br class="yiv3694565655">
Jira here: <a rel="nofollow" target="_blank" class="yiv3694565655 removed-link" href="">https://freeswitch.org/jira/browse/FS-6947</a><br class="yiv3694565655">
<br class="yiv3694565655">
Emrah<br class="yiv3694565655">
_________________________________________________________________________<br class="yiv3694565655">
Professional FreeSWITCH Consulting Services:<br class="yiv3694565655">
<a rel="nofollow" class="yiv3694565655 removed-link" href="">consulting@freeswitch.org</a><br class="yiv3694565655">
<a rel="nofollow" target="_blank" class="yiv3694565655 removed-link" href="">http://www.freeswitchsolutions.com</a><br class="yiv3694565655">
<br class="yiv3694565655">
Official FreeSWITCH Sites<br class="yiv3694565655">
<a rel="nofollow" target="_blank" class="yiv3694565655 removed-link" href="">http://www.freeswitch.org</a><br class="yiv3694565655">
<a rel="nofollow" target="_blank" class="yiv3694565655 removed-link" href="">http://confluence.freeswitch.org</a><br class="yiv3694565655">
<a rel="nofollow" target="_blank" class="yiv3694565655 removed-link" href="">http://www.cluecon.com</a><br class="yiv3694565655">
<br class="yiv3694565655">
FreeSWITCH-users mailing list<br class="yiv3694565655">
<a rel="nofollow" class="yiv3694565655 removed-link" href="">FreeSWITCH-users@lists.freeswitch.org</a><br class="yiv3694565655">
<a rel="nofollow" target="_blank" class="yiv3694565655 removed-link" href="">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br class="yiv3694565655">
UNSUBSCRIBE:<a rel="nofollow" target="_blank" class="yiv3694565655 removed-link" href="">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br class="yiv3694565655">
<a rel="nofollow" target="_blank" class="yiv3694565655 removed-link" href="">http://www.freeswitch.org</a><br class="yiv3694565655">
</blockquote></div><br class="yiv3694565655"></div>
</blockquote>
_________________________________________________________________________<br class="yiv3694565655">Professional FreeSWITCH Consulting Services: <br class="yiv3694565655"><a rel="nofollow" ymailto="mailto:consulting@freeswitch.org" target="_blank" class="yiv3694565655 removed-link" href="">consulting@freeswitch.org</a><br class="yiv3694565655">http://www.freeswitchsolutions.com<br class="yiv3694565655"><br class="yiv3694565655">Official FreeSWITCH Sites<br class="yiv3694565655">http://www.freeswitch.org<br class="yiv3694565655">http://confluence.freeswitch.org<br class="yiv3694565655">http://www.cluecon.com<br class="yiv3694565655"><br class="yiv3694565655">FreeSWITCH-users mailing list<br class="yiv3694565655">FreeSWITCH-users@lists.freeswitch.org<br class="yiv3694565655">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users<br class="yiv3694565655">UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users<br class="yiv3694565655">http://www.freeswitch.org</div></blockquote></div><br class="yiv3694565655"></div></div></div><br>_________________________________________________________________________<br>Professional FreeSWITCH Consulting Services: <br><a ymailto="mailto:consulting@freeswitch.org" class="removed-link" href="">consulting@freeswitch.org</a><br><a target="_blank" class="removed-link" href="">http://www.freeswitchsolutions.com</a><br><br>Official FreeSWITCH Sites<br><a target="_blank" class="removed-link" href="">http://www.freeswitch.org</a><br><a target="_blank" class="removed-link" href="">http://confluence.freeswitch.org</a><br><a target="_blank" class="removed-link" href="">http://www.cluecon.com</a><br><br>FreeSWITCH-users mailing list<br><a ymailto="mailto:FreeSWITCH-users@lists.freeswitch.org" class="removed-link" href="">FreeSWITCH-users@lists.freeswitch.org</a><br><a target="_blank" class="removed-link" href="">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>UNSUBSCRIBE:<a target="_blank" class="removed-link" href="">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br><a target="_blank" class="removed-link" href="">http://www.freeswitch.org</a><br><br></div> </div> </div>  </div></body></html>