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=59c774ed5ee00e9623a20...
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.