LinuxQuestions.org
Review your favorite Linux distribution.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware > Slackware - Installation
User Name
Password
Slackware - Installation This forum is for the discussion of installation issues with Slackware.

Notices


Reply
  Search this Thread
Old 09-18-2005, 01:51 PM   #1
Erik_FL
Member
 
Registered: Sep 2005
Location: Boynton Beach, FL
Distribution: Slackware
Posts: 821

Rep: Reputation: 258Reputation: 258Reputation: 258
Installing Audigy 2 zs Sound Drivers


If you're trying to use a Creative Labs Audigy 2 sound card with Slackware Linux, there is hope.
However, you will probably find that the drivers included with the distribution will not work with your sound card.

I went through many days of frustration before I finally got mine to work. Not only did I get the PCM audio working, I also managed to get the wave table MIDI synthesizer working.

I won't go into all the gory details here. I'll just point out the trouble spots.

The first thing is to get up to date ALSA drivers from the ALSA site.
The ALSA driver moudules begin with "snd-" so you can distinguish them from the OSS modules that come with the distribution.

Here are the drivers and other utilities that I downloaded.
I compiled my kernel, so I downloaded and compiled source for these.
You may be able to use pre-compiled modules.
  • alsa-driver-1.0.9b
  • awesfx-0.5.0d
  • alsa-lib-1.0.9
  • alsa-oss-1.0.9
  • alsa-utils-1.0.9a

The very first problem I ran into was the "snd-emu10k1" driver reporting that the device could not be found. I discovered that it is necessary to either build "ISA PNP" support into the kernel, or load the "isa-pnp" module before attempting to load the "snd-emu10k1" driver. That didn't make a lot of sense to me, since the card is a PCI card.
Add the following line to the beginning of the "/etc/rc.d/rc.modules" file.
Code:
/sbin/modprobe isa-pnp
I added it just before the "PC parallel port support" section.

After that the driver loaded, but "alsaconf" still couldn't find the card.
I had to use this command to configure the card.
Code:
alsaconf -m
Choose "emu10k1" from the list.

That will add the correct lines to the "modules.conf" file.
You can also add the lines manually, by editing "modules.conf".
Here is where I got very confused. There are different names for "modules.conf" in different versions of Linux. I was under the mistaken impression that "rc.modules" was the new name for "modules.conf". In fact, those are two different files, and "/etc/modules.conf" starts out as an empty file (or not there at all). Here are the lines to add to "/etc/modules.conf".
Code:
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-emu10k1
alias sound-slot-0 snd-emu10k1
At this point I got the drivers to load, and everything looked correct, but I got no sound. I tried messing with volume controls, etc. in the K-Desktop, and even the "alsamixer" program. Eventually I found a post from someone with the same problem. There is a setting that must be changed using "alsamixer" that is not very obvious. You have to start "alsamixer", and then use the right arrow key to move to an output setting called "Audigy Analog/Digital Output Jack". That starts out as muted "MM". You need to press the "m" key to unmute it. It will change to "OO" highlighted in green. You should also make sure the master volume control (all the way on the left) is not muted, and is set to something other than all the way down. Press the "Esc" key to exit the "alsamixer" program. Then use "alsactl store" to save the configuration. So the two commands look like this.
Code:
alsamixer
alsactl store
Make sure you also set the option in the X-Windows desktop mixer to restore the settings on login.

Now you should have PCM (wave) sound working.

To get MIDI working requires a bit more effort, but it's well worth it.
If you try to use MIDI without doing anything else, you will just get silence.

It is necessary to have the "awesfx-0.5.0d" package to use MIDI, since you have to use the "asfxload" or "sfxload" program to load a sound font file (voices for synthesizer). It was hard to find out that detail.

When you try to use "asfxload" or "sfxload" there may be a few problems. The first one is where to get the sound font ".sf2" files. The easiest way is to copy them from a Windows system where the drivers are already installed for the card. On Windows XP, I found the files in these two directories.
Code:
\Program Files\Creative\SBAudigy2ZS\Media\Sndfont
\Program Files\Creative\SBAudigy2ZS\Program\WDM\COMMON
You will need to create a directory called "/usr/share/sounds/sf2", and then copy the sound font files to the directory.

