Alsa-sound-mini-HOWTO: Before you start

Next Previous Contents

## 3. Before you start

## 3.1 Introduction

This document tries to help you install and use the ALSA sound drivers in your Linux system. The reference system is a Slackware 4.0 distribution of Linux on an AMD/K6 computer (x86 compatible), but it should work with any other Linux distribution. I do not know if the ALSA drivers work on other platforms, according to the documentation, Alpha has been tested and proven to work. I have only x86 PC's here, so any additional information you may have would be appreciated.

It might be handy to read the Linux Sound HOWTO (see section Other HOWTO's), but that HOWTO focuses on the built-in kernel drivers.

## 3.2 General information about the ALSA drivers

The ALSA sound driver was originally written as a replacement for the Linux kernel sound for Gravis UltraSound (GUS) cards. As this GUS replacement proved to be a success, the author started the ALSA project for a generic driver for several sound chips, with fully modularized design.

It is compatible with the OSS/Free and OSS/Linux sound drivers (the drivers in the kernel), but has its own interface that is even better than the OSS drivers. A list of features can be found at http://www.alsa-project.org/intro.html

Please note that the ALSA drivers are still under development. Things may change over time, and some programs that rely on ALSA only work under specific versions of it. Apart from that: I think they're great. I use ALSA for 10 months now and will never go back to the dark ages of closed source sound drivers - hint ;)

The main page of the ALSA project is http://www.alsa-project.org/

## 3.3 Supported hardware

The ALSA drivers support only a subset of all sound cards available. As the time of writing, the following cards are supported.

- Cards with a Trident 4D Wave DX/NX chipset, thanks to Trident Microsystems who offered ALSA ``first cut'' GPL'd drivers (MIXER and PCM devices only) and documentation for their 4D Wave PCI audio chipsets. See http://www.tridentmicro.com/HTML/products%20folder/audio.htm for more information. Cards using this chipset include: Best Union Miss Melody 4DWave PCI, HIS 4DWave PCI, Warpspeed ONSpeed 4DWave PCI, AzTech PCI 64-Q3D, Addonics SV 750, CHIC True Sound 4Dwave, Shark Predator4D-PCI and Jaton SonicWave 4D.
- Gravis Ultrasound (GUS): ``PnP'', Extreme, Classic/ACE, MAX
- Cards with a GUS chipset: Dynasonic 3-D, STB Sound Rage 32, UltraSound 32-Pro (STB), ExpertColor MED3201 and others with AMD InterWave™ chip, notably some STB cards by Compaq
- Soundblaster: 1.0, 2.0, Pro, 16, AWE32/64, PCI64
- ESS AudioDrive ESx688
- ESS ES968 chip based cards (PnP only).
- ESS ES18xx (chipsets). Please note that I personally experienced a lot of trouble with the ESS1888. The developer of the driver for this card did his best, but to no avail.
- ESS Solo-1 ES1938 and ES1946. Only one of the two channels works, which means that recording is not possible. The author of the ES1938 code ``is aware of the problem and is currently investigating it''.
- Yamaha: OPL3-SA2, OPL3-SA3 (chipsets)
- OAK Mozart
- Schubert 32 PCI (PINE, S3 SonicVibes PCI chipset)
- Ensoniq AudioPCI ES1370/1371 PCI soundcards (Soundblaster PCI64)
- SonicVibes PCI soundcards (PINE Schubert 32 PCI)
- ForteMedia FM801 based cards (in 0.3.2)
- OPTi 82C9xx chipset based soundcards
- AD1847, AD1848 and CS4248 chipset based cards
- AZT2320 chip based soundcards (PnP only).
- Advance Logic ALS100/ALS120 based cards
- C-Media CMI8330 based cards

Then a whole lot of Crystal Semiconductors-based sound boards are supported. These chips can be found in a lot of hardware, in separate cards (some Philips PCA series) and on motherboards (e.g. IBM Aptiva, Dell computers). Boards based on the following chipsets are supported:

- 4231
- 4232
- 4232A
- 4235
- 4236B
- 4237B
- 4238B
- 4239
- 4280
- 4610
- 4612
- 4614
- 4615
- 4680

The best thing is: ALSA now supports computers without a soundcard to produce video! This is done with a dummy driver, that tricks programs like Realplayer into thinking that there is a sound card available.

A more recent list may be found inside the driver package itself, that is in doc/SOUNDCARDS

## 3.4 Other HOWTO's

This ALSA-sound-mini-HOWTO is just mini - although it seems to grow fast. Other HOWTO's may help you out in case this one is too terse. I will name a few things you may come across while trying to install the ALSA drivers. HOWTO's can generally, be found at mirrors of Metalab (the former Sunsite). So take a look at http://metalab.unc.edu/LDP/mirrors.html and pick out your closest mirror site. You can find HOWTO's in the directory LDP/HOWTO/. Please note: the links in this document will all be relative to /LDP/HOWTO/mini. If you look at this document from a reasonably good mirror site, you will find the HOWTO's.

Then a note for the 2.2.x kernel series. For the 2.2.x kernel series, sound support is like any other support: it works, but it is different from what you used to do. This HOWTO (like any other HOWTO) will from version 2.0pre1 concentrate on the 2.2 series kernel, although I'll try to point out the differences.

### Sound cards

Perhaps you bought a sound card already, or maybe it has been installed in your computer for ages. And now you are going to use it! Have a look at the Sound-HOWTO to see if this is all worth the trouble. (You might want to buy this new Mega-Rumble-Blaster first, then try the ALSA drivers.)

### Plug and Play cards

Most modern sound cards for the Intel platform are ISA PnP cards, which is an abbreviation for ''Plug and Play''. This means, that the card has to be configured by the operation system. This has to be done through an initialization routine at boot time. You probably need to configure your card with the PnP-utils-package. Every recent Linux distribution includes these tools. For usage have a look at the Plug-and-Play-HOWTO

The ALSA-drivers seem to have built in their own ISA-PnP-support for a couple of sound cards. Unfortunately, as I cannot find documentation about this, I cannot tell you how it works. If anyone out there wants to try ALSA sound support while deliberately not using the ISA-PnP-tools, please drop me a line.

### Loadable modules

The ALSA sound drivers are built as modules. You can find more information about modules in the Kernel-HOWTO. There is also a module-HOWTO, but that is unmaintained at the moment; take a look at the umaintained section of the Howto-HOWTO. There is a Modules-mini-HOWTO though that may be useful.

### Kerneld

Another HOWTO that will be useful for some, is the Kerneld-mini-HOWTO. Kerneld is a daemon that installs and removes kernel modules as needed. (I have zero experience with it, so additional information on the topic is welcome. The ALSA driver documentation contains some information about configuration of the kerneld, this has been included in this mini-HOWTO.)

As the kernel module loader is included in kernel 2.2.x, things have changed. But as I am one of those guys that rather modprobes something than have some daemon handle it, I have no info on this.

Next Previous Contents