PulseAudio should die. This is the basic truth. It’s got delays and causes choppy sound for a huge amount of people. Most of use use only PCI sound cards with skype and gnome MPlayer which work just fine with PA. But try playing games with wine or even native games such as supertuxkart. It’s not going to work. PulseAudio develops a choppy sound – so choppy it sounds as if it went through a mixer. Especially if using things like USB Headsets.
Sadly you can’t fix it in Mint 8 (and Ubuntu 9.10) as you did in 7 (and in Ubuntu 9.04). In Mint 7 you would just go to Control Centre, click on Audio (or Sound Preferences) and choose ALSA instead of PulseAudio. Then just remove PulseAudio and you are done. Sadly, loads of stuff are removed from new Gnome/Ubuntu/Mint to make it difficult. Somehow they are trying to force us to use this useless system called PulseAudio. Ok, enough rant. Here’s how to get Mint 8 *and Ubuntu Karmic 9.10) fixed:
# install alsa sudo apt-get install alsa-base alsa-tools alsa-tools-gui alsa-utils alsa-oss linux-sound-base alsamixergui esound esound-clients esound-common libesd-alsa0 gnome-alsamixer # remove pulseaudio sudo apt-get purge pulseaudio gstreamer0.10-pulseaudio; sudo apt-get autoremove # not sure why, only if I run the install line again it worked for me sudo apt-get install alsa-base alsa-tools alsa-tools-gui alsa-utils alsa-oss linux-sound-base alsamixergui esound esound-clients esound-common libesd-alsa0 gnome-alsamixer # run the configurator gstreamer-properties
Now in gstreamer properties window, choose ALSA as all Audio devices and choose the sound card you wish to use.
From now on:
gstreamer-properties gives you audio configuration window
gnome-alsamixer gives you sound configuration properties
The problem that we have is choosing default sound card if for example often using USB Headset. asoundconf-gtk won’t work as asoundconf was removed from alsa-utils. We can fix that by downgrading the package to previous release. Hopefully Ubuntu and Mint will fix that at some point. So, here goes:
sudo vi /etc/apt/sources.list
Find all occurrences of ‘karmic’ and replace with ‘jaunty’. Then save the file and execute the following, ignoring any broken dependencies:
sudo aptitude update sudo aptitude remove alsa-utils_ alsa-tools_ sudo aptitude install alsa-utils alsa-tools asoundconf-gtk
This way we removed the broken packages and reinstalled them together with asoundconf.
From now on, executing asoundconf-gtk with display a small window allowing you to choose the sound card you wish to use.
Edit sources.list like we did above and replace all occurances of ‘jaunty’ with ‘karmic’ now and then hold the 2 packages at current version, so upgrades won’t touch them:
sudo vi /etc/apt/sources.list sudo aptitude update sudo aptitude hold alsa-utils sudo aptitude hold alsa-tools
And we are almost done. Now put gstreamer-properties, gnome-alsamixer and asoundconf-gtk to desktop as shortcuts and you are there
Now the last problems that I encountered were:
1. Keyboard shortcuts for sound control don’t work after uninstalling PA, duh…
2. There is no sound control applet running in taskbar (in top-right corner next to all other icons), very annoying.
So I found someone doing quite a good job with a small Py script and thought to use that. After heavily modifying the script and making it work when default device is changed on the fly, everything is now as it should be. So, here you go, download the script, unzip it to /use/local/bin (you will need to become root or sudo).
Click here to download the script!
Now let’s install the python dependencies:
sudo aptitude install python-alsaaudio sudo aptitude install python-eggtrayicon
Now do the following:
1. Go to Startup Applications and set the following to start with your system:
/usr/local/bin/alsavol.py
/usr/local/bin/volbar.py
2. Go to Keyboard Shortcuts and Add 3 new shortcuts. Choose something for the name. For the command type in:
/usr/local/bin/alsa_master_up
Then click on the keyboard assignment to assign a key shortcut and then press the Volume Up key on your keyboard.
Repeat for:
/usr/local/bin/alsa_master_down
/usr/local/bin/alsa_master_mute
Ok, one last thing: don’t use asoundconf-gtk any more. To call the app, use the following (which will also restart the python scripts upon default device change):
/usr/local/bin/devsel
I know it looks like a lot of work, but trust me, follow this and in 15 minutes you will have sound. That’s less then VGA and sound drivers installation in Windows
Thanks,
Rob