Discussion:
[Freeswitch-users] Improving voice quality
Adam Ben-Ayoun
2015-05-12 16:59:17 UTC
Permalink
Hi guys,

We are using Freeswitch as a audio "MCU" for WebRTC using mod_conference,
we are currently using mobile clients on both Android and iOS. The voice
quality is good but not as good as Hangouts for example, there are small
cut-offs every now and then that affects the overall experience. We are
trying to understand the reason for that, maybe it's Freeswitch mixing
algorithm, our servers infrastructure, or something else. We did tried
Janus audio conference demo and it was very good (we used chrome on Android
which should use pretty much the same stack). We really need help figuring
this out. I want to first make sure it's not our infrastructure (mainly
network/CPU). We are using virtualized m3.large on AWS (2 vCPUs and 7.5GB
RAM). Maybe there's a certain instance type on a certain provider that is
known to give the best quality? Any ideas on how to go about this?

Thanks,
Adam
c***@ccs.covici.com
2015-05-12 17:27:51 UTC
Permalink
How about using physical hardware?
Post by Adam Ben-Ayoun
Hi guys,
We are using Freeswitch as a audio "MCU" for WebRTC using mod_conference,
we are currently using mobile clients on both Android and iOS. The voice
quality is good but not as good as Hangouts for example, there are small
cut-offs every now and then that affects the overall experience. We are
trying to understand the reason for that, maybe it's Freeswitch mixing
algorithm, our servers infrastructure, or something else. We did tried
Janus audio conference demo and it was very good (we used chrome on Android
which should use pretty much the same stack). We really need help figuring
this out. I want to first make sure it's not our infrastructure (mainly
network/CPU). We are using virtualized m3.large on AWS (2 vCPUs and 7.5GB
RAM). Maybe there's a certain instance type on a certain provider that is
known to give the best quality? Any ideas on how to go about this?
Thanks,
Adam
----------------------------------------------------
----------------------------------------------------
_________________________________________________________________________
http://www.freeswitchsolutions.com
Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com
FreeSWITCH-users mailing list
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
--
Your life is like a penny. You're going to lose it. The question is:
How do
you spend it?

John Covici
***@ccs.covici.com

_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
***@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-***@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
Oleg Stolyar
2015-05-12 18:04:16 UTC
Permalink
Have you tried it with non-mobile WebRTC clients? Is there the same
problem?

I am using mod_conference on FS hosted on AWS m3.xlarge instance and I have
not noticed audio problem. But my WebRTC clients are not mobile but rather
Chrome on PCs.
Post by Adam Ben-Ayoun
Hi guys,
We are using Freeswitch as a audio "MCU" for WebRTC using mod_conference,
we are currently using mobile clients on both Android and iOS. The voice
quality is good but not as good as Hangouts for example, there are small
cut-offs every now and then that affects the overall experience. We are
trying to understand the reason for that, maybe it's Freeswitch mixing
algorithm, our servers infrastructure, or something else. We did tried
Janus audio conference demo and it was very good (we used chrome on Android
which should use pretty much the same stack). We really need help figuring
this out. I want to first make sure it's not our infrastructure (mainly
network/CPU). We are using virtualized m3.large on AWS (2 vCPUs and 7.5GB
RAM). Maybe there's a certain instance type on a certain provider that is
known to give the best quality? Any ideas on how to go about this?
Thanks,
Adam
_________________________________________________________________________
http://www.freeswitchsolutions.com
Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com
FreeSWITCH-users mailing list
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
Adam Ben-Ayoun
2015-05-12 19:44:07 UTC
Permalink
We tried on c4.4xlarge with dedicated tenancy and it's pretty much the
same. Any special config you applied to the machine? I am using CentOS 6.
Post by Oleg Stolyar
Have you tried it with non-mobile WebRTC clients? Is there the same
problem?
I am using mod_conference on FS hosted on AWS m3.xlarge instance and I
have not noticed audio problem. But my WebRTC clients are not mobile but
rather Chrome on PCs.
Post by Adam Ben-Ayoun
Hi guys,
We are using Freeswitch as a audio "MCU" for WebRTC using mod_conference,
we are currently using mobile clients on both Android and iOS. The voice
quality is good but not as good as Hangouts for example, there are small
cut-offs every now and then that affects the overall experience. We are
trying to understand the reason for that, maybe it's Freeswitch mixing
algorithm, our servers infrastructure, or something else. We did tried
Janus audio conference demo and it was very good (we used chrome on Android
which should use pretty much the same stack). We really need help figuring
this out. I want to first make sure it's not our infrastructure (mainly
network/CPU). We are using virtualized m3.large on AWS (2 vCPUs and 7.5GB
RAM). Maybe there's a certain instance type on a certain provider that is
known to give the best quality? Any ideas on how to go about this?
Thanks,
Adam
_________________________________________________________________________
http://www.freeswitchsolutions.com
Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com
FreeSWITCH-users mailing list
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.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
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
Oleg Stolyar
2015-05-12 19:59:14 UTC
Permalink
Nothing special except maybe I am using PCMU instead of Opus. I am using
Ubuntu 14 now but it also worked fine with CentOS 5.9.

