summaryrefslogtreecommitdiff
path: root/lib/libossaudio
diff options
context:
space:
mode:
authornia <nia@NetBSD.org>2020-10-16 16:30:53 +0000
committernia <nia@NetBSD.org>2020-10-16 16:30:53 +0000
commit0b8dc4c6f8a092f58596f8f9f6e5dd77ba99f8d1 (patch)
tree8ac8e7c00ba564200c18e53d54a44c4f02fd5d6b /lib/libossaudio
parentfdf947f195b8371138036a314520252fb4124106 (diff)
ossaudio.3: More information about the history and status of this API
Diffstat (limited to 'lib/libossaudio')
-rw-r--r--lib/libossaudio/ossaudio.356
1 files changed, 46 insertions, 10 deletions
diff --git a/lib/libossaudio/ossaudio.3 b/lib/libossaudio/ossaudio.3
index 52d1549e578..7ceb798dada 100644
--- a/lib/libossaudio/ossaudio.3
+++ b/lib/libossaudio/ossaudio.3
@@ -1,6 +1,6 @@
-.\" $NetBSD: ossaudio.3,v 1.20 2009/03/12 12:33:46 joerg Exp $
+.\" $NetBSD: ossaudio.3,v 1.21 2020/10/16 16:30:53 nia Exp $
.\"
-.\" Copyright (c) 1997 The NetBSD Foundation, Inc.
+.\" Copyright (c) 1997, 2020 The NetBSD Foundation, Inc.
.\" All rights reserved.
.\"
.\" This code is derived from software contributed to The NetBSD Foundation
@@ -27,12 +27,12 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd February 3, 2009
+.Dd October 16, 2020
.Dt OSSAUDIO 3
.Os
.Sh NAME
.Nm ossaudio
-.Nd OSS audio emulation
+.Nd Open Sound System emulation
.Sh LIBRARY
.Lb libossaudio
.Sh SYNOPSIS
@@ -40,11 +40,14 @@
.Sh DESCRIPTION
The
.Nm
-library provides an emulation of the OSS (Linux) audio
-interface.
+library provides an emulation of the Open Sound System audio interface.
.Pp
-Use the native interface for new programs and the emulation
-library only for porting programs.
+Use the native
+.Xr audio 4
+and
+.Xr mixer 4
+interfaces for new programs, and this emulation library only for
+building code written for other operating systems.
.Ss Mixer Control Map
The following table summarizes the mappings from native interface
device names to OSS mixer controls.
@@ -67,20 +70,53 @@ device names to OSS mixer controls.
.It *.midi Ta SOUND_MIXER_SYNTH
.El
.Sh SEE ALSO
+.Xr ioctl 2 ,
.Xr audio 4 ,
-.Xr midi 4
+.Xr midi 4 ,
+.Xr mixer 4
.Sh HISTORY
The
.Nm
library first appeared in
.Nx 1.3 .
+.Pp
+The Open Sound System up to version 3 was originally the preferred
+API for writing audio code under Linux until ALSA became the new default
+in Linux 2.6.
+It remains the preferred API in FreeBSD and Solaris, and a large body
+of code exists supporting it.
+.Sh COMPATIBILITY
+The
+.Nm
+interface aims to be compatible with the Open Sound System version 4, as
+described in:
+.Pp
+.Rs
+.%A 4Front Technologies
+.%T OSS 4.x Programmer's Guide
+.%U http://manuals.opensound.com/developer/
+.%D 2007
.Sh BUGS
+.Pp
+The emulation is incomplete.
+Some obscure features are not included, but the essential ioctls used
+by the majority of software are covered.
+.Pp
The emulation uses a #define for
.Fn ioctl
so some obscure programs
can fail to compile.
.Pp
-The emulation is incomplete.
+Linux, FreeBSD, and Solaris provide
+.Pa /dev/dsp
+and
+.Pa /dev/mixer
+devices in place of the
+.Pa /dev/audio
+and
+.Pa /dev/mixer
+devices this compatibility layer must be accessed through on NetBSD.
+However, changing this is typically trivial when porting programs.
.Pp
The emulation only covers
.Fn ioctl ,