Open Sound System
The Hitchhiker's Guide to OSS 4.1 Internals

Do you have problems with sound/audio application development? Don't panic! Click here for help!

Low level drivers

The low level drivers contain all the code that controls the actual hardware. The approach used by OSS is to have as much functionality as possible in the higher level core/framework parts. So the low level drivers will only handle very primitive tasks.

The Introduction to OSS driver programming section of OSS Programmer's Guide will give more detailed information about how OSS drivers work.

ALI5455 driver

oss_ali5455/oss_ali5455.cDriver for the ALI 5455 (AC97) audio controller

ATI IXP audio driver

oss_atiaudio/oss_atiaudio.cDriver for the ATI IXP (AC97) audio controller

SB Audigy LS (SB 24 bit) driver

oss_audigyls/oss_audigyls.cDriver for Creative Audigy LS audio controller

OSS Audio loopback (virtual) driver

oss_audioloop/oss_audioloop.cOSS audio loopback (virtual) driver

AudioPCI (ES1370) driver

oss_audiopci/oss_audiopci.cCreative/Ensoniq AudioPCI driver (ES1370 "CONCERT" ASIC and AKM4531 codec/mixer)
oss_audiopci/audiopci.hDefinitions for the Creative/Ensoniq AudioPCI driver

AudioPCI 97 / SB PCI 64/128 (ES1371/1373) driver

oss_sbpci/oss_sbpci.cCreative/Ensoniq AudioPCI97 driver (ES1371/ES1373)
oss_sbpci/sbpci.hDefinitions for the Creative/Ensoniq AudioPCI97 driver.

CMPCI driver

oss_cmpci/oss_cmpci.cDriver for CMEDIA CM8738 PCI audio controller.

CMI8788 driver


Cirrus/Crystal cs461x/cs4280 driver

oss_cs461x/cs461x.hDefinitions for the cs461x driver
oss_cs461x/oss_cs461x.cDriver for Crystal cs461x and cs461x PCI audio controllers
oss_cs461x/cs461x_dsp.hFirmware for cs461x/cs461x cards.

Cirrus/Crystal cs4281 driver

oss_cs4281/cs4281.hDefinitions for the cs4281 driver
oss_cs4281/oss_cs4281.cDriver for Crystal PCI audio controller.

RME Digi96 driver

oss_digi96/oss_digi96.cDriver for RME Digi96 family

Emu10k1x (SB Live 24 bit) driver

oss_emu10k1x/oss_emu10k1x.cDriver for Creative emu10k1x audio controller

VIA Envy24 driver

oss_envy24/envy24_1010lt.cCard specific routines for M Audio Delta 1010LT
oss_envy24/envy24_ews88d.cCard specific routines for Terratec EWS88D.
oss_envy24/envy24_default.cCard specific routines for several Envy24 based cards.
oss_envy24/oss_envy24.cDriver for IC Ensemble ENVY24 based audio cards.
oss_envy24/envy24_tdif.hFPGA firmware for M-Audio Delta TDIF
oss_envy24/envy24.hCommon definitions for the Envy24 driver
oss_envy24/envy24_direct.cDirect 24 bit multich driver for Envy24.
oss_envy24/envy24_tdif.cCard specific routines for M Audio Delta TDIF
oss_envy24/envy24_6fire.cCard specific routines for Terratec DMX6fire.

VIA Envy24HT driver

oss_envy24ht/envy24ht_revo51.cLow level routines for M Audio Revolution 5.1
oss_envy24ht/envy24ht_julia.cLow level routines for the ESI (Egosys) Juli@ card
oss_envy24ht/envy24ht_ac97.cLow level routines for AC97 based Envy24HT boards (mainly Envy24-PT).
oss_envy24ht/oss_envy24ht.cVIA ENVY24HT chipset driver.
oss_envy24ht/envy24ht_revo71.cLow level routines for M Audio Revolution 7.1
oss_envy24ht/envy24ht.hCommon definitions for envy24ht driver files
oss_envy24ht/envy24ht_aureon.cLow level routines for Terrate Aureon 7.1 family
oss_envy24ht/envy24ht_ap192.cLow level routines for M Audio Audiophile 192

Forte Media FM801 driver

oss_fmedia/oss_fmedia.cDriver for FM801 FM801 PCI audio controller.

NS/Cyrix Geode driver

oss_geode/oss_geode.cDriver for the NS/Cyrix/AMD Geode AC97 audio controller

High definition audio driver

