[alsa-devel] [CONF] All C-Media Codecs based 5.1 Channel USB- Headsets

Takashi Iwai tiwai at suse.de
Tue Nov 6 13:29:51 CET 2007

At Sun, 04 Nov 2007 08:36:56 +0100,
thomas schorpp wrote:
> Report to devlist as requested from USB-Audio.conf header:

Thanks for the report.

> 1. all this headsets with windriver inf files + manual showing c-media driver must have 
> the cm106x series 7.1 channel usb-codec in. there's no other from c-media for the design of 5.1 
> channel usb headsets available at this time, see:
> http://www.cmedia.com.tw/?q=en/usb_audio
> 2. the headset interface shows up with 8 channels in lsusb -v , 1 8-ch pcm in /proc,
>  and must be driven with 
> surround7.1 pcm plug instead of surround5.1 or it will not work. speaker-test program 
> works with -c6 -Dsurround7.1, test with -c8 works too, but shows that no SideL/R -speakers 
> connected/routed/downmixed ( Speedlink Medusa 5.1 Mobile USB Headset, cm106L)

OK, and what about surround40?  Does it work as is (I don't expect so,

For adding the proper configuration, please check the content of
/proc/asound/cards.  It gives the name string.  
If the proc entry is like:

 0 [Foo   ]: FOO - FOO BAR
             FOO BAR DEVICE (Blah 0.0)

then "FOO BAR" is the name string that we need to pass.
(FYI, "FOO" is the driver string, "Foo" is the ID string and "FOO BAR
DEVICE (Blah 0.0)" is the longname string.)

Now add the following to ~/.asoundrc:

USB-Audio."FOO BAR".pcm.surround51 {
	@args [ CARD ]
	@args.CARD { type string }
	type route
	ttable.0.0 1
	ttable.1.1 1
	ttable.2.4 1
	ttable.3.5 1
	ttable.4.2 1
	ttable.5.3 1
	slave {
		pcm {
			type hw
			card $CARD
			device 0
		channels 8

Also, /proc/asound/card*/stream* files would be helpful to understand
more, at best, together with lsusb -vv output.


More information about the Alsa-devel mailing list