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

Eliot Blennerhassett linux at audioscience.com
Tue Dec 7 04:11:59 CET 2010

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".

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

(I think the external jack is also only mono, at least when used as a
mic input?)

>>> So when the two channels are summed to make a mono (e.g. for
>>> telephony, or playback on mono internal speaker) it appears that there
>>> is no signal.
>>> Is there a way to "cure" this problem in the driver?  I can think of
>>> * Force internal mic capture to be mono (left only)
>>> * Copy left to right capture

Even in stereo mode!

>>> * Invert right capture
>>> but don't know how easy any are to implement.

Eliot Blennerhassett
AudioScience Inc.

More information about the Alsa-devel mailing list