oss_hdaudio/hdaudio_asus_P4B_E.cSource file oss-current/kernel/drv/oss_hdaudio/hdaudio_asus_P4B_E.c
oss_hdaudio/hdaudio_abit_AA8.cSource file oss-current/kernel/drv/oss_hdaudio/hdaudio_abit_AA8.c
oss_hdaudio/hdaudio_codec.cCodec handling for Intel High Definition Audio (HDA/Azalia).
oss_hdaudio/hdaudio_codec.hDefinitions of HD audio codec functions, structures and macros
oss_hdaudio/oss_hdaudio.cThe High Definition Audio (HDA/Azalia) driver.
oss_hdaudio/hdaudio_si3055.cDriver for Si3055 and compatible modems.
oss_hdaudio/hdaudio_mixers.hDeclarations of some functions and structures for HD audio mixers
oss_hdaudio/hdaudio_codecids.hDefinitions for HDaudio codec chips known by OSS.
oss_hdaudio/hdaudio_thinkpad_r61.cSource file oss-current/kernel/drv/oss_hdaudio/hdaudio_thinkpad_r61.c
oss_hdaudio/hdaudio_asus_m9.cinit handler for Asus m9.
oss_hdaudio/hdaudio_eeepc.cDedicated HDaudio mixer driver for Asus Eee PC
oss_hdaudio/hdaudio_scaleoP.cSource file oss-current/kernel/drv/oss_hdaudio/hdaudio_scaleoP.c
oss_hdaudio/hdaudio_ferrari5k.cSource file oss-current/kernel/drv/oss_hdaudio/hdaudio_ferrari5k.c
oss_hdaudio/hdaudio.hCommon definitions for the hdaudio driver files
oss_hdaudio/hdaudio_generic.cDefault mixer/control panel driver for HDA codecs
oss_hdaudio/hdaudio_gpio_handlers.cGPIO initialization handlers for some High Definition Audio systems
oss_hdaudio/hdaudio_vaio_vgn.cSource file oss-current/kernel/drv/oss_hdaudio/hdaudio_vaio_vgn.c
oss_hdaudio/hdaudio_dedicated.hDefinitions for dedicated HD audio codec drivers

Intel ICH (and compatibles) driver

oss_ich/oss_ich.cDriver for the Intel ICH AC97 audio controller

Old input multiplexer driver

Most of the functionality of imux is also implemented in the vmix core. However there are few differences so imux is still included in OSS.

oss_imux/oss_imux.cPseudo driver for sharing one input device between multiple apps.

MIDI loopback driver

oss_midiloop/oss_midiloop.cMIDI loopback driver

MIDI mixer driver (experimental)

oss_midimix/oss_midimix.cMIDI mixer pseudo driver

USB Aaudio/MIDI driver

oss_usb/ossusb_ymhmidi.cDedicated driver for Yamaha USB MIDI devices
oss_usb/ossusb_midi.cUSB MIDI streaming interface support
oss_usb/midisport1x1_fw.hFirmware download for Midiman MIDISport 1x1
oss_usb/ossusb_midisport.cDedicated driver for M-Audio/Midiman MIDISPORT USB MIDI family
oss_usb/ossusb.hDefinitions for the USB audio driver files
oss_usb/oxygen8_fw.hFirmware download for M-Audio Oxygen8 MIDI keyboard
oss_usb/ossusb_audio.cUSB audio streaming interface support
oss_usb/oss_usb.cTop level USB audio class initialization and mixer functions
oss_usb/midisport2x2_fw.hFirmware download for Midiman MIDISport 2x2

Sound Blaster Live! and Audigy/2/4 driver

oss_sblive/emu10k1_dsp.hDSP firmware file for Live!
oss_sblive/emu10k1_dsp_be.hDSP firmware file for Live! (big endian machines)
oss_sblive/sblive.hGlobal definitions for the SB Live/Audigy driver
oss_sblive/emu10k2_dsp_be.hDSP firmware file for Audigy (big endian machines)
oss_sblive/oss_sblive.cDriver for Creative SB Live/Audigy/2/4. Audio, MIDI and mixer services.
oss_sblive/emu10k2_dsp.hDSP firmware file for Audigy

Sound Blaster X-Fi driver

oss_sbxfi/20k1reg.hSource file oss-current/kernel/drv/oss_sbxfi/20k1reg.h
oss_sbxfi/hwaccess.hSource file oss-current/kernel/drv/oss_sbxfi/hwaccess.h
oss_sbxfi/oss_sbxfi.cDriver for Sound Blaster X-Fi (emu20k)
oss_sbxfi/sbxfi.hSource file oss-current/kernel/drv/oss_sbxfi/sbxfi.h
oss_sbxfi/sbxfi_hwaccess.cSource file oss-current/kernel/drv/oss_sbxfi/sbxfi_hwaccess.c

ESS Solo-1 driver

oss_solo/oss_solo.cDriver for ESS Solo PCI audio controller.

Old softoss (virtual mixer) driver

The softoss driver has been replaced by the vmix subsystem.

Trident 4D Wave and compatibles (ALI5451, SiS7018) driver

oss_trident/oss_trident.cDriver for Trident 4DWAVE, ALI 5451 and SiS 7918 audio chips

VIA823x motherboard audio driver

oss_via823x/via8233.hDefinitions for the via8233 driver
oss_via823x/oss_via823x.cDriver for the VIA8233/8235 AC97 audio controller

VIA VT82C686 driver

oss_via97/oss_via97.cDriver for the VIA VT82C686A AC97 audio controller

Yamaha YMF7xx driver

oss_ymf7xx/oss_ymf7xx.cDriver for Yamaha YMF7xx PCI audio controller.
oss_ymf7xx/ymf7xx.hDefinitions for the ymf7xx driver

/dev/audio (SADA) support module for Solaris

oss_sadasupport/sadasupport_sol9.hSolaris 9 compatible version of sadasupport_open/close
oss_sadasupport/oss_sadasupport.cSupport for the legacy (SADA) /dev/audio interfaces of Solaris

CS4231 "audiocs" driver for older Sparc systems

oss_audiocs/cs4231_mixer.hDefinitions for the mixer of cs4231.
oss_audiocs/oss_audiocs.cDriver for the UltraSparc workstations using CS4231 codec for audio

Copyright (C) 4Front Technologies, 2007. All rights reserved.
Back to index OSS web site