Code:
mkdir /usr/share/sounds/sf2
cp srcdir/*.sf2 /usr/share/sounds/sf2
Depending on where you get the files, "srcdir" may be a floppy disk, or a mounted "ntfs" partition. If you're copying from a mounted "ntfs" partition, you will need to specify the "Program Files" directory like this.
Code:
cp /xp/Program\ Files/Creative/SBAudigy2ZS/Media/Sndfont/*.sf2 /usr/share/sounds/sf2
cp /xp/Program\ Files/Creative/SBAudigy2ZS/Program/WDM/COMMON/*.sf2 /usr/share/sounds/sf2
The above commands would be correct if the name of the Windows XP file system was "/xp".
Notice the backslash in front of the space in "Program Files".

The command to load the sound font files looks like this.
Code:
asfxload CT2MGM
The "CT2MGM" is just the name of one of the sound font files. You might have files with different names. Just replace "CT2MGM" with the name of a sound font file that you have. You can load only one of them at a time.

If you try that command you will probably get an error that says "No Emux synth hwdep device is found". Trying the "sfxload" command will display "No AWE synth device is found".

There are a few more modules you need to load that are not loaded automatically.
Edit the "/etc/rc.d/rc.modules" file and add these lines to the end.
Code:
# Required for Audigy 2 MIDI support
/sbin/modprobe snd-seq-midi
/sbin/modprobe snd-emux-synth
/sbin/modprobe snd-emu10k1-synth
This was another hard to find detail that was in a post about the problem.

OK, so now you're ready to load your sound fonts. Here's where I spent a lot of time in frustration. I was able to type in "asfxload CT2MGM" and load the sound font files. Then I could use the MIDI device. When I tried to do that as part of the system initialization, it failed. The problem was that Linux couldn't find the "asfxload" program during initialization. I had added the command to the "/etc/rc.modules" file. The trouble is the "asfxload" program is located in "/usr/local/bin", which wasn't getting mounted until after "/etc/rc.modules" was executed.

There are many ways to solve the problem. What I decided to do was add the following lines to the "/etc/rc.M" file.
Code:
# Load Sound Fonts for Audigy 2
/usr/local/bin/asfxload CT2MGM
I added those near the beginning, just following these lines.
Code:
 Screen blanks after 15 minutes idle time, and powers down in one hour
# if the kernel supports APM or ACPI power management:
/bin/setterm -blank 15 -powersave powerdown -powerdown 60

# Mount the remaining auto-mount filesystems
/sbin/mount -a
Where you load the sound fonts is up to you, but make sure it's after the "/usr/local/bin" directory is accessible.

Here are a couple of other things that led me astray.
  • Drivers and files from places other than the ALSA web site might not work properly. You may save time by using pre-bult modules from sites like AudioSlack, but if you have problems, get the files from the ALSA site. I think the best approach is to compile the files from sources.
  • The "Control Center" in K Desktop has a "Sound System" section with a button called "Test Sound", and another called "Test MIDI". The "Test Sound" button works, but "Test MIDI" button will never work, even if your MIDI is actually working.
  • The default MIDI device is "Audigy MPU-401 (UART)". That is the MIDI output Jack. You need to select the "Emu10k1 WaveTable Emu10k1 Port 0" to play the sound card synthesizer.
  • Although you use the "asfxload" program from the "awesfx" support package, you should not use the AWE driver. The wave table support is part of the "Emu10k1" driver. Don't waste your time like I did trying to make the AWE driver work.
  • The "Kmid MIDI / Karaoke Player" is well hidden in the "Multimedia" and "More Applications" section of the "K Menu".
  • To configure the MIDI device in "Kmid" click on "Settings" and then "MIDI Setup" in the menu.

Finally, here is a list of all the sound modules I have loaded. When in doubt, try loading all the modules listed in case you need one of them.
Code:
Module                  Size  Used by    Tainted: P
snd-emu10k1-synth       4764   0
snd-seq-oss            27808   0  (autoclean)
snd-pcm-oss            38720   0  (unused)
snd-mixer-oss          13848   0  [snd-pcm-oss]
emu10k1-gp              1288   0  (unused)
gameport                1676   0  [emu10k1-gp]
snd-emu10k1            96932   1  [snd-emu10k1-synth]
snd-ac97-codec         64328   0  [snd-emu10k1]
snd-pcm                62852   0  [snd-pcm-oss snd-emu10k1 snd-ac97-codec]
snd-emux-synth         28956   0  [snd-emu10k1-synth]
snd-seq-midi-emul       4896   0  [snd-emux-synth]
snd-util-mem            1616   0  [snd-emu10k1 snd-emux-synth]
snd-seq-virmidi         3112   0  [snd-emux-synth]
snd-hwdep               4832   0  [snd-emu10k1 snd-emux-synth]
snd-seq-midi            3776   0
snd-rawmidi            14464   0  [snd-emu10k1 snd-seq-virmidi snd-seq-midi]
snd-seq-midi-event      3520   0  [snd-seq-oss snd-seq-virmidi snd-seq-midi]
snd-seq                41424   2  [snd-seq-oss snd-emux-synth snd-seq-midi-emul snd-seq-virmidi snd-se
q-midi snd-seq-midi-event]
snd-timer              16452   0  [snd-emu10k1 snd-pcm snd-seq]
snd-seq-device          4488   0  [snd-emu10k1-synth snd-seq-oss snd-emu10k1 snd-emux-synth snd-seq-mi
di snd-rawmidi snd-seq]
snd                    36452   1  [snd-seq-oss snd-pcm-oss snd-mixer-oss snd-emu10k1 snd-ac97-codec sn
d-pcm snd-emux-synth snd-util-mem snd-seq-virmidi snd-hwdep snd-seq-midi snd-rawmidi snd-seq-midi-even
t snd-seq snd-timer snd-seq-device]
soundcore               4260  10  [snd]
snd-page-alloc          5256   0  [snd-seq-oss snd-mixer-oss snd-emu10k1 snd-pcm snd-hwdep snd-seq-mid
i snd-rawmidi snd-seq snd-timer snd-seq-device snd]
Don't feel bad if you have problems. Setting up the sound for this card is complicated.

Last edited by Erik_FL; 09-18-2005 at 03:04 PM.
 
Old 09-29-2005, 07:00 PM   #2
otchie1
Registered User
 
Registered: Apr 2004
Posts: 560

Rep: Reputation: 30
Awesome post fella & welcome to LQ.

I'm much to lazy for all that messing around and just recommend swapping the Audigy out for a SBLive! or using full fat OSS
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Installing Audigy 2 Drivers in Fedora Core 4 pasquale.deangelis Linux - Hardware 1 09-09-2005 12:47 AM
Sound Blaster Audigy LS drivers hurtso Linux - Hardware 1 10-17-2004 07:07 PM
SoundBlaster Audigy..ALSA drivers... mic works but cant hear any sound. punk Linux - Newbie 1 03-25-2004 06:29 PM
getting grief installing SB Audigy sound card. digitized_funk Linux - Newbie 13 10-15-2003 09:46 PM
How to install Sound Blaster Audigy drivers!?? FreakboY Linux - Newbie 3 03-25-2003 08:41 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware > Slackware - Installation

All times are GMT -5. The time now is 12:33 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration