Question: set one soundcard for playback, another for record

I have 2 soundcard - a M/B built in Intel AC97 and an old Aureal (later SoundBlaster). This is because there’s a problem with Intel’s microphone in XP. So I use Intel for playback and Aureal for recording.

Now, how do I duplicate same setup in Suse (to avoid switching plugs) ? I am a bit lost in where to specify hardware to be used for recording and playback.

I don’t know how to do it.

As opposed to switching plugs, you could change your default card in YaST all the time per step#9: SDB:AudioTroubleshooting - openSUSE
… but I think that would get tiresome.

Its possible there is a .asoundrc file you could setup to do this, but again, I don’t know how.

If it were me looking for an answer, if no one in the forum pipes up than I would ask in IRC freenode #alsa.

This problem with the microphone with the Intel AC97, has it always been like that or did the mic circuitry fail at some point? If it has always been so, do you by any chance need to turn on the +20dB boost control? Many computer sound devices have a single mic input that handles both low and high output mics using a boost switch for the low output mics.

The problem is with “Connector sensing” feature of AC97 - i.e. it would lose mic every now and then. In Windows, the easiest thing was to just use 2nd card, since there I can easily specify different hardware sources for playback and recording. I don’t recall why I couldn’t just switch everything to Aureal, there was a reason though.

Coming to think of it, I now recall that during my short encounter with Ubuntu 9.10 the mic did work, so the problem is likely not with my setup but with Aureal drivers in SUSE.

Maybe it’s a matter of getting more bleeding edge ALSA drivers for SUSE?

Take a look at this URL: USB mic on Linux - Audacity Wiki

it was written with a USB mic in mind, but never mind that for the moment … look at this .asoundrc file:

 pcm.!default {
         type asym
         playback.pcm {
                 type plug
                 slave.pcm "hw:0,0"
         capture.pcm {
                 type plug
                 slave.pcm "hw:1,0"

This little ALSA configuration setting uses the default sound card as playback device (hw:0,0) and sets hw:1,0 (that in this example was a USB-mic) to become the default capture device.

So determine which device is which (ie which is hw:0,0 and which is hw:1,0 (and they may be something different)) on your PC and then try that. A restart of alsa will be needed to test the file.

The script:


will give you more information on your hardware.

I believe that a way for you to proceed.