The Slackware OS patches were successfully applied to on Wed May 13 2015.

Welcome to the Slackware Documentation Project

NOTE: on my systems, my default card is 1 and default device is 0 so I will use 1,0 through out this page

Sound Problems on Slackware

Investigate the problem

1) See which kernel modules are loaded:

   lsmod | grep snd

Use this information along with your motherboard sound chipset to verify that the correct sound drivers are loading.

2) See which sound devices are detected by alsa:

   aplay -l

Most likely, alsa is loading the correct modules but setting the wrong sound device as default.

3) Test sound devices to see which one(s) work:

   alsamixer 0
   <F6>
   <select a card(s)>
   <adjust volumes and make sure they aren't muted>
   <ESC>
   
   aplay -D plughw:0,0 test.wav   (WHERE 0,0 is card/slot 0, device 0 and test.wav is a sound file e.g. /usr/share/sounds/alsa/Noise.wav)
   aplay -D plughw:0,1 test.wav
   aplay -D plughw:1,0 test.wav
   aplay -D plughw:1,1 test.wav

PROBLEM: alsa is setting the wrong device as the default sound; you can force the correct default as follows:

FIX: Create /etc/asound.conf and add an entry for the working card/slot and device:

  defaults.pcm.card 1
  defaults.pcm.device 0
  defaults.ctl.card 1

-or-

  pcm.!default {
    type hw
    card 1
    device 0
    }
  ctl.!default {
    type hw
    card 1
    }

OR, if you just want the changes for a single user create ~/.asoundrc in the user's home directory and put the above in it…


PROBLEM: Volume is low even with all controls at max.

FIX: Enable the alsa pre-amp.

1) Edit/Create /etc/asound.conf and add

  pcm.!default {
     type plug
     slave.pcm "softvol"
     }
     
  pcm.softvol {
     type softvol
     slave {
        pcm "dmix:1,0"
        }
     control {
        name "Pre-Amp"
        card 1
        }
     min_dB -5.0
     max_dB 20.0
     resolution 6
     }

WHERE: “dmix:1,0” is card 1 and device 0

2) Reboot

3) After you reboot a PREAMP control is supposed to appear in your mixer controls but, it doesn't due to a quirk. To get it to appear, open and close a media player (mplayer, dragon player or etc.). After you do this, it should appear in the mixer (you may have to SELECT CONTROLS to see it). When you reboot, it will disappear again until you open a media player. To make it 'stick', set your alsa volumes to where you want and run “alsactl store”. The PREAMP controls should appear normally after that.


PROBLEM: No equalizer.

FIX: Enable the equalizer

1) Edit/Create /etc/asound.conf and add

 ctl.equal {
    type equal;
    }
   
    pcm.plugequal {
      type equal;
      slave.pcm "plughw:1,0";
      }
    
    pcm.!default {
      type plug;
      slave.pcm plugequal;
      }

WHERE: “plughw:1,0” is card 1 and device 0

To access the equalizer, run “alsamixer -D equal”

Sources

AlienBOB's webpages and ALOT of Googling.


In Other Languages
Translations of this page?:
QR Code
QR Code howtos:hardware:sound_problems_on_slackware (generated for current page)