Hi list, I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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. Jira here: https://freeswitch.org/jira/browse/FS-6947 Emrah
Hi Emrah, The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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) https://tools.ietf.org/html/draft-ietf-payload-rtp-opus-11 Maybe something like : maxaveragebitrate 24000 maxplaybackrate 8000 The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server. On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch> wrote:
Hi list,
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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.
Jira here: https://freeswitch.org/jira/browse/FS-6947
Emrah _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH. On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com> wrote:
Hi Emrah,
The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus
You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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)
https://tools.ietf.org/html/draft-ietf-payload-rtp-opus-11
Maybe something like :
maxaveragebitrate 24000 maxplaybackrate 8000
The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server.
On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch <javascript:_e(%7B%7D,'cvml','lists@kavun.ch');>> wrote:
Hi list,
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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.
Jira here: https://freeswitch.org/jira/browse/FS-6947
Emrah _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <javascript:_e(%7B%7D,'cvml','consulting@freeswitch.org');> http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@lists.freeswitch.org');> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Hi there, @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. @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. Thanks for the replies
On May 31, 2015, at 2:13 PM, Michael Jerris <mike@jerris.com> wrote:
Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH.
On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com <mailto:jchavanton@gmail.com>> wrote: Hi Emrah,
The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus
You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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)
https://tools <https://tools/>.ietf.org/html/draft-ietf-payload-rtp-opus-11
Maybe something like :
maxaveragebitrate 24000 maxplaybackrate 8000
The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server.
On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch <javascript:_e(%7B%7D,'cvml','lists@kavun.ch');>> wrote: Hi list,
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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.
Jira here: https://freeswitch.org/jira/browse/FS-6947 <https://freeswitch.org/jira/browse/FS-6947>
Emrah _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <javascript:_e(%7B%7D,'cvml','consulting@freeswitch.org');> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@lists.freeswitch.org');> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Hi Emrah, Currently in the mod_opus module there are only instances at 48 khz and 8 khz. Actually Freeswitch should respect what the remote client is telling it in the fmtp.I am working on a patch that makes use of the the remote fmtp sprop-maxcapturerate (and this would happen per call). 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. Regards,Dragos From: Emrah <lists@kavun.ch> To: FreeSWITCH Users Help <freeswitch-users@lists.freeswitch.org> Sent: Tuesday, June 2, 2015 6:23 AM Subject: Re: [Freeswitch-users] FS6947 - Tuning Opus bandwidth Hi there,@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.@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. Thanks for the replies On May 31, 2015, at 2:13 PM, Michael Jerris <mike@jerris.com> wrote: Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH. On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com> wrote: Hi Emrah, The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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) https://tools.ietf.org/html/draft-ietf-payload-rtp-opus-11 Maybe something like : maxaveragebitrate 24000 maxplaybackrate 8000 The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server. On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch> wrote: Hi list, I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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. Jira here: https://freeswitch.org/jira/browse/FS-6947 Emrah _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Hi there, Revisiting this issue. I see that I can set my Opus codec with Opus@8000@20i, but 8khz seems to be the only alternative profile I can use. I see only 2 extreme options when the module is loaded or unloaded that it's either 48khz, mono or stereo and packet size, or 8khz, mono or stereo and packet size. Can someone clarify why there is nothing in between? And what exactly this setting does? Opus@8000h@20i definitely doesn't sound very good. I'd rather have a compromise for tough network conditions. Since these are parameters I can dynamically set on my dialplan, the question then becomes why can't I fully manipulate my Opus stack from the dialplan? Thanks!
On Jun 2, 2015, at 6:23 AM, Emrah <lists@kavun.ch> wrote:
Hi there, @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. @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.
Thanks for the replies
On May 31, 2015, at 2:13 PM, Michael Jerris <mike@jerris.com <mailto:mike@jerris.com>> wrote:
Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH.
On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com <mailto:jchavanton@gmail.com>> wrote: Hi Emrah,
The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus
You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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)
https://tools <https://tools/>.ietf.org/html/draft-ietf-payload-rtp-opus-11
Maybe something like :
maxaveragebitrate 24000 maxplaybackrate 8000
The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server.
On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch <javascript:_e(%7B%7D,'cvml','lists@kavun.ch');>> wrote: Hi list,
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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.
Jira here: https://freeswitch.org/jira/browse/FS-6947 <https://freeswitch.org/jira/browse/FS-6947>
Emrah _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <javascript:_e(%7B%7D,'cvml','consulting@freeswitch.org');> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@lists.freeswitch.org');> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Hi Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ? You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml . FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added. But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway . The decoder should decode at any sample rate. We're working on a document (sort of manual) for the Opus module and hopefully it will be released soon. As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful. We needed opus@8000hz for transcoding and I tried to explain some things here (see my comment at the bottom of the page ): https://freeswitch.org/confluence/display/FREESWITCH/mod_opus Basically if you do heavy transcoding to PCMA / PCMU which is 8000 hz you'll want to avoid resampling 48 khz <-> 8 khz - we did tests and by avoiding resampling we were saving 20-30 % CPU . Regards, Dragos On 14/10/2016 14:02, Emrah wrote:
Hi there, Revisiting this issue. I see that I can set my Opus codec with Opus@8000@20i, but 8khz seems to be the only alternative profile I can use. I see only 2 extreme options when the module is loaded or unloaded that it's either 48khz, mono or stereo and packet size, or 8khz, mono or stereo and packet size. Can someone clarify why there is nothing in between? And what exactly this setting does? Opus@8000h@20i definitely doesn't sound very good. I'd rather have a compromise for tough network conditions. Since these are parameters I can dynamically set on my dialplan, the question then becomes why can't I fully manipulate my Opus stack from the dialplan?
Thanks!
On Jun 2, 2015, at 6:23 AM, Emrah <lists@kavun.ch <mailto:lists@kavun.ch>> wrote:
Hi there, @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. @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.
Thanks for the replies
On May 31, 2015, at 2:13 PM, Michael Jerris <mike@jerris.com <mailto:mike@jerris.com>> wrote:
Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH.
On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com <mailto:jchavanton@gmail.com>> wrote:
Hi Emrah,
The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus
You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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)
https://tools <https://tools/>.ietf.org/html/draft-ietf-payload-rtp-opus-11
Maybe something like :
maxaveragebitrate 24000 maxplaybackrate 8000
The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server.
On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch <javascript:_e(%7B%7D,'cvml','lists@kavun.ch');>> wrote:
Hi list,
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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.
Jira here: https://freeswitch.org/jira/browse/FS-6947
Emrah _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <javascript:_e(%7B%7D,'cvml','consulting@freeswitch.org');> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@lists.freeswitch.org');> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org <http://www.freeswitch.org/>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Hey there, Thanks for this extensive response. I am not sure I got everything, but I'll try to answer what I can.
Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ? Opus at 8khz doesn't give you the same fidelity as PCM at 8khz. You definitely hear the compression. However, Opus at 48khz transcoded into PCMU / PCMA is hardly noticeable. Therefore, I wanted to find a decent compromise, one that would save bandwidth and CPU for calls that don't require a full band audio.
You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml . That sounds very interesting, however I do not want to impose global limitations as many of my Opus calls are full band calls. Would these settings help me work on a per call basis?
FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added. I guess this reconnects with my observation above. The idea would be to use something slightly higher than 8khz, yet not as intensive as 48khz, just to get a clearer call for "PSTN like" connections.
But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway . Not sure I got that right. Could you elaborate more? Can this work on a per call basis?
As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful. Yes, absolutely. This would definitely help a lot. Not only on the FS side, but also on how to involve the Opus stack on the client side.
As far as an Opus manual, I also love the idea and can't wait to read it. Thanks again for this response, Emrah
On Oct 14, 2016, at 2:27 PM, Dragos Oancea <dragos.oancea@athonet.com> wrote:
Hi
Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ?
You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml .
FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added.
But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway . The decoder should decode at any sample rate. We're working on a document (sort of manual) for the Opus module and hopefully it will be released soon.
As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful.
We needed opus@8000hz for transcoding and I tried to explain some things here (see my comment at the bottom of the page ): https://freeswitch.org/confluence/display/FREESWITCH/mod_opus <https://freeswitch.org/confluence/display/FREESWITCH/mod_opus>
Basically if you do heavy transcoding to PCMA / PCMU which is 8000 hz you'll want to avoid resampling 48 khz <-> 8 khz - we did tests and by avoiding resampling we were saving 20-30 % CPU .
Regards, Dragos
On 14/10/2016 14:02, Emrah wrote:
Hi there, Revisiting this issue. I see that I can set my Opus codec with Opus@8000@20i, but 8khz seems to be the only alternative profile I can use. I see only 2 extreme options when the module is loaded or unloaded that it's either 48khz, mono or stereo and packet size, or 8khz, mono or stereo and packet size. Can someone clarify why there is nothing in between? And what exactly this setting does? Opus@8000h@20i definitely doesn't sound very good. I'd rather have a compromise for tough network conditions. Since these are parameters I can dynamically set on my dialplan, the question then becomes why can't I fully manipulate my Opus stack from the dialplan?
Thanks!
On Jun 2, 2015, at 6:23 AM, Emrah <lists@kavun.ch <mailto:lists@kavun.ch <mailto:lists@kavun.ch>>> wrote:
Hi there, @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. @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.
Thanks for the replies
On May 31, 2015, at 2:13 PM, Michael Jerris <mike@jerris.com <mailto:mike@jerris.com> <mailto:mike@jerris.com <mailto:mike@jerris.com>>> wrote:
Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH.
On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com <mailto:jchavanton@gmail.com> <mailto:jchavanton@gmail.com <mailto:jchavanton@gmail.com>>> wrote:
Hi Emrah,
The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus <https://freeswitch.org/confluence/display/FREESWITCH/mod_opus>
You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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)
https://tools <https://tools/> <https://tools/>.ietf.org/html/draft-ietf-payload-rtp-opus-11
Maybe something like :
maxaveragebitrate 24000 maxplaybackrate 8000
The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server.
On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch <javascript:_e(%7B%7D,'cvml','lists@kavun.ch');>> wrote:
Hi list,
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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.
Jira here: https://freeswitch.org/jira/browse/FS-6947
Emrah _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> <javascript:_e(%7B%7D,'cvml','consulting@freeswitch.org <mailto:consulting@freeswitch.org>');> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/> <http://www.freeswitchsolutions.com/ <http://www.freeswitchsolutions.com/>>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> <http://www.freeswitch.org/ <http://www.freeswitch.org/>> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> <http://confluence.freeswitch.org/ <http://confluence.freeswitch.org/>> http://www.cluecon.com <http://www.cluecon.com/> <http://www.cluecon.com/ <http://www.cluecon.com/>>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org>');> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/> <http://www.freeswitch.org/ <http://www.freeswitch.org/>>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> <mailto:consulting@freeswitch.org <mailto:consulting@freeswitch.org>> http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/>
As far as an Opus manual, I also love the idea and can't wait to read it.
This is the document trying to address the need for an "Opus manual": https://freeswitch.org/confluence/display/FREESWITCH/FreeSWITCH+And+The+Opus... As mentioned there, questions and other feedback are welcome. It can be easily exported from Confluence as PDF, should it be desired. Giacomo On 14 October 2016 at 18:48, Emrah <lists@kavun.ch> wrote:
Hey there, Thanks for this extensive response. I am not sure I got everything, but I'll try to answer what I can.
Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ?
Opus at 8khz doesn't give you the same fidelity as PCM at 8khz. You definitely hear the compression. However, Opus at 48khz transcoded into PCMU / PCMA is hardly noticeable. Therefore, I wanted to find a decent compromise, one that would save bandwidth and CPU for calls that don't require a full band audio.
You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml .
That sounds very interesting, however I do not want to impose global limitations as many of my Opus calls are full band calls. Would these settings help me work on a per call basis?
FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added.
I guess this reconnects with my observation above. The idea would be to use something slightly higher than 8khz, yet not as intensive as 48khz, just to get a clearer call for "PSTN like" connections.
But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway .
Not sure I got that right. Could you elaborate more? Can this work on a per call basis?
As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful.
Yes, absolutely. This would definitely help a lot. Not only on the FS side, but also on how to involve the Opus stack on the client side.
As far as an Opus manual, I also love the idea and can't wait to read it.
Thanks again for this response, Emrah
On Oct 14, 2016, at 2:27 PM, Dragos Oancea <dragos.oancea@athonet.com> wrote:
Hi
Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ?
You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml .
FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added.
But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway . The decoder should decode at any sample rate. We're working on a document (sort of manual) for the Opus module and hopefully it will be released soon.
As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful.
We needed opus@8000hz for transcoding and I tried to explain some things here (see my comment at the bottom of the page ): https://freeswitch.org/confluence/display/FREESWITCH/mod_opus
Basically if you do heavy transcoding to PCMA / PCMU which is 8000 hz you'll want to avoid resampling 48 khz <-> 8 khz - we did tests and by avoiding resampling we were saving 20-30 % CPU .
Regards, Dragos
On 14/10/2016 14:02, Emrah wrote:
Hi there, Revisiting this issue. I see that I can set my Opus codec with Opus@8000@20i, but 8khz seems to be the only alternative profile I can use. I see only 2 extreme options when the module is loaded or unloaded that it's either 48khz, mono or stereo and packet size, or 8khz, mono or stereo and packet size. Can someone clarify why there is nothing in between? And what exactly this setting does? Opus@8000h@20i definitely doesn't sound very good. I'd rather have a compromise for tough network conditions. Since these are parameters I can dynamically set on my dialplan, the question then becomes why can't I fully manipulate my Opus stack from the dialplan?
Thanks!
On Jun 2, 2015, at 6:23 AM, Emrah <lists@kavun.ch <mailto:lists@kavun.ch <lists@kavun.ch>>> wrote:
Hi there, @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. @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.
Thanks for the replies
On May 31, 2015, at 2:13 PM, Michael Jerris <mike@jerris.com <mailto:mike@jerris.com <mike@jerris.com>>> wrote:
Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH.
On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com <mailto:jchavanton@gmail.com <jchavanton@gmail.com>>> wrote:
Hi Emrah,
The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus
You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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)
https://tools <https://tools/>.ietf.org/html/draft-ietf-payload-rtp-opus-11
Maybe something like :
maxaveragebitrate 24000 maxplaybackrate 8000
The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server.
On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch <javascript:_e(%7B%7D,'cvml','lists@kavun.ch');>> wrote:
Hi list,
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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.
Jira here: https://freeswitch.org/jira/browse/FS-6947
Emrah ____________________________________________________________ _____________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <javascript:_e(%7B%7D,'cvml','consulting@freeswitch.org');> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@lists.freeswitch.org ');> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/ options/freeswitch-users http://www.freeswitch.org <http://www.freeswitch.org/>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org <consulting@freeswitch.org>> http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Hi Guys I install FS on a CentOS7 but seems the OPUS libraries that came with the Centos repository doesn’t allow the OPUS to be compiled (I compiled from source). What libraries should be install? BR Jaoquin From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Giacomo Vacca Sent: 26 October 2016 10:02 To: FreeSWITCH Users Help <freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] FS6947 - Tuning Opus bandwidth
As far as an Opus manual, I also love the idea and can't wait to read it.
This is the document trying to address the need for an "Opus manual": https://freeswitch.org/confluence/display/FREESWITCH/FreeSWITCH+And+The+Opus... As mentioned there, questions and other feedback are welcome. It can be easily exported from Confluence as PDF, should it be desired. Giacomo On 14 October 2016 at 18:48, Emrah <lists@kavun.ch<mailto:lists@kavun.ch>> wrote: Hey there, Thanks for this extensive response. I am not sure I got everything, but I'll try to answer what I can. Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ? Opus at 8khz doesn't give you the same fidelity as PCM at 8khz. You definitely hear the compression. However, Opus at 48khz transcoded into PCMU / PCMA is hardly noticeable. Therefore, I wanted to find a decent compromise, one that would save bandwidth and CPU for calls that don't require a full band audio. You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml . That sounds very interesting, however I do not want to impose global limitations as many of my Opus calls are full band calls. Would these settings help me work on a per call basis? FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added. I guess this reconnects with my observation above. The idea would be to use something slightly higher than 8khz, yet not as intensive as 48khz, just to get a clearer call for "PSTN like" connections. But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway . Not sure I got that right. Could you elaborate more? Can this work on a per call basis? As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful. Yes, absolutely. This would definitely help a lot. Not only on the FS side, but also on how to involve the Opus stack on the client side. As far as an Opus manual, I also love the idea and can't wait to read it. Thanks again for this response, Emrah On Oct 14, 2016, at 2:27 PM, Dragos Oancea <dragos.oancea@athonet.com<mailto:dragos.oancea@athonet.com>> wrote: Hi Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ? You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml . FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added. But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway . The decoder should decode at any sample rate. We're working on a document (sort of manual) for the Opus module and hopefully it will be released soon. As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful. We needed opus@8000hz for transcoding and I tried to explain some things here (see my comment at the bottom of the page ): https://freeswitch.org/confluence/display/FREESWITCH/mod_opus Basically if you do heavy transcoding to PCMA / PCMU which is 8000 hz you'll want to avoid resampling 48 khz <-> 8 khz - we did tests and by avoiding resampling we were saving 20-30 % CPU . Regards, Dragos On 14/10/2016 14:02, Emrah wrote: Hi there, Revisiting this issue. I see that I can set my Opus codec with Opus@8000@20i, but 8khz seems to be the only alternative profile I can use. I see only 2 extreme options when the module is loaded or unloaded that it's either 48khz, mono or stereo and packet size, or 8khz, mono or stereo and packet size. Can someone clarify why there is nothing in between? And what exactly this setting does? Opus@8000h@20i definitely doesn't sound very good. I'd rather have a compromise for tough network conditions. Since these are parameters I can dynamically set on my dialplan, the question then becomes why can't I fully manipulate my Opus stack from the dialplan? Thanks! On Jun 2, 2015, at 6:23 AM, Emrah <lists@kavun.ch<mailto:lists@kavun.ch> <mailto:lists@kavun.ch>> wrote: Hi there, @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. @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. Thanks for the replies On May 31, 2015, at 2:13 PM, Michael Jerris <mike@jerris.com<mailto:mike@jerris.com> <mailto:mike@jerris.com>> wrote: Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH. On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com<mailto:jchavanton@gmail.com> <mailto:jchavanton@gmail.com>> wrote: Hi Emrah, The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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) https://tools<https://tools/> <https://tools/>.ietf.org/html/draft-ietf-payload-rtp-opus-11<http://ietf.org/html/draft-ietf-payload-rtp-opus-11> Maybe something like : maxaveragebitrate 24000 maxplaybackrate 8000 The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server. On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch<mailto:lists@kavun.ch> <javascript:_e(%7B%7D,'cvml','lists@kavun.ch<mailto:lists@kavun.ch>');>> wrote: Hi list, I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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. Jira here: https://freeswitch.org/jira/browse/FS-6947 Emrah _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> <javascript:_e(%7B%7D,'cvml','consulting@freeswitch.org<mailto:consulting@freeswitch.org>');> http://www.freeswitchsolutions.com<http://www.freeswitchsolutions.com/> <http://www.freeswitchsolutions.com/> Official FreeSWITCH Sites http://www.freeswitch.org<http://www.freeswitch.org/> <http://www.freeswitch.org/> http://confluence.freeswitch.org<http://confluence.freeswitch.org/> <http://confluence.freeswitch.org/> http://www.cluecon.com<http://www.cluecon.com/> <http://www.cluecon.com/> FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org>');> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org<http://www.freeswitch.org/> <http://www.freeswitch.org/> _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com<http://www.freeswitchsolutions.com/> Official FreeSWITCH Sites http://www.freeswitch.org<http://www.freeswitch.org/> http://confluence.freeswitch.org<http://confluence.freeswitch.org/> http://www.cluecon.com<http://www.cluecon.com/> FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org<http://www.freeswitch.org/> _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org<mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org<mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org This email is confidential and may be subject to privilege. If you are not the intended recipient, please do not copy or disclose its content but contact the sender immediately upon receipt.
I'd highly recommend you move to Debian 8, But I sense you like pain, let me help you with that! :) https://freeswitch.org/confluence/display/FREESWITCH/Build+libopus+RPMs+for+... /b On Wed, Oct 26, 2016 at 4:12 AM, Joaquin Alzola <Joaquin.Alzola@lebara.com> wrote:
Hi Guys
I install FS on a CentOS7 but seems the OPUS libraries that came with the Centos repository doesn’t allow the OPUS to be compiled (I compiled from source).
What libraries should be install?
BR
Jaoquin
*From:* freeswitch-users-bounces@lists.freeswitch.org [mailto: freeswitch-users-bounces@lists.freeswitch.org] *On Behalf Of *Giacomo Vacca *Sent:* 26 October 2016 10:02 *To:* FreeSWITCH Users Help <freeswitch-users@lists.freeswitch.org> *Subject:* Re: [Freeswitch-users] FS6947 - Tuning Opus bandwidth
As far as an Opus manual, I also love the idea and can't wait to read it.
This is the document trying to address the need for an "Opus manual":
https://freeswitch.org/confluence/display/FREESWITCH/ FreeSWITCH+And+The+Opus+Audio+Codec
As mentioned there, questions and other feedback are welcome.
It can be easily exported from Confluence as PDF, should it be desired.
Giacomo
On 14 October 2016 at 18:48, Emrah <lists@kavun.ch> wrote:
Hey there,
Thanks for this extensive response. I am not sure I got everything, but I'll try to answer what I can.
Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ?
Opus at 8khz doesn't give you the same fidelity as PCM at 8khz. You definitely hear the compression. However, Opus at 48khz transcoded into PCMU / PCMA is hardly noticeable. Therefore, I wanted to find a decent compromise, one that would save bandwidth and CPU for calls that don't require a full band audio.
You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml .
That sounds very interesting, however I do not want to impose global limitations as many of my Opus calls are full band calls. Would these settings help me work on a per call basis?
FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added.
I guess this reconnects with my observation above. The idea would be to use something slightly higher than 8khz, yet not as intensive as 48khz, just to get a clearer call for "PSTN like" connections.
But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway .
Not sure I got that right. Could you elaborate more? Can this work on a per call basis?
As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful.
Yes, absolutely. This would definitely help a lot. Not only on the FS side, but also on how to involve the Opus stack on the client side.
As far as an Opus manual, I also love the idea and can't wait to read it.
Thanks again for this response,
Emrah
On Oct 14, 2016, at 2:27 PM, Dragos Oancea <dragos.oancea@athonet.com> wrote:
Hi
Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ?
You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml .
FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added.
But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway . The decoder should decode at any sample rate. We're working on a document (sort of manual) for the Opus module and hopefully it will be released soon.
As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful.
We needed opus@8000hz for transcoding and I tried to explain some things here (see my comment at the bottom of the page ): https://freeswitch.org/confluence/display/FREESWITCH/mod_opus
Basically if you do heavy transcoding to PCMA / PCMU which is 8000 hz you'll want to avoid resampling 48 khz <-> 8 khz - we did tests and by avoiding resampling we were saving 20-30 % CPU .
Regards, Dragos
On 14/10/2016 14:02, Emrah wrote:
Hi there, Revisiting this issue. I see that I can set my Opus codec with Opus@8000@20i, but 8khz seems to be the only alternative profile I can use. I see only 2 extreme options when the module is loaded or unloaded that it's either 48khz, mono or stereo and packet size, or 8khz, mono or stereo and packet size. Can someone clarify why there is nothing in between? And what exactly this setting does? Opus@8000h@20i definitely doesn't sound very good. I'd rather have a compromise for tough network conditions. Since these are parameters I can dynamically set on my dialplan, the question then becomes why can't I fully manipulate my Opus stack from the dialplan?
Thanks!
On Jun 2, 2015, at 6:23 AM, Emrah <lists@kavun.ch <mailto:lists@kavun.ch <lists@kavun.ch>>> wrote:
Hi there, @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. @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.
Thanks for the replies
On May 31, 2015, at 2:13 PM, Michael Jerris <mike@jerris.com <mailto:mike@jerris.com <mike@jerris.com>>> wrote:
Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH.
On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com <mailto:jchavanton@gmail.com <jchavanton@gmail.com>>> wrote:
Hi Emrah,
The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus
You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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)
https://tools <https://tools/>.ietf.org/html/draft-ietf-payload-rtp-opus-11
Maybe something like :
maxaveragebitrate 24000 maxplaybackrate 8000
The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server.
On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch <javascript:_e(%7B%7D,'cvml','lists@kavun.ch');>> wrote:
Hi list,
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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.
Jira here: https://freeswitch.org/jira/browse/FS-6947
Emrah ____________________________________________________________ _____________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <javascript:_e(%7B%7D,'cvml','consulting@freeswitch.org');> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@lists.freeswitch.org ');> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/ options/freeswitch-users http://www.freeswitch.org <http://www.freeswitch.org/>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org <consulting@freeswitch.org>> http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
This email is confidential and may be subject to privilege. If you are not the intended recipient, please do not copy or disclose its content but contact the sender immediately upon receipt.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- *Brian West* brian@freeswitch.org *Twitter: @FreeSWITCH , @briankwest* http://www.freeswitchbook.com (50% Discount using code FreeSwitch50) http://www.freeswitchcookbook.com (50% Discount using code FreeSwitch50) https://www.gofundme.com/freeswitch_ubuntu Got Bugs? Report them here <https://freeswitch.org/jira>! | Reddit: /r/freeswitch <https://www.reddit.com/r/freeswitch> *T:*+19184209001 | *F:*+19184209002 | *M:*+1918424WEST (9378) *iNUM:*+883 5100 1420 9001 | *ISN:*410*543 | *Skype:*briankwest
We do have 12khz and 24khz I added the specifically when we added SILK, we can resample to and from both rates. :) On Fri, Oct 14, 2016 at 7:27 AM, Dragos Oancea <dragos.oancea@athonet.com> wrote:
Hi
Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ?
You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml .
FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added.
But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway . The decoder should decode at any sample rate. We're working on a document (sort of manual) for the Opus module and hopefully it will be released soon.
As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful.
We needed opus@8000hz for transcoding and I tried to explain some things here (see my comment at the bottom of the page ): https://freeswitch.org/confluence/display/FREESWITCH/mod_opus
Basically if you do heavy transcoding to PCMA / PCMU which is 8000 hz you'll want to avoid resampling 48 khz <-> 8 khz - we did tests and by avoiding resampling we were saving 20-30 % CPU .
Regards, Dragos
On 14/10/2016 14:02, Emrah wrote:
Hi there, Revisiting this issue. I see that I can set my Opus codec with Opus@8000@20i, but 8khz seems to be the only alternative profile I can use. I see only 2 extreme options when the module is loaded or unloaded that it's either 48khz, mono or stereo and packet size, or 8khz, mono or stereo and packet size. Can someone clarify why there is nothing in between? And what exactly this setting does? Opus@8000h@20i definitely doesn't sound very good. I'd rather have a compromise for tough network conditions. Since these are parameters I can dynamically set on my dialplan, the question then becomes why can't I fully manipulate my Opus stack from the dialplan?
Thanks!
On Jun 2, 2015, at 6:23 AM, Emrah <lists@kavun.ch <mailto:lists@kavun.ch>> wrote:
Hi there, @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. @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.
Thanks for the replies
On May 31, 2015, at 2:13 PM, Michael Jerris <mike@jerris.com <mailto:mike@jerris.com>> wrote:
Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH.
On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com <mailto:jchavanton@gmail.com>> wrote:
Hi Emrah,
The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus
You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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)
https://tools <https://tools/>.ietf.org/html/draft-ietf-payload-rtp-opus-11
Maybe something like :
maxaveragebitrate 24000 maxplaybackrate 8000
The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server.
On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch <javascript:_e(%7B%7D,'cvml','lists@kavun.ch');>> wrote:
Hi list,
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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.
Jira here: https://freeswitch.org/jira/browse/FS-6947
Emrah ____________________________________________________________
Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <javascript:_e(%7B%7D,'cvml','consulting@freeswitch.org');> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@lists.
freeswitch.org');>
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/
options/freeswitch-users
http://www.freeswitch.org <http://www.freeswitch.org/>
____________________________________________________________
Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/ options/freeswitch-users http://www.freeswitch.org
____________________________________________________________
Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- *Brian West* brian@freeswitch.org *Twitter: @FreeSWITCH , @briankwest* http://www.freeswitchbook.com (50% Discount using code FreeSwitch50) http://www.freeswitchcookbook.com (50% Discount using code FreeSwitch50) https://www.gofundme.com/freeswitch_ubuntu Got Bugs? Report them here <https://freeswitch.org/jira>! | Reddit: /r/freeswitch <https://www.reddit.com/r/freeswitch> *T:*+19184209001 | *F:*+19184209002 | *M:*+1918424WEST (9378) *iNUM:*+883 5100 1420 9001 | *ISN:*410*543 | *Skype:*briankwest
Since when? I don't see it in FS 1.6.10. Emrah
On Oct 14, 2016, at 6:50 PM, Brian West <brian@freeswitch.org> wrote:
We do have 12khz and 24khz I added the specifically when we added SILK, we can resample to and from both rates. :)
On Fri, Oct 14, 2016 at 7:27 AM, Dragos Oancea <dragos.oancea@athonet.com <mailto:dragos.oancea@athonet.com>> wrote: Hi
Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ?
You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml .
FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added.
But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway . The decoder should decode at any sample rate. We're working on a document (sort of manual) for the Opus module and hopefully it will be released soon.
As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful.
We needed opus@8000hz for transcoding and I tried to explain some things here (see my comment at the bottom of the page ): https://freeswitch.org/confluence/display/FREESWITCH/mod_opus <https://freeswitch.org/confluence/display/FREESWITCH/mod_opus>
Basically if you do heavy transcoding to PCMA / PCMU which is 8000 hz you'll want to avoid resampling 48 khz <-> 8 khz - we did tests and by avoiding resampling we were saving 20-30 % CPU .
Regards, Dragos
On 14/10/2016 14:02, Emrah wrote:
Hi there, Revisiting this issue. I see that I can set my Opus codec with Opus@8000@20i, but 8khz seems to be the only alternative profile I can use. I see only 2 extreme options when the module is loaded or unloaded that it's either 48khz, mono or stereo and packet size, or 8khz, mono or stereo and packet size. Can someone clarify why there is nothing in between? And what exactly this setting does? Opus@8000h@20i definitely doesn't sound very good. I'd rather have a compromise for tough network conditions. Since these are parameters I can dynamically set on my dialplan, the question then becomes why can't I fully manipulate my Opus stack from the dialplan?
Thanks!
On Jun 2, 2015, at 6:23 AM, Emrah <lists@kavun.ch <mailto:lists@kavun.ch> <mailto:lists@kavun.ch <mailto:lists@kavun.ch>>> wrote:
Hi there, @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. @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.
Thanks for the replies
On May 31, 2015, at 2:13 PM, Michael Jerris <mike@jerris.com <mailto:mike@jerris.com> <mailto:mike@jerris.com <mailto:mike@jerris.com>>> wrote:
Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH.
On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com <mailto:jchavanton@gmail.com> <mailto:jchavanton@gmail.com <mailto:jchavanton@gmail.com>>> wrote:
Hi Emrah,
The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus <https://freeswitch.org/confluence/display/FREESWITCH/mod_opus>
You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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)
https://tools <https://tools/> <https://tools/ <https://tools/>>.ietf.org/html/draft-ietf-payload-rtp-opus-11 <http://ietf.org/html/draft-ietf-payload-rtp-opus-11>
Maybe something like :
maxaveragebitrate 24000 maxplaybackrate 8000
The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server.
On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch <mailto:lists@kavun.ch> <javascript:_e(%7B%7D,'cvml','lists@kavun.ch <mailto:lists@kavun.ch>');>> wrote:
Hi list,
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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.
Jira here: https://freeswitch.org/jira/browse/FS-6947 <https://freeswitch.org/jira/browse/FS-6947>
Emrah _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> <javascript:_e(%7B%7D,'cvml','consulting@freeswitch.org <mailto:consulting@freeswitch.org>');> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/> <http://www.freeswitchsolutions.com/ <http://www.freeswitchsolutions.com/>>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> <http://www.freeswitch.org/ <http://www.freeswitch.org/>> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> <http://confluence.freeswitch.org/ <http://confluence.freeswitch.org/>> http://www.cluecon.com <http://www.cluecon.com/> <http://www.cluecon.com/ <http://www.cluecon.com/>>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org>');> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/> <http://www.freeswitch.org/ <http://www.freeswitch.org/>>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> <mailto:consulting@freeswitch.org <mailto:consulting@freeswitch.org>> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/>
-- Brian West brian@freeswitch.org <mailto:brian@freeswitch.org>
Twitter: @FreeSWITCH , @briankwest http://www.freeswitchbook.com <http://www.freeswitchbook.com/> (50% Discount using code FreeSwitch50) http://www.freeswitchcookbook.com <http://www.freeswitchcookbook.com/> (50% Discount using code FreeSwitch50) https://www.gofundme.com/freeswitch_ubuntu <https://www.gofundme.com/freeswitch_ubuntu> Got Bugs? Report them here <https://freeswitch.org/jira>! | Reddit: /r/freeswitch <https://www.reddit.com/r/freeswitch> T:+19184209001 | F:+19184209002 | M:+1918424WEST (9378) iNUM:+883 5100 1420 9001 | ISN:410*543 | Skype:briankwest
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
In my FS 1.7 I still see this: 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 40ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 40ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 120ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 100ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 80ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 60ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 20ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 20ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 10ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 10ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 40ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 40ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 20ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 20ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 10ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 10ms 1ch (VBR)
On Oct 14, 2016, at 10:16 PM, Emrah <lists@kavun.ch> wrote:
Since when? I don't see it in FS 1.6.10.
Emrah
On Oct 14, 2016, at 6:50 PM, Brian West <brian@freeswitch.org <mailto:brian@freeswitch.org>> wrote:
We do have 12khz and 24khz I added the specifically when we added SILK, we can resample to and from both rates. :)
On Fri, Oct 14, 2016 at 7:27 AM, Dragos Oancea <dragos.oancea@athonet.com <mailto:dragos.oancea@athonet.com>> wrote: Hi
Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ?
You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml .
FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added.
But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway . The decoder should decode at any sample rate. We're working on a document (sort of manual) for the Opus module and hopefully it will be released soon.
As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful.
We needed opus@8000hz for transcoding and I tried to explain some things here (see my comment at the bottom of the page ): https://freeswitch.org/confluence/display/FREESWITCH/mod_opus <https://freeswitch.org/confluence/display/FREESWITCH/mod_opus>
Basically if you do heavy transcoding to PCMA / PCMU which is 8000 hz you'll want to avoid resampling 48 khz <-> 8 khz - we did tests and by avoiding resampling we were saving 20-30 % CPU .
Regards, Dragos
On 14/10/2016 14:02, Emrah wrote:
Hi there, Revisiting this issue. I see that I can set my Opus codec with Opus@8000@20i, but 8khz seems to be the only alternative profile I can use. I see only 2 extreme options when the module is loaded or unloaded that it's either 48khz, mono or stereo and packet size, or 8khz, mono or stereo and packet size. Can someone clarify why there is nothing in between? And what exactly this setting does? Opus@8000h@20i definitely doesn't sound very good. I'd rather have a compromise for tough network conditions. Since these are parameters I can dynamically set on my dialplan, the question then becomes why can't I fully manipulate my Opus stack from the dialplan?
Thanks!
On Jun 2, 2015, at 6:23 AM, Emrah <lists@kavun.ch <mailto:lists@kavun.ch> <mailto:lists@kavun.ch <mailto:lists@kavun.ch>>> wrote:
Hi there, @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. @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.
Thanks for the replies
On May 31, 2015, at 2:13 PM, Michael Jerris <mike@jerris.com <mailto:mike@jerris.com> <mailto:mike@jerris.com <mailto:mike@jerris.com>>> wrote:
Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH.
On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com <mailto:jchavanton@gmail.com> <mailto:jchavanton@gmail.com <mailto:jchavanton@gmail.com>>> wrote:
Hi Emrah,
The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus <https://freeswitch.org/confluence/display/FREESWITCH/mod_opus>
You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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)
https://tools <https://tools/> <https://tools/ <https://tools/>>.ietf.org/html/draft-ietf-payload-rtp-opus-11 <http://ietf.org/html/draft-ietf-payload-rtp-opus-11>
Maybe something like :
maxaveragebitrate 24000 maxplaybackrate 8000
The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server.
On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch <mailto:lists@kavun.ch> <javascript:_e(%7B%7D,'cvml','lists@kavun.ch <mailto:lists@kavun.ch>');>> wrote:
Hi list,
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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.
Jira here: https://freeswitch.org/jira/browse/FS-6947 <https://freeswitch.org/jira/browse/FS-6947>
Emrah _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> <javascript:_e(%7B%7D,'cvml','consulting@freeswitch.org <mailto:consulting@freeswitch.org>');> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/> <http://www.freeswitchsolutions.com/ <http://www.freeswitchsolutions.com/>>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> <http://www.freeswitch.org/ <http://www.freeswitch.org/>> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> <http://confluence.freeswitch.org/ <http://confluence.freeswitch.org/>> http://www.cluecon.com <http://www.cluecon.com/> <http://www.cluecon.com/ <http://www.cluecon.com/>>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org>');> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/> <http://www.freeswitch.org/ <http://www.freeswitch.org/>>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> <mailto:consulting@freeswitch.org <mailto:consulting@freeswitch.org>> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/>
-- Brian West brian@freeswitch.org <mailto:brian@freeswitch.org>
Twitter: @FreeSWITCH , @briankwest http://www.freeswitchbook.com <http://www.freeswitchbook.com/> (50% Discount using code FreeSwitch50) http://www.freeswitchcookbook.com <http://www.freeswitchcookbook.com/> (50% Discount using code FreeSwitch50) https://www.gofundme.com/freeswitch_ubuntu <https://www.gofundme.com/freeswitch_ubuntu> Got Bugs? Report them here <https://freeswitch.org/jira>! | Reddit: /r/freeswitch <https://www.reddit.com/r/freeswitch> T:+19184209001 | F:+19184209002 | M:+1918424WEST (9378) iNUM:+883 5100 1420 9001 | ISN:410*543 | Skype:briankwest
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Can someone clarify this please? Can we now dynamically engage the Opus stack by setting channel variables? Thanks!
On Oct 14, 2016, at 10:18 PM, Emrah <lists@kavun.ch> wrote:
In my FS 1.7 I still see this: 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 40ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 40ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 120ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 100ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 80ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 60ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 20ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 20ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 10ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 10ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 40ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 40ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 20ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 20ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 10ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 10ms 1ch (VBR)
On Oct 14, 2016, at 10:16 PM, Emrah <lists@kavun.ch <mailto:lists@kavun.ch>> wrote:
Since when? I don't see it in FS 1.6.10.
Emrah
On Oct 14, 2016, at 6:50 PM, Brian West <brian@freeswitch.org <mailto:brian@freeswitch.org>> wrote:
We do have 12khz and 24khz I added the specifically when we added SILK, we can resample to and from both rates. :)
On Fri, Oct 14, 2016 at 7:27 AM, Dragos Oancea <dragos.oancea@athonet.com <mailto:dragos.oancea@athonet.com>> wrote: Hi
Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ?
You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml .
FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added.
But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway . The decoder should decode at any sample rate. We're working on a document (sort of manual) for the Opus module and hopefully it will be released soon.
As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful.
We needed opus@8000hz for transcoding and I tried to explain some things here (see my comment at the bottom of the page ): https://freeswitch.org/confluence/display/FREESWITCH/mod_opus <https://freeswitch.org/confluence/display/FREESWITCH/mod_opus>
Basically if you do heavy transcoding to PCMA / PCMU which is 8000 hz you'll want to avoid resampling 48 khz <-> 8 khz - we did tests and by avoiding resampling we were saving 20-30 % CPU .
Regards, Dragos
On 14/10/2016 14:02, Emrah wrote:
Hi there, Revisiting this issue. I see that I can set my Opus codec with Opus@8000@20i, but 8khz seems to be the only alternative profile I can use. I see only 2 extreme options when the module is loaded or unloaded that it's either 48khz, mono or stereo and packet size, or 8khz, mono or stereo and packet size. Can someone clarify why there is nothing in between? And what exactly this setting does? Opus@8000h@20i definitely doesn't sound very good. I'd rather have a compromise for tough network conditions. Since these are parameters I can dynamically set on my dialplan, the question then becomes why can't I fully manipulate my Opus stack from the dialplan?
Thanks!
On Jun 2, 2015, at 6:23 AM, Emrah <lists@kavun.ch <mailto:lists@kavun.ch> <mailto:lists@kavun.ch <mailto:lists@kavun.ch>>> wrote:
Hi there, @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. @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.
Thanks for the replies
On May 31, 2015, at 2:13 PM, Michael Jerris <mike@jerris.com <mailto:mike@jerris.com> <mailto:mike@jerris.com <mailto:mike@jerris.com>>> wrote:
Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH.
On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com <mailto:jchavanton@gmail.com> <mailto:jchavanton@gmail.com <mailto:jchavanton@gmail.com>>> wrote:
Hi Emrah,
The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus <https://freeswitch.org/confluence/display/FREESWITCH/mod_opus>
You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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)
https://tools <https://tools/> <https://tools/ <https://tools/>>.ietf.org/html/draft-ietf-payload-rtp-opus-11 <http://ietf.org/html/draft-ietf-payload-rtp-opus-11>
Maybe something like :
maxaveragebitrate 24000 maxplaybackrate 8000
The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server.
On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch <mailto:lists@kavun.ch> <javascript:_e(%7B%7D,'cvml','lists@kavun.ch <mailto:lists@kavun.ch>');>> wrote:
Hi list,
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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.
Jira here: https://freeswitch.org/jira/browse/FS-6947 <https://freeswitch.org/jira/browse/FS-6947>
Emrah _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> <javascript:_e(%7B%7D,'cvml','consulting@freeswitch.org <mailto:consulting@freeswitch.org>');> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/> <http://www.freeswitchsolutions.com/ <http://www.freeswitchsolutions.com/>>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> <http://www.freeswitch.org/ <http://www.freeswitch.org/>> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> <http://confluence.freeswitch.org/ <http://confluence.freeswitch.org/>> http://www.cluecon.com <http://www.cluecon.com/> <http://www.cluecon.com/ <http://www.cluecon.com/>>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org>');> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/> <http://www.freeswitch.org/ <http://www.freeswitch.org/>>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> <mailto:consulting@freeswitch.org <mailto:consulting@freeswitch.org>> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/>
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <mailto:FreeSWITCH-users@lists.freeswitch.org> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users <http://lists.freeswitch.org/mailman/listinfo/freeswitch-users> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users <http://lists.freeswitch.org/mailman/options/freeswitch-users> http://www.freeswitch.org <http://www.freeswitch.org/>
-- Brian West brian@freeswitch.org <mailto:brian@freeswitch.org>
Twitter: @FreeSWITCH , @briankwest http://www.freeswitchbook.com <http://www.freeswitchbook.com/> (50% Discount using code FreeSwitch50) http://www.freeswitchcookbook.com <http://www.freeswitchcookbook.com/> (50% Discount using code FreeSwitch50) https://www.gofundme.com/freeswitch_ubuntu <https://www.gofundme.com/freeswitch_ubuntu> Got Bugs? Report them here <https://freeswitch.org/jira>! | Reddit: /r/freeswitch <https://www.reddit.com/r/freeswitch> T:+19184209001 | F:+19184209002 | M:+1918424WEST (9378) iNUM:+883 5100 1420 9001 | ISN:410*543 | Skype:briankwest
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Hi Emrah, at the moment (master and v1.6) opus can only be configured at 48000 or 8000 Hz for the sample rate, with various (preferred) ptimes. In terms of dialplan, you can set the preferred flavour on a per call basis by working with 'inbound_codec_prefs', inside the limits described above. For what concerns having more flexibility in the negotiation with the client, you can use maxplaybackrate, sprop-maxcapture rate and maxaveragebitrate to tell FS what conditions the client expects (SDP negotiation). These values are taken into account by FS when instantiating the encoder if the parameters 'asymmetric-sample-rates' and 'negotiate-bitrate' are set to 1 in opus.conf.xml. In particular maxaveragebitrate from the client will be used to set the initial encoder bitrate, should it be smaller than the maxaveragebitrate value set in opus.conf.xml (there are a few other conditions if you use the 8 KHz flavour). use-vbr set to 1 in opus.conf.xml will allow the encoder to save bandwidth in case of silence, so that if bandwidth is limited you can still get the higher bitrates when voice is detected, without impacting much the average bitrate. I hope this helps. Giacomo On 21 October 2016 at 14:22, Emrah <lists@kavun.ch> wrote:
Can someone clarify this please? Can we now dynamically engage the Opus stack by setting channel variables?
Thanks!
On Oct 14, 2016, at 10:18 PM, Emrah <lists@kavun.ch> wrote:
In my FS 1.7 I still see this: 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 40ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 40ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 120ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 100ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 80ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 60ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 20ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 20ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 10ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 10ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 40ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 40ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 20ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 20ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 10ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 10ms 1ch (VBR)
On Oct 14, 2016, at 10:16 PM, Emrah <lists@kavun.ch> wrote:
Since when? I don't see it in FS 1.6.10.
Emrah
On Oct 14, 2016, at 6:50 PM, Brian West <brian@freeswitch.org> wrote:
We do have 12khz and 24khz I added the specifically when we added SILK, we can resample to and from both rates. :)
On Fri, Oct 14, 2016 at 7:27 AM, Dragos Oancea <dragos.oancea@athonet.com> wrote:
Hi
Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ?
You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml .
FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added.
But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway . The decoder should decode at any sample rate. We're working on a document (sort of manual) for the Opus module and hopefully it will be released soon.
As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful.
We needed opus@8000hz for transcoding and I tried to explain some things here (see my comment at the bottom of the page ): https://freeswitch.org/confluence/display/FREESWITCH/mod_opus
Basically if you do heavy transcoding to PCMA / PCMU which is 8000 hz you'll want to avoid resampling 48 khz <-> 8 khz - we did tests and by avoiding resampling we were saving 20-30 % CPU .
Regards, Dragos
On 14/10/2016 14:02, Emrah wrote:
Hi there, Revisiting this issue. I see that I can set my Opus codec with Opus@8000@20i, but 8khz seems to be the only alternative profile I can use. I see only 2 extreme options when the module is loaded or unloaded that it's either 48khz, mono or stereo and packet size, or 8khz, mono or stereo and packet size. Can someone clarify why there is nothing in between? And what exactly this setting does? Opus@8000h@20i definitely doesn't sound very good. I'd rather have a compromise for tough network conditions. Since these are parameters I can dynamically set on my dialplan, the question then becomes why can't I fully manipulate my Opus stack from the dialplan?
Thanks!
On Jun 2, 2015, at 6:23 AM, Emrah <lists@kavun.ch <mailto:lists@kavun.ch>> wrote:
Hi there, @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. @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.
Thanks for the replies
On May 31, 2015, at 2:13 PM, Michael Jerris <mike@jerris.com <mailto:mike@jerris.com>> wrote:
Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH.
On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com <mailto:jchavanton@gmail.com>> wrote:
Hi Emrah,
The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus
You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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)
https://tools <https://tools/>.ietf.org/html/draft-ietf-payload-rtp-opus-11
Maybe something like :
maxaveragebitrate 24000 maxplaybackrate 8000
The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server.
On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch <javascript:_e(%7B%7D,'cvml','lists@kavun.ch');>> wrote:
Hi list,
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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.
Jira here: https://freeswitch.org/jira/browse/FS-6947
Emrah ___________________________________________________________
Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <javascript:_e(%7B%7D,'cvml','consulting@freeswitch.org');> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@lists.freesw
itch.org');>
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/
freeswitch-users
http://www.freeswitch.org <http://www.freeswitch.org/>
____________________________________________________________
Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/ freeswitch-users http://www.freeswitch.org
____________________________________________________________
Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/ freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
--
*Brian West* brian@freeswitch.org
*Twitter: @FreeSWITCH , @briankwest* http://www.freeswitchbook.com (50% Discount using code FreeSwitch50) http://www.freeswitchcookbook.com (50% Discount using code FreeSwitch50) https://www.gofundme.com/freeswitch_ubuntu
Got Bugs? Report them here <https://freeswitch.org/jira>! | Reddit: /r/freeswitch <https://www.reddit.com/r/freeswitch>
*T:*+19184209001 | *F:*+19184209002 | *M:*+1918424WEST (9378) *iNUM:*+883 5100 1420 9001 | *ISN:*410*543 | *Skype:*briankwest _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
If you want to use 12 or 24 the only codec that supports those rates are Silk. While Silk is part of the OPUS codec those do not seem to be exposed as OPUS will dynamically switch between rates internally to best fit the situation. On Fri, Oct 21, 2016 at 7:22 AM, Emrah <lists@kavun.ch> wrote:
Can someone clarify this please? Can we now dynamically engage the Opus stack by setting channel variables?
Thanks!
On Oct 14, 2016, at 10:18 PM, Emrah <lists@kavun.ch> wrote:
In my FS 1.7 I still see this: 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 40ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 40ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 120ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 100ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 80ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 60ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 20ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 20ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 10ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 8000hz 10ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 40ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 40ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 20ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 20ms 1ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 10ms 2ch (VBR) 2016-10-14 20:16:44.109370 [NOTICE] switch_loadable_module.c:213 Adding Codec opus 116 OPUS (STANDARD) 48000hz 10ms 1ch (VBR)
On Oct 14, 2016, at 10:16 PM, Emrah <lists@kavun.ch> wrote:
Since when? I don't see it in FS 1.6.10.
Emrah
On Oct 14, 2016, at 6:50 PM, Brian West <brian@freeswitch.org> wrote:
We do have 12khz and 24khz I added the specifically when we added SILK, we can resample to and from both rates. :)
On Fri, Oct 14, 2016 at 7:27 AM, Dragos Oancea <dragos.oancea@athonet.com> wrote:
Hi
Why would you say opus@8000@20i does not sound very good ? What do you mean exactly ? Your call quality is bad or you mean you don't like the fact that the sampling rate is low ?
You can play with the sampling rates by setting maxplaybackrate and sprop_maxcapurerate and enabling asymmetric_samplerates (which is an experimental feature so far) in your opus.conf.xml .
FS does not have 12 khz or 24 khz because they are not much used for Voip. As for opus @ 16 khz perhaps it will be added.
But if you use opus @ 48 khz and you just change maxaveragebitrate and maxplaybackrate accordingly you should get only WIDEBAND from the encoder anyway . The decoder should decode at any sample rate. We're working on a document (sort of manual) for the Opus module and hopefully it will be released soon.
As for the issue why codec settings cannot be set from FS's dialplan , I think its a missing feature that affects other audio codecs too and I think it would be very useful.
We needed opus@8000hz for transcoding and I tried to explain some things here (see my comment at the bottom of the page ): https://freeswitch.org/confluence/display/FREESWITCH/mod_opus
Basically if you do heavy transcoding to PCMA / PCMU which is 8000 hz you'll want to avoid resampling 48 khz <-> 8 khz - we did tests and by avoiding resampling we were saving 20-30 % CPU .
Regards, Dragos
On 14/10/2016 14:02, Emrah wrote:
Hi there, Revisiting this issue. I see that I can set my Opus codec with Opus@8000@20i, but 8khz seems to be the only alternative profile I can use. I see only 2 extreme options when the module is loaded or unloaded that it's either 48khz, mono or stereo and packet size, or 8khz, mono or stereo and packet size. Can someone clarify why there is nothing in between? And what exactly this setting does? Opus@8000h@20i definitely doesn't sound very good. I'd rather have a compromise for tough network conditions. Since these are parameters I can dynamically set on my dialplan, the question then becomes why can't I fully manipulate my Opus stack from the dialplan?
Thanks!
On Jun 2, 2015, at 6:23 AM, Emrah <lists@kavun.ch <mailto:lists@kavun.ch>> wrote:
Hi there, @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. @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.
Thanks for the replies
On May 31, 2015, at 2:13 PM, Michael Jerris <mike@jerris.com <mailto:mike@jerris.com>> wrote:
Side note, opening at the different rate I believe just makes the opus library do the re sampling instead of FreeSWITCH.
On Sunday, May 31, 2015, Julien Chavanton <jchavanton@gmail.com <mailto:jchavanton@gmail.com>> wrote:
Hi Emrah,
The settings exist but they are not available from the dialplan, right now they can only be set globally . https://freeswitch.org/confluence/display/FREESWITCH/mod_opus
You can control the bandwidth using maxplaybackrate and maxplaybackrate this will control the local encoder and also adds the corresponding FMTP parameters to the SDP 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)
https://tools <https://tools/>.ietf.org/html/draft-ietf-payload-rtp-opus-11
Maybe something like :
maxaveragebitrate 24000 maxplaybackrate 8000
The discussion was getting slightly more complicated when we where discussing about unnecessary resampling this was not a problem but it was just adding extra load on the server.
On Sun, May 31, 2015 at 6:09 AM, Emrah <lists@kavun.ch <javascript:_e(%7B%7D,'cvml','lists@kavun.ch');>> wrote:
Hi list,
I re-read FS6947 and don't understand how this problematic was addressed and the issue fixed. 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. 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. Please revisit this issue. FS should allow tuning of Opus audio / network bandwidth in the dialplan. It would optimize greatly lots of use cases. 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.
Jira here: https://freeswitch.org/jira/browse/FS-6947
Emrah ___________________________________________________________
Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <javascript:_e(%7B%7D,'cvml','consulting@freeswitch.org');> http://www.freeswitchsolutions.com <http://www.freeswitchsolutions.com/>
Official FreeSWITCH Sites http://www.freeswitch.org <http://www.freeswitch.org/> http://confluence.freeswitch.org <http://confluence.freeswitch.org/> http://www.cluecon.com <http://www.cluecon.com/>
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org <javascript:_e(%7B%7D,'cvml','FreeSWITCH-users@lists.freesw
itch.org');>
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/
freeswitch-users
http://www.freeswitch.org <http://www.freeswitch.org/>
____________________________________________________________
Professional FreeSWITCH Consulting Services: consulting@freeswitch.org <mailto:consulting@freeswitch.org> http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/ freeswitch-users http://www.freeswitch.org
____________________________________________________________
Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/ freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
--
*Brian West* brian@freeswitch.org
*Twitter: @FreeSWITCH , @briankwest* http://www.freeswitchbook.com (50% Discount using code FreeSwitch50) http://www.freeswitchcookbook.com (50% Discount using code FreeSwitch50) https://www.gofundme.com/freeswitch_ubuntu
Got Bugs? Report them here <https://freeswitch.org/jira>! | Reddit: /r/freeswitch <https://www.reddit.com/r/freeswitch>
*T:*+19184209001 | *F:*+19184209002 | *M:*+1918424WEST (9378) *iNUM:*+883 5100 1420 9001 | *ISN:*410*543 | *Skype:*briankwest _________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- *Brian West* brian@freeswitch.org *Twitter: @FreeSWITCH , @briankwest* http://www.freeswitchbook.com (50% Discount using code FreeSwitch50) http://www.freeswitchcookbook.com (50% Discount using code FreeSwitch50) https://www.gofundme.com/freeswitch_ubuntu Got Bugs? Report them here <https://freeswitch.org/jira>! | Reddit: /r/freeswitch <https://www.reddit.com/r/freeswitch> *T:*+19184209001 | *F:*+19184209002 | *M:*+1918424WEST (9378) *iNUM:*+883 5100 1420 9001 | *ISN:*410*543 | *Skype:*briankwest
participants (8)
-
Brian West
-
Dragos Oancea
-
Dragos Oancea
-
Emrah
-
Giacomo Vacca
-
Joaquin Alzola
-
Julien Chavanton
-
Michael Jerris