Just for my own education - are you seeing the same issues with non-mobile
clients?
Post by Adam Ben-Ayoun
We tried on c4.4xlarge with dedicated tenancy and it's pretty much the
same. Any special config you applied to the machine? I am using CentOS 6.
Post by Oleg Stolyar
Have you tried it with non-mobile WebRTC clients? Is there the same
problem?
I am using mod_conference on FS hosted on AWS m3.xlarge instance and I
have not noticed audio problem. But my WebRTC clients are not mobile but
rather Chrome on PCs.
On Tue, May 12, 2015 at 9:59 AM, Adam Ben-Ayoun <
Post by Adam Ben-Ayoun
Hi guys,
We are using Freeswitch as a audio "MCU" for WebRTC using
mod_conference, we are currently using mobile clients on both Android and
iOS. The voice quality is good but not as good as Hangouts for example,
there are small cut-offs every now and then that affects the overall
experience. We are trying to understand the reason for that, maybe it's
Freeswitch mixing algorithm, our servers infrastructure, or something else.
We did tried Janus audio conference demo and it was very good (we used
chrome on Android which should use pretty much the same stack). We really
need help figuring this out. I want to first make sure it's not our
infrastructure (mainly network/CPU). We are using virtualized m3.large on
AWS (2 vCPUs and 7.5GB RAM). Maybe there's a certain instance type on a
certain provider that is known to give the best quality? Any ideas on how
to go about this?
Thanks,
Adam
_________________________________________________________________________
http://www.freeswitchsolutions.com
Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com
FreeSWITCH-users mailing list
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.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
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.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
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
Adam Ben-Ayoun
2015-05-12 21:42:55 UTC
Permalink
Oleg, we did try Chrome on PC in the past, indeed it gave better results. I
will retry again soon.
Post by Oleg Stolyar
Have you tried it with non-mobile WebRTC clients? Is there the same
problem?
I am using mod_conference on FS hosted on AWS m3.xlarge instance and I
have not noticed audio problem. But my WebRTC clients are not mobile but
rather Chrome on PCs.
Post by Adam Ben-Ayoun
Hi guys,
We are using Freeswitch as a audio "MCU" for WebRTC using mod_conference,
we are currently using mobile clients on both Android and iOS. The voice
quality is good but not as good as Hangouts for example, there are small
cut-offs every now and then that affects the overall experience. We are
trying to understand the reason for that, maybe it's Freeswitch mixing
algorithm, our servers infrastructure, or something else. We did tried
Janus audio conference demo and it was very good (we used chrome on Android
which should use pretty much the same stack). We really need help figuring
this out. I want to first make sure it's not our infrastructure (mainly
network/CPU). We are using virtualized m3.large on AWS (2 vCPUs and 7.5GB
RAM). Maybe there's a certain instance type on a certain provider that is
known to give the best quality? Any ideas on how to go about this?
Thanks,
Adam
_________________________________________________________________________
http://www.freeswitchsolutions.com
Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com
FreeSWITCH-users mailing list
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.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
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
Ken Rice
2015-05-12 22:00:01 UTC
Permalink
Are you sure what you are hearing is not just the noise gate? (squelch in
old school radio terms)

