Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ (3) — Plan9 4th Edition

Media Vault

Software Library

Restoration Projects

Artifacts Sought

AUDIO(3)

NAME

audio − SoundBlaster audio controller

SYNOPSIS

­bind -a #A /dev
 ­/dev/audio
­/dev/volume

DESCRIPTION

The audio device serves a one-level directory, giving access to the stereo audio ports.  ­Audio is the data file, which can be read or written to use the port.  Audio data is a sequence of stereo samples, left sample first.  Each sample is a 16 bit little-endian two’s complement integer; the default sampling rate is 44.1 kHz.  Some implementations only support audio output and return a zero length when read. 

The length of the ­audio file as returned by stat(2) represents the number of bytes buffered for input or output. This provides some control over record or playback latency.

The file ­audiostat provides additional timing and latency control.  When read, it returns lines of the form
­bufsize s buffered b offset o time t
reporting number of bytes ­s used for DMA operations (i.e., the minimum useful size for reads and writes), the number of bytes ­b currently buffered, and the time ­t at which offset ­o was reached.  Using ­t and o, it is possible to calculate at what time a byte with a different offset will be recorded or played back.  See also usb(4).

­Volume is the control file associated with the audio port.  Each input and output source has an associated stereo volume control, ranging from 0 (quiet) to 100 (loud).  In addition, there are controls for the sampling rate of the D/A and A/D converters and for any tone controls.  Reads return lines of the form

­source ­in left ­value ­right ­value ­out left ­value ­right ­value

possibly abbreviated if the values are shared or non-existent.  For example, if all of the values are shared, the form degenerates to ‘source value’. Valid sources depend on the particular audio device, though all devices have a ­audio stereo source, which controls the output volume from the D/A converter connected to audio. 

Writes accept the same format with same abbreviations.  Writing the string ­reset sets all of the attributes to their default value, and if no attribute is supplied, ­audio is assumed. 

The Sound Blaster 16 (or MCD) is half-duplex and accepts the following controls on its ­volume file, in the format shown above for reads. 

­audio out
Data written to audio.

­synth in out
MIDI synthesizer.

­cd in out
CD player.

­line in out
Line-level input.

­mic in out
Monaural microphone input.

­speaker in out
Monaural internal speaker connection.

­treb out
Stereo treble tone control. Values less than 50 decrease the treble, those greater increase it.

­bass out
Stereo bass tone control.

­speed in out
Sampling rate for the D/A and A/D converters, expressed in Hz. Defaults to 44100.

SOURCE

­/sys/src/9/port/devaudio.c

Plan 9  —  March 01, 2002

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026