Comprehensive Sound Problem Solutions Guide v0.5e
UPDATE - The instructions on this page have a new home at
Comprehensive_Sound_Problems_Solutions_Guide
I'm still leaving a copy here in the meantime, until I am happy with the layout there.
Version History (DD-MM-YY)
28-06-06 - version 0.1 - initial creation
28-06-06 - version 0.2 - alsa-source guide added
28-06-06 - version 0.3 - alsa-drivers from alsa-project guide added
29-06-06 - version 0.4 - multiple sounds and multiple cards support added
02-07-06 - version 0.4 - fixed mistake spotted by Jvaldezjr
04-07-06 - version 0.5a - layout changes - starting on MIDI guide - Read *EXPERIMENTAL*
04-07-06 - version 0.5a - added part on saving sound settings so they are restored after reboot.
11-07-06 - version 0.5b - added guide for doing a *fresh* kernel installation
13-07-06 - version 0.5c - minor layout edit - moved *fresh* kernel above compilation to see if it is more help and if it solves more problems.
15-07-06 - version 0.5d - usage update
17-07-06 - version 0.5e - added Advanced Guides by other Ubuntuers
21-08-06 - Initial phase of moving page to UDSF
23-08-06 - Added a Further Reading section - first link thanks to segalion.
12-11-06 - version 0.6 - finally added "Adding the current user to the audio group" - and a few formatting fixes
Background / Notes / Warnings
If you find that you have followed the instructions on this post that something did not and you don't know why, it will be better if you start a new post and cite the fact that you used the instructions on this guide to solve your problem. Your post might get lost in all the other posts and you might not get help.
If you however find a solution to your problem, and you fee that the solution should be here, don't hesistate to post. However, please be specific.
- If you cannot use hear anything, and you have just installed Ubuntu, then it could very possibly be a bug. It could be something as simple as not detecting your hardware the first time or evidence of a deeper problem. As fun as it is to find workarounds and fixes on your own or with help, Ubuntu developers need your feedback to see what is not working for you. That's right ladies and gentlemen, they would really really like it if you would file bug reports on http://launchpad.net under the Ubuntu distribution.
Note: To make it absolutely clear, when I say 'Ubuntu', I mean Ubuntu AND Kubuntu AND Xubuntu (for people who find this confusing - just accept it and don't feel bad - I and probably a whole lot others got confused when we started out).
Important syntax note: ALSA modules are denoted by the prefix 'snd' followed by the dash ' - ', followed by the module name (i.e. 'via82xx'). So the full name might be something like snd-via82xx. However, in some cases you will see an underscore ' _ ' instead of the dash. This is OK, do not let it confuse you. For all intensive purposes (installing modules or posting on forums) only use the dash ' - '.
General Help - Start here if you have no idea why sound is not playing
(1) Go to a shell and type: (2) Type this into the shell: Success - At this point, you should see your sound card listed. This is a positive sign because it means that Ubuntu is detecting the presence of your soundcard, but the drivers are not installed/running. Leave your shell running since you will need it.
(3) Check to see if the ALSA driver for your sound card exists. Go to http://www.alsa-project.org/alsa-doc/ and search for your sound card (chipset) manufacturer in the dropdown box. You'll be given a matrix of the sound cards made by the manufacturer. Try to match the chipset you found in step 2 with the driver(green hyperlink text).- Success - You will have found the driver for your soundcard's chipset.
(4) Now go back to the shell and type Now, press the TAB key BEFORE pressing the ENTER key to see a list of modules. Try to find the module that matches the driver you found in step 3.
For example, my driver is a via82xx so I would type, sudo modprobe snd-via82xx.Success
Type this into the shell
Code:
sudo nano /etc/modules
Play media using your favorite media player. Set your audio engine to alsa. In some cases, you have to configure your audio engine within another (media engine) like in Kaffiene in Kubuntu. If you hear sound, hurray!
One final step. Go onto Saving Sound Settings
- Failure -You have two options
- Move on to Getting the ALSA drivers from a *fresh* kernel. This step is easier and is recommended to users who might have been tinkering with their sound settings and want to revert back to the way it was just after installing Ubuntu (without reinstalling Ubuntu of course
)
Getting the ALSA drivers from a *fresh* kernel
Sometimes, sound might be configured correctly, but for some reason or another (tinkering) it stops working. One way to go back to the old setup is to reinstall Ubuntu. However, this step is actually quite unnecessary since you are reinstalling everything because of one thing.
A faster way, is to just remove the problematic packages and reinstall them cleanly.
(1) Remove these packages
Code:
sudo apt-get --purge remove linux-sound-base alsa-base alsa-utils
(2) Reinstall those same packages
Code:
sudo apt-get install linux-sound-base alsa-base alsa-utils
[LIST][*]
VERY IMPORTANT NOTE: Ubuntu (GNOME) users have reported that packages 'gdm' and 'ubuntu-desktop' are removed after removing the linux-sound-base packages. If this happens, then do the following
Code:
sudo apt-get install gdm ubuntu-desktop
(3) Reboot [*][LEFT]
VERY IMPORTANT NOTE: Xubuntu (XFCE) users have reported that packages 'gdm' and 'xubuntu-desktop' are removed after removing the linux-sound-base packages. If this happens, then do the following
Code:
sudo apt-get install gdm xubuntu-desktop
(3) Reboot
Now you may ask "I already had the packages, so why did I go through the trouble of removing them, then installing them". The answer lies in the --purge option which removes all the extra information that accumulated from tinkering and upgrading. After doing a purge then install, the packages are unpackaged as if it they are brand new.
(4) At this point, try using you should get your soundcard listed.- Success - Your soundcard is detected. Go onto the Using alsamixer section, then try playing something on your music or media player.
- Failure - Your card was not detected. You should try compiling your driver, so go onto ALSA drive Compilation.
ALSA driver Compilation
If you are here, then either your soundcard driver could not be loaded with modprobe, or you want to compile the drivers yourself from scratch. Good luck to you!
There are two main ways the sources of alsa-drivers are made available to you. One is though the apt-get system. Using this system would be the recommended system since most of the heavy lifting is done for you.
The other way, is getting the latest drivers from alsa-project.org. This page has the latest drivers available, which you might want to fix problems with. However, these have not been tested with Ubuntu and therefore should be used with caution.
Using alsa-source
Type the following to shell: (note: module-assistant is optional, it will compile the package for you)
Code:
sudo apt-get install build-essential linux-headers-$(uname -r) module-assistant alsa-source
Code:
sudo dpkg-reconfigure alsa-source
You now have a big blue dialog box (left and right keys to choose 'Yes' and 'No', Enter key proceed). Answer yes (for ISA-PNP - recommended by package maintainers), then yes again (for debugging - recommended by package maintainers).
Now you must pick which driver you want to install. Use space to select and deselect modules, and up and down to navigate.
From General Help step 3, you should know the name of your driver. Deselect 'all' (the * will go away), and select your driver. In my case, I deselected 'all' then selected 'via82xx'. Hit Enter. Almost home free!
If you chose module-assistant
Code:
sudo module-assistant a-i alsa-source
If the progress bar reaches 100% with no errors, you will have installed the drivers successfully. Resume this guide from General Help step 4.
If you did not choose module-assistant - Remember the name of your soundcard driver and use it place of the blue text below.
Code:
cd /usr/src sudo tar xjvf alsa-driver.tar.bz2 cd modules/alsa-driver
Code:
sudo ./configure --with-kernel=/usr/src/linux-headers-$(uname -r) --with-cards=<enter driver name here e.g. via82xx> --with-oss=yes
sudo make
sudo make install
If you get no error messages, you will have installed the drivers successfully.- Success - Resume this guide from General Help step 4.
Using drivers from alsa-project - update I now recommend using the stable version 1.0.12