fuschlberger.net - Howto on Linux, C-Media USB Audio Adapter
Howto setup C-Media USB Audio Adapter and Linux
On this page you will a find a short guide on how to set up this audio adapter
under Linux and make it work.
I wrote it because when I searched google I found nothing about this Hardware (and - by the way - it was a bargain on amazon).
All comments, suggestions etc. are welcome. Please contact me at wf-hp@gmx.net.
I needed an external audio adapter for skype because with the soundcard in my
computer a microphone didn't work (now after changing to ALSA it does). So I
had a look in the 'net and found this hardware really cheap so I thought I
would give it a try, although the retailer
could not tell me whether it was supported by linux.
Luckily I got it to work :-)
Setting up the USB Audio Adapter
I assume you have the USB-subsystem up and running.
If you are using hotplug, it probably will work out of the box,
with usbmgr some customization will be necessary.
Step 1: Kernel-Config
It should work with a vanilla-kernel at least since kernel 2.6.14. The ALSA-USB-module should be part of the kernel, otherwise you would have to patch it.
In addition to the usual ALSA-support, compile (recommended: as a module)
usbhid,
snd_usb_audio.
The necessary Parameters in the kernel-.config-file are
CONFIG_SOUND=y
CONFIG_SND=y
CONFIG_SND_TIMER=y
CONFIG_SND_PCM=y
CONFIG_SND_HWDEP=m
CONFIG_SND_RAWMIDI=m
CONFIG_SND_SEQUENCER=y
CONFIG_SND_OSSEMUL=y
CONFIG_SND_MIXER_OSS=y
CONFIG_SND_PCM_OSS=y
CONFIG_SND_USB_AUDIO=m
CONFIG_USB_HID=m
CONFIG_USB_HIDINPUT=y
Step 2: Configure USB-Subsystem
If you are using usbmgr: add these lines to
/etc/usbmgr/usbmgr.conf:
Restart usbmgr.
Now the kernel-modules will be loaded automatically when plugging in the audio
adapter.
After plugging the adapter in for the first time use alsamixer -c
1 (if you already have another soundcard configured as card 0) to adjust
the volume levels (for playback and don't forget the microphone!) to your
needs.
Step 3: Running skype
Update:
Recent versions of skype work with ALSA directly, so there is no reason to play
around like described below. Just select in the skype-Options the correct
ALSA sound-device for Audio In and Audio Out.
Kept for historical reasons:
I had to play around a lot until a found a solution. Skype 1.2.0.18 obviously
doesn't work with the emulated device /dev/dsp1 (altough
play does).
After some research a found some lines that have to be added to
~/.asoundrc or /etc/asound.conf (for system-wide
settings) in order to redirect the emulated device /dev/dsp0 to
the second ALSA-adapter (which is the USB-adapter).
pcm.dsp0 {
type plug
slave.pcm "hw:1,0"
}
Restart ALSA, run aoss skype (with /dev/dsp0) and
have fun.