[alsa-devel] How to define card specific pcm devices?

Tanu Kaskinen tanuk at iki.fi
Sat Aug 18 06:09:13 CEST 2012

On Sat, 2012-08-18 at 09:26 +0800, Raymond Yau wrote:
> 2012-8-17 下午10:51 於 "Tanu Kaskinen" <tanu.kaskinen at digia.com> 寫道:
> >
> > Ping?
> >
> > If card specific pcm definitions are not possible, would it be
> > acceptable to have a generic "front_left:CARD" or "first_channel:CARD"
> > pcm, which would transform "front:CARD" or "hw:CARD" into a mono device?
> As pulseaudio server use SND_PCM_NO_AUTO_CHANNEL which diable channel
> conversion, this left channel device only work with other alsa applications
> except pulseaudio when your sound card does not support mono.

So are you suggesting that Alsa doesn't need any changes, because all
other applications allow automatic channel conversion, and therefore
this is a PulseAudio specific problem and should be fixed in PulseAudio?

> http://cgit.freedesktop.org/pulseaudio/pulseaudio/commit/?id=ff4af902cf4ac07c5f1da3b6dacbb3195c7c222d
> the solution is to change the mixing in pulseaudio by using left channel
> for this mic and those stereo mic with inverted phase , and average for
> mono playback device . stereo mic and line-in

Sure this can be fixed in PulseAudio with card specific configuration,
but if at all possible, I want to avoid card specific configuration in
PulseAudio. I believe one of the main points of UCM is to avoid hardware
specific configuration in applications using Alsa.

This could be solved also by stating in the UCM configuration that only
the left channel of the stereo device contains useful data. This would
avoid having card specific configuration in applications, but handling
that information adds more complexity in applications. Having a proper
mono device in Alsa would avoid any changes in applications.

> how about the 4 channel mic?

What about it? The discussion stopped when I asked what should be the
name for the device. I asked whether "4channelinput" would be good, but
got no answers. At PulseAudio side we figured that "hw" works well
enough in practice, so there was not much pressure for me to keep the
discussion alive.


More information about the Alsa-devel mailing list