ALSA fix

I have been haunted with ongoing trouble with ALSA on my laptop. The problem I have had with ALSA version 1.0.16 is that on first boot sound is muted (and cannot be un-muted with a mixer). I have to run the ALSA Wizard, then sound works on subsequent boots.

I did report this awhile back on my blog. The Wizard has a function, set_mixers(), that is the key to get sound to un-mute on my laptop. I have this function extracted to /etc/rc.d/functions4puppy4.

However, I have still been having problems. Someone on the forum posted recently that sometimes not executing 'rc.alsa' at bootup fixes the problem (tempestuous?). I currently have this in /etc/rc.d/rc.services:

if [ "`lsmod | grep '^snd_'`" != "" ];then

rm -f /var/lock/subsys/alsasound 2> /dev/null #or alsa will not start.

#v405 snd-mixer-oss loads but the other 2 don't, needed...
#v406 comment out, have restored aliases in /etc/modprobe.conf... v407 back in...
modprobe -n snd-mixer-oss
modprobe -n snd-seq-oss
modprobe -n snd-pcm-oss

#v408 comment-out...
#/etc/rc.d/rc.alsa start

#v408 my laptop needs this hack to get sound to start...
if [ ! -f /etc/asound.state ];then
set_mixers #in functions4puppy4
else
alsactl restore
fi
fi


I'm not excuting rc.alsa. Works fine on my laptop, will test on other PCs.
Note, /etc/rc.d/rc.shutdown runs 'alsactl store' to save settings to /etc/asound.state.

Posted on 2 Sep 2008, 15:55


Comments:

Posted on 2 Sep 2008, 20:04 by tempestuous
alsa scripts
Yeah, that was me. After playing with ALSA for five years now, I think that the ALSA startup script is close to useless. Just load your ALSA driver with /etc/modules.conf and sound is good to go.

To save mixer settings just put "alsactl store" in the shutdown scripts, and "alsactl restore" in the startup scripts.

Oh, and disable those kludgey ALSA-OSS modules and the audio system will be lean and mean.