audioplay - play audio files


audioplay [-iV] [-v vol] [-d dev] [file]...


The audioplay utility copies the named audio files (or the standard input
if no filenames are present) to the audio device. If no input file is
specified and standard input is a tty, the program exits with an error

The input files must contain a valid audio file header. The encoding
information in this header is matched against the capabilities of the
audio device and, if the data formats are incompatible, an error message
is printed and the file is skipped. Compressed ADPCM (G.721) monaural
audio data is automatically uncompressed before playing.

Minor deviations in sampling frequency (that is, less than 1%) are
ordinarily ignored. This allows, for instance, data sampled at 8012 Hz to
be played on an audio device that only supports 8000 Hz. If the -V option
is present, such deviations are flagged with warning messages.


The following options are supported:

-d dev
Device: The dev argument specifies an alternate audio device
to which output should be directed. If the -d option is not
specified, the AUDIODEV environment variable is consulted (see
below). Otherwise, /dev/audio is used as the default audio

Immediate: If the audio device is unavailable (that is,
another process currently has write access), audioplay
ordinarily waits until it can obtain access to the device.
When the -i option is present, audioplay prints an error
message and exits immediately if the device is busy.

-v vol
Volume: The output volume is set to the specified value before
playing begins, and is reset to its previous level when
audioplay exits. The vol argument is an integer value between
0 and 100, inclusive. If this argument is not specified, the
output volume remains at the level most recently set by any

Verbose: Prints messages on the standard error when waiting
for access to the audio device or when sample rate deviations
are detected.

Help: Prints a command line usage message.


File Specification: Audio files named on the command line are
played sequentially. If no filenames are present, the standard
input stream (if it is not a tty) is played (it, too, must
contain an audio file header). The special filename - can be used
to read the standard input stream instead of a file. If a
relative path name is supplied, the AUDIOPATH environment
variable is consulted (see below).


See largefile(7) for the description of the behavior of audioplay when
encountering files greater than or equal to 2 Gbyte (2^31 bytes).


The full path name of the audio device to write to, if no -d
argument is supplied. If the AUDIODEV variable is not set,
/dev/audio is used.

A colon-separated list of directories in which to search for
audio files whose names are given by relative pathnames. The
current directory (.) can be specified explicitly in the
search path. If the AUDIOPATH variable is not set, only the
current directory is searched.


audioconvert(1), audiorecord(1), audio(4I), largefile(7)


audioplay currently supports a limited set of audio format conversions.
If the audio file is not in a format supported by the audio device, it
must first be converted. For example, to convert to voice format on the
fly, use the command:

example% audioconvert -f voice myfile | audioplay

The format conversion is not always be able to keep up with the audio
output. If this is the case, you should convert to a temporary file
before playing the data.

February 8, 2020 AUDIOPLAY(1)