As far as audio quality goes it should blow hangouts away.... Of course as
with anything running on commodity shared virtual server hosting your
mileage will vary.
We tried on c4.4xlarge with dedicated tenancy and it's pretty much the same.
Any special config you applied to the machine? I am using CentOS 6.
Have you tried it with non-mobile WebRTC clients?  Is there the same problem?
I am using mod_conference on FS hosted on AWS m3.xlarge instance and I have
not noticed audio problem.  But my WebRTC clients are not mobile but rather
Chrome on PCs.
Post by Adam Ben-Ayoun
Hi guys,
We are using Freeswitch as a audio "MCU" for WebRTC using mod_conference, we
are currently using mobile clients on both Android and iOS. The voice
quality is good but not as good as Hangouts for example, there are small
cut-offs every now and then that affects the overall experience. We are
trying to understand the reason for that, maybe it's Freeswitch mixing
algorithm, our servers infrastructure, or something else. We did tried Janus
audio conference demo and it was very good (we used chrome on Android which
should use pretty much the same stack). We really need help figuring this
out. I want to first make sure it's not our infrastructure (mainly
network/CPU). We are using virtualized m3.large on AWS (2 vCPUs and 7.5GB
RAM). Maybe there's a certain instance type on a certain provider that is
known to give the best quality? Any ideas on how to go about this?
Thanks,
Adam
_________________________________________________________________________
http://www.freeswitchsolutions.com
Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com
FreeSWITCH-users mailing list
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.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
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.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
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
--
Ken
http://www.FreeSWITCH.org
http://www.ClueCon.com
http://www.OSTAG.org
irc.freenode.net #freeswitch
Twitter: @FreeSWITCH
Bob Hartwig
2015-05-12 22:29:59 UTC
Permalink
"for example, there are small cut-offs every now and then"

Have you tried setting "conference-flags" to "audio-always" in
conference.conf.xml?
Oleg Stolyar
2015-05-13 00:15:08 UTC
Permalink
Bob has a good point. Not sure about the flag but I do have energy-level
set to 0 in my conference.conf.xml

<param name="energy-level" value="0"/>
Post by Bob Hartwig
"for example, there are small cut-offs every now and then"
Have you tried setting "conference-flags" to "audio-always" in
conference.conf.xml?
_________________________________________________________________________
http://www.freeswitchsolutions.com
Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com
FreeSWITCH-users mailing list
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
Adam Ben-Ayoun
2015-05-13 09:33:24 UTC
Permalink
Yes, it's a good point, energy level does produce choppiness, but we are
using 0 for some time now, we also tried audio-always and it's pretty much
the same. In addition, we are using ***@16000h since it gave the least
choppiness compared to OPUS/others.
Post by Oleg Stolyar
Bob has a good point. Not sure about the flag but I do have energy-level
set to 0 in my conference.conf.xml
<param name="energy-level" value="0"/>
Post by Bob Hartwig
"for example, there are small cut-offs every now and then"
Have you tried setting "conference-flags" to "audio-always" in
conference.conf.xml?
_________________________________________________________________________
http://www.freeswitchsolutions.com
Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com
FreeSWITCH-users mailing list
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.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
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
Adam Ben-Ayoun
2015-05-13 09:54:06 UTC
Permalink
Here is the conference config in case there are some low hanging fruits in
this area:

<profile name="test">
<param name="domain" value="$${domain}"/>
<param name="rate" value="16000"/>
<param name="interval" value="30"/>
<param name="energy-level" value="0"/>
<param name="muted-sound" value="conference/conf-muted.wav"/>
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/>
<param name="moh-sound" value="$${hold_music}"/>
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/>
<param name="exit-sound"
value="tone_stream://%(500,0,300,200,100,50,25)"/>
<param name="kicked-sound" value="conference/conf-kicked.wav"/>
<param name="locked-sound" value="conference/conf-locked.wav"/>
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/>
<param name="is-unlocked-sound"
value="conference/conf-is-unlocked.wav"/>
<param name="pin-sound" value="conference/conf-pin.wav"/>
<param name="bad-pin-sound" value="conference/conf-bad-pin.wav"/>
<param name="caller-id-name" value="$${outbound_caller_name}"/>
<param name="caller-id-number" value="$${outbound_caller_id}"/>
<param name="comfort-noise" value="0"/>
<param name="conference-flags" value="audio-always"/>
</profile>
Post by Adam Ben-Ayoun
Yes, it's a good point, energy level does produce choppiness, but we are
using 0 for some time now, we also tried audio-always and it's pretty much
choppiness compared to OPUS/others.
Post by Oleg Stolyar
Bob has a good point. Not sure about the flag but I do have energy-level
set to 0 in my conference.conf.xml
<param name="energy-level" value="0"/>
On Tue, May 12, 2015 at 3:29 PM, Bob Hartwig <
Post by Bob Hartwig
"for example, there are small cut-offs every now and then"
Have you tried setting "conference-flags" to "audio-always" in
conference.conf.xml?
_________________________________________________________________________
http://www.freeswitchsolutions.com
Official FreeSWITCH Sites
http://www.freeswitch.org
http://confluence.freeswitch.org
http://www.cluecon.com
FreeSWITCH-users mailing list
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.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
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
Loading...