Alsa Sound Setup Debian

Hear This

ALSA, the Advanced Linux Sound Architecuture produces great notes and faithful reproduction, but first you gotta get it to sing. Most times, ALSA works out of the box, sometimes it doesn't. You have to roll your sleeves up and start digging.

Step Zero: Sound Card
Do you know which sound card/chip is installed on your system? No? Go dig out your motherboard box, or computer manual and identify your sound card/chip. You need this before you can fix your problem. Some systems don't have a plug-in card. The sound card is on-board chip on the motherboard.

Go find it.

Once you have the name/make/model of your sound card/chip, you can start.

Step One: ALSA
Is alsa installed on your system?

cat /proc/asound/version

cat /dev/sndstat

Displays ALSA version. Confirms ALSA installed. If not install it. As root do:

aptitude install alsa-base alsa-utils

Step Two: AlsaMixer
Check sound levels using alsamixer. Fire up alsamixer and check volume levels. The majority of sound problems relate to volume levels too low or mute set. Run alsamixer do:

alsamixer

Use up and down arrow keys to increase/decrease volume levels. Increase volume levels at least 50% or halfway. Ensure Master level is turned up. Ensure PCM is turned up. Also turn up Front level. This applies if your card is multi-channel, 5.1 or similar.

Note
If the volume levels are set high and you still have no sound, check if any channel is marked [MM] It means the channel is muted. Press 'M' on the keyboard to un-mute the sound on that channel. Press 'M' again to toggle the setting.

Make sure 'Master', 'PCM' and 'Front' are all un-muted and volume turned up. Press 'Esc' to exit. You can run a simple sound test using 'speaker-test' to check for sound output.

Step Three: Sound Card/Chip
Is the sound card/chip detected? I have an Intel on-board sound card.

# cat /proc/asound/cards

# cat /proc/asound/cards
 0 [Intel          ]: HDA-Intel - HDA Intel
                      HDA Intel at 0xf9ff8000 irq 22


lspci | grep Audio
00:1b.0 Audio device: Intel Corporation 82801JI (ICH10 Family) HD Audio Controller


lspci -v -s00:1b.0
00:1b.0 Audio device: Intel Corporation 82801JI (ICH10 Family) HD Audio Controller
        Subsystem: ASUSTeK Computer Inc. Device 82fe
        Flags: bus master, fast devsel, latency 0, IRQ 22
        Memory at f9ff8000 (64-bit, non-prefetchable) [size=16K]
        Capabilities:
        Kernel driver in use: HDA Intel

Step Four: Sound Card Modules
Is the right sound card device module installed for your sound card??

cat /proc/asound/modules

The 2.6.x kernel has modules in-built for common sound cards. If the module for your sound card is not installed. Google it, download and install using modprobe. As root do:

modprobe -v module-name.ko

Also see man modprobe.

Step Five: Reconized Cards
Your card recognised by the system? Run aplay -l to list recognized cards: 

aplay -l

**** List of PLAYBACK Hardware Devices ****
card 0: Intel [HDA Intel], device 0: ALC1200 Analog [ALC1200 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Intel [HDA Intel], device 1: ALC1200 Digital [ALC1200 Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Okay, we can see the card.

Step Six: Default Sound Card

Test the default sound card. Particularly if you have more than one card installed.

aplay -Dplughw:0,0 -c2 /soundfile.wav

If you have a media player use it to play a sound file:

mplayer ~/Music/funky-file.mp3


Further Steps

If you have followed the above and still have no sound, check the ALSA site to ensure your sound card is supported by ALSA.

Check out this ALSA page for details on supported sound cards and click to find your card/model. If its not there, your out of luck. Buy a new card that is supported. Most supported cards are cheap. That will fix your "No Sound" problem.

If you have more than two cards on your system you need to disable or remove one of the cards and that may fix your problem.

Done!

No comments:

Post a Comment