[alsa-devel] Help wanted: emachines em350 internal mic

Raymond Yau superquad.vortex2 at gmail.com
Wed Dec 8 05:13:06 CET 2010


2010/12/8 Takashi Iwai <tiwai at suse.de>

> At Tue, 07 Dec 2010 16:11:59 +1300,
> Eliot Blennerhassett wrote:
> >
> > Thanks Raymond,
> >
> > On 03/12/10 15:33, Raymond Yau wrote:
> > >>> Greetings,
> > >
> > >
> > >>> There is only a single mic on this netbook. However, the alsa device
> > >>> shows up as stereo, and the right channel carries an inverted copy of
> > >>> the left channel.
> > >
> > >
> http://git.alsa-project.org/?p=alsa-lib.git;a=commit;h=59c774ed5ee00e9623a204c3234191d6a6d8cf7a
> >
> > Commitlog was "Add route_policy copy to HDA-Intel.conf for capture
> > Since some digital mics have the phase-inversion problem in one channel,
> > adding both channels for mono stream results in the noise. Use
> > route_policy copy to avoid that situation."
> >
> > As far as I can guess, the commit helps when an application asks to
> > record mono from the stereo device, by copying L rather than summing L+R
> >
> > My machine already has this, however it doesn't really fix the root of
> > the problem.
>



> >
> > Because the internal mic appears as a stereo device, rather than a mono,
> > applications can open it as stereo.
> >
> > Only later when the resulting signal L+R is sent to a mono output does
> > the signal "disappear".
> >
>

In theory , this should be (L+R)/2 for those stereo mic without phase
inversion to prevent clipping occur when sent to a mono output


> > So I'm back to wondering how to force an app (primarily PulseAudio) to
> > see the mic as mono?
>
> Via pulse configuration?
>

 PA server use SND_PCM_NO_AUTO_CHANNELS , any plugin which defined in the
device string in the profile has no effect if your hardware does not support
1 channel


so you need PA to provide downmixing option for recording mono from stereo
mic
1) (Left+Right)/2
2) Left
3) Right


More information about the Alsa-devel mailing list