Quick guide to the ES1731 Sound Card on Linux


This file is a very quick guide on the settings one guy used to get his ES1731-based card, a Creative Labs Soundblaster 64/128, to work with Linux 2.4.x. Last significant modification of this file was on 18 May 2002. It's still a bit rough and raw though (as you may have noticed).

If you're looking for a sound card for use with Linux, it is recommended that you do not purchase a card making use of this chipset if you want to do more than use it for basic audio output. You have been warned.

Kernel config

To get to this screen, use `make menuconfig` in /usr/src/linux then go into the Sound section and compile the following in:

Personally, I don't bother making these modules. It isn't necessary with PCI cards. Just compile it into the kernel binary. You can make these modules if you want, but, this lies outside the scope of this document.

Now, just follow the prompts. Usually, they'll suggest that you: make dep && make && make install && make modules && make modules_install.

/dev/sndstat and getting your card recognised

The driver does not support /dev/sndstat. This means that you must use a mixer utility otherwise many of your applications won't be able to tell that you have a sound driver.

The simple one I recommend is aumix. It's very easy to shove in a line in your /etc/init.d/bootmisc.sh file stating "aumix -v100". Set and forget stuff. This also removes the issue of "very low default volume" many people notice.

Never run your X as root unless you have no alternative. Bad karma, bad for the security of your box. Add your user/s to the group that owns /dev/dsp (which this driver sends sound out to). /etc/group is the file to edit. Take care with this file.

MIDI support (or lack thereof)

The ES1731 chip doesn't support MIDI natively. Under MS Windows, this is done via software wavetable. The Linux kernel documentation notes:

"This soundcard does not have any hardware MIDI synthesizer; MIDI synthesis has to be done in software. To allow this the driver/soundcard supports two PCM (/dev/dsp) interfaces. There is a freely available software package that allows MIDI file playback on this soundcard called Timidity.

Timidity is a useful .MID to .WAV converter and player. Sound quality is good, given that they've used the sound patches from the Gravis UltraSound card range, however, for many applications, this may not provide an adequate work-around. With the ALSA Linux Kernel Patch's sound drivers, Timidity will apparently run as a user-level MIDI driver. It didn't work for me with the standard kernel sound drivers, however.

In the end, do not buy this card if you need MIDI support under Linux. When Creative Labs decided to use the ES1371 chipset, they signalled a betrayal of their previously good name for quality. This was the beginnings of their descent into 'winmodem' like practices: fobbing off as much work to the main CPU as possible through their software drivers.

Recording sound

Haven't had success with this? Me either. Sucks, doesn't it. The method suggested in the Kernel docs for the ES1730 (using sox) didn't work for me. My work-around was to use my MS Windows disk for this particular task.

In the end, do not buy this card if you need to record stuff under Linux.