Wednesday, January 26, 2011

One on Pulseaudio

Well, what if there are several sound cards? In my case I have two sound cards. The thing is up until now I was only using one of then (the other one was blacklisted in /etc/modprobe.d/blacklist. But now I wanted to use it and I managed to make both of them work, supposedly in the way I like: one of them as the default output card, and the other one for recording. But, since the one I now use for recording is the one I used to use for playback, some applications doesn't seem to have been aware of the change (e.g. flashplugin, vlc, amarok (this one needed a restart). Why?
I use KDE4 (Kubuntu) and I've the 'right' configuration chosen in 'System Configuration'-> 'Multimedia'. But somehow still that doesn't seem to work ...well, it doesn't.

At least in my case it was an, to me, odd Pulseaudio issue. The solution or workaround for me was quite simple:
1. create, if it doesn't already exist, a $HOME/.pulse/default.pa file and put a content like:

alsa_input.pci-0000_01_0b.0.analog-stereo

where you have to put your correctly identified sound card.
2. How to identify the sound card? Well you have at least to know how many you have and, from the ones available, which you want to use for playback purposes. That you can do with the command: lspci -v. In my case I get:

~$ lspci -v|grep -i audio
00:1b.0 Audio device: Intel Corporation N10/ICH 7 Family High Definition Audio Controller (rev 01)
01:02.0 Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 07)

which would translate to ether:

alsa_input.pci-0000_01_02.0.analog-stereo

in the case of the SB Live! card, or
alsa_input.pci-0000_01_0b.0.analog-stereo

for the Intel sound card.
3. restart pulse (well, if it's not configured to run as a system-wide sound server, just kill the current instance):

$ puslseaudio -k


Try now www.youtube.com with Firefox or GoogleChrome! (maybe restart you browser, of course)

No comments: