[pulseaudio-discuss] acceptable noise level for mic boost

Tanu Kaskinen tanu.kaskinen at linux.intel.com
Fri Nov 29 08:22:08 PST 2013


On Fri, 2013-11-22 at 18:34 +0100, Oleksij Rempel wrote:
> Am 22.11.2013 17:48, schrieb Tanu Kaskinen:
> > On Thu, 2013-11-21 at 16:42 +0100, Oleksij Rempel wrote:
> >> Hello all,
> >>
> >> i posted this email to ALSA, but probably PA devs have some ideas too.
> >>
> >> ======================================================================
> >> Hello Takashi,
> >>
> >> what is acceptable noise level for mic boost?
> >> My laptop has three levels of mic boost (+36dB). Level 3 is useless
> >> since noise level will be about 0db. With level 1 i get -12dB noise, so
> >> there is almost 12dB room for data... but it is not enough for normal
> >> speech, which is about 20dB.
> >>
> >> Are there any ALSA guide for HW designers, which will say some thing
> >> like acceptable levels are 90-20dB?
> >> There are some Skype and Microsoft prescriptions for certification.
> >> For example M$ prescribe 18dB or more for speech to noise ration for
> >> build in mics. It sound like good number to start.
> >>
> >> In my case, i need to remove mic boost completely to guarantee minimum
> >> 18dB SpNR. Suddenly i didn't found correct way to do it.
> >> I will be thankful for some tip.
> >>
> >> =====================================================================
> >>
> >> So my question to PA devs. Do pulse audio need to know about noise level
> >> of microphone? Will it help to make correct decisions? Especial for VoIP
> >> and automatic gain control.
> > 
> > We don't currently have any idea of the noise level, so we don't have
> > code for adjusting our decisions based on that information either. So,
> > I'd say that pulseaudio doesn't *need* to know about the noise level. Of
> > course, if someone someday complains that pulseaudio does bad decisions
> > because it doesn't take the noise level into account, then we would need
> > that information.
> > 
> 
> Thank you for your response.
> I have more questions:
> Skype continuously trying to adjust record level.

I've never used Skype, but I think I've heard that it allows you to
disable the automatic gain control. I'd expect that to help with your
problem.

> If there is a silence
> it will try to push the input volume as close to 0dB (in pulseaudio
> terms) as possible.

I'm not sure what you mean by "in pulseaudio terms".

> For my laptop 0dB(in PA) will mean some thing +68dB over base volume
> (ALSA).
> The noise will reach 0dBFS.
> Well, it wont kill any one, but it sound bad.
> 
> What 0dB mean in pulseaudio?

If you mean the dB level that e.g. pavucontrol shows, it means the
maximum volume of the hardware. Higher than 0dB means that PulseAudio
further amplifies the hardware maximum volume with software.

> Why pulseaudio has capture volume range -130 - +11dB? Is it possible to
> fit this gain to 16-bit PCM?

I don't know what you mean. Without dither, 16-bit PCM has dynamic range
of 96 dB, but I don't think we need to care about that. PulseAudio uses
an integer volume type whose range is from 0 (muted) to 32768 (0dB). If
you set volume to 1, which is the lowest non-mute value, IIRC that
corresponds to attenuation by more than -200 dB, which is silly in a
sense, but then again, usually you don't set volume to 1, and the
attenuation decreases quickly when moving up the volume scale. But if
you do set the volume to 1, corresponding to something like -200 dB,
then we ask ALSA to provide us attenuation of -200 dB. If the lowest
level that ALSA can provide is -130 dB, then that's what we use and do
the rest of the attenuation in software. We don't need to care about the
signal dynamic range at any point.

-- 
Tanu



More information about the pulseaudio-discuss mailing list