OSSAUDIO(3)

OSSAUDIO(3) | Library Functions Manual | OSSAUDIO(3)

# NAME

ossaudio — OSS audio emulation

# LIBRARY

OSS Audio Emulation Library (libossaudio, -lossaudio)

# SYNOPSIS

#include <soundcard.h>

# DESCRIPTION

The ossaudio library provides an emulation of the OSS (Linux) audio interface.
Use the native interface for new programs and the emulation library only for porting programs.

## Mixer Control Map

The following table summarizes the mappings from native interface device names to OSS mixer controls.

Native Device Name | OSS Mixer Control
*.mic | SOUND_MIXER_MIC
*.line | SOUND_MIXER_LINE
*.cd | SOUND_MIXER_CD
*.dac | SOUND_MIXER_PCM
*.aux | SOUND_MIXER_LINE1
*.record | SOUND_MIXER_IMIX
*.master | SOUND_MIXER_VOLUME
*.treble | SOUND_MIXER_TREBLE
*.bass | SOUND_MIXER_BASS
*.speaker | SOUND_MIXER_SPEAKER
*.output | SOUND_MIXER_OGAIN
*.input | SOUND_MIXER_IGAIN
*.fmsynth | SOUND_MIXER_SYNTH
*.midi | SOUND_MIXER_SYNTH

# SEE ALSO

audio(4), midi(4)

# HISTORY

The ossaudio library first appeared in NetBSD 1.3.

# BUGS

The emulation uses a #define for ioctl() so some obscure programs can fail to compile.
The emulation is incomplete.
The emulation only covers ioctl(), there are other differences as well. E.g., on a write that would block in non-blocking mode Linux returns `EINTR` whereas NetBSD 1.3 returns `EAGAIN`.

February 3, 2009 | NetBSD 8.3