Sound

Sound on the VIA VT82C686A

Linux
Tips
CDRW
Sound

The VIA VT82C686A and ALSA

Quite a few motherboards are starting to come out with built  in sound using the  VIA VT82C686A, and Redhat (at least versions up to 6.1)  doesn't have support for it. Fortunately, Rod Smith pointed me to the ALSA  sound driver.

Although it worked great for me, as always, your mileage may vary. While I specifically address the VIA chip, this should generally work for other PCI sound devices supported by ALSA.

Despite my not really understand much about using this, here is how I managed to get the ALSA stuff working with my VT82C686A. First download and unpack the three source files of drivers, libraries, and utilities.


The Procedure

  • For some reason, the ALSA folks decided to make you download three separate files, which will unpack into three separate directories; drivers, libraries, and utilities.
  • In the unpacked drivers directory, do the usual ./configure, make, and make install.
  • While still in the drivers directory, run the ./snddevices script to create the device files that ALSA uses.
  • Go to the libraries directoryand repeat ./configure, make, and make install.
  • Ditto for the utilities directory.
  • Modify the sound entries in /etc/conf.modules. I don't know whether all these entries are needed, but I left them in there and things work fine.

alias sound snd-card-via686a
alias char-major-116 snd
alias char-major-14 soundcore
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
alias snd-card-0 snd-card-via686a

  • I added some amixer commands to my /etc/rc.d/rc.local to initialize the mixer settings and unmute the CD and Master channels. I have found that the Gnome sound mixer gmix also works fine and knows how to unmute the sound and adjust the volume, but adding the amixer commands to the initialization saves me the step of opening up gmix. I added the following to /etc/rc.d/rc.local :

# load ALSA OSS sound modules
if grep -s -q "^alias sound " /etc/conf.modules ; then
    echo "Loading OSS sound module"
    amixer set Master 50% unmute
    amixer set CD 50% unmute
    amixer set PCM 100% unmute

    sleep 3
fi

  • At this point, you could unload the Redhat drivers by hand and load the ALSA ones, but it is probably easier to just reboot.
  • Now I add the mixer applet to my control pane (at the bottom of the window), insert a CD into the CD drive, and in a few seconds the Gnome CD player gtcd pops up and starts playing.
  • Everything works fine now, but I'm not satisfied because that gtcd is so darn ugly, so I get and compile xmcd (fortunately I already had Lesstif and the cdrecord ATAPI stuff installed), and configure Gnome to run it instead of the Gnome player. Ahhh... that looks so much better! It works great too (for some reason the volume control on both gtcd and xmcd doesn't work, but the mixer applet works fine) and now I'm happy.


Leeward Engineering, Culver City, CA
TEL: 310-641-7905, E-mail: dclark@akamail.com