|
Packit |
c32a2d |
.TH out123 1 "26 May 2016"
|
|
Packit |
c32a2d |
.SH NAME
|
|
Packit |
c32a2d |
out123 \- send raw PCM audio or a waveform pattern to an output device
|
|
Packit |
c32a2d |
.SH SYNOPSIS
|
|
Packit |
c32a2d |
.B cat audio.raw | out123
|
|
Packit |
c32a2d |
[
|
|
Packit |
c32a2d |
.B options
|
|
Packit |
c32a2d |
]
|
|
Packit |
c32a2d |
|
|
Packit |
c32a2d |
.B out123 --wave-freq
|
|
Packit |
c32a2d |
freq1[,freq2,...]
|
|
Packit |
c32a2d |
[
|
|
Packit |
c32a2d |
.B options
|
|
Packit |
c32a2d |
]
|
|
Packit |
c32a2d |
.SH DESCRIPTION
|
|
Packit |
c32a2d |
.B out123
|
|
Packit |
c32a2d |
reads raw PCM data (in host byte order) from standard input
|
|
Packit |
c32a2d |
and plays it on the audio device specified by given options.
|
|
Packit |
c32a2d |
Alternatively, it can generate periodic signals for playback
|
|
Packit |
c32a2d |
itself.
|
|
Packit |
c32a2d |
.SH OPTIONS
|
|
Packit |
c32a2d |
.B out123
|
|
Packit |
c32a2d |
options may be either the traditional POSIX one letter options,
|
|
Packit |
c32a2d |
or the GNU style long options. POSIX style options start with a
|
|
Packit |
c32a2d |
single ``\-'', while GNU long options start with ``\-\^\-''.
|
|
Packit |
c32a2d |
Option arguments (if needed) follow separated by whitespace (not ``='').
|
|
Packit |
c32a2d |
Note that some options can be absent from your installation when disabled in the build process.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-\^\-name \fIname
|
|
Packit |
c32a2d |
Set the name of this instance, possibly used in various places. This sets the client name for JACK output.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-o \fImodule\fR, \-\^\-output \fImodule\fR
|
|
Packit |
c32a2d |
Select audio output module. You can provide a comma-separated list to use the first one that works.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-\^\-list\-modules
|
|
Packit |
c32a2d |
List the available modules.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-a \fIdev\fR, \fB\-\^\-audiodevice \fIdev
|
|
Packit |
c32a2d |
Specify the audio device to use. The default is
|
|
Packit |
c32a2d |
system-dependent (usually /dev/audio or /dev/dsp).
|
|
Packit |
c32a2d |
Use this option if you have multiple audio devices and
|
|
Packit |
c32a2d |
the default is not what you want.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR \-s ", " \-\^\-stdout
|
|
Packit |
c32a2d |
The audio samples are written to standard output,
|
|
Packit |
c32a2d |
instead of playing them through the audio device.
|
|
Packit |
c32a2d |
The output format is the same as the input ... so in this mode,
|
|
Packit |
c32a2d |
.B out123
|
|
Packit |
c32a2d |
acts like the standard tool \fB cat.
|
|
Packit |
c32a2d |
This shortcut is equivalent to ``-o raw -a -''.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-O \fIfile\fR, \fB\-\^\-outfile
|
|
Packit |
c32a2d |
Write raw output into a file (instead of simply redirecting standard output to a file with the shell).
|
|
Packit |
c32a2d |
This shortcut is equivalent to ``-o raw -a \fIfile\fR''.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-w \fIfile\fR, \fB\-\^\-wav
|
|
Packit |
c32a2d |
Write output as WAV file
|
|
Packit |
c32a2d |
.I file
|
|
Packit |
c32a2d |
, or standard output if
|
|
Packit |
c32a2d |
.I -
|
|
Packit |
c32a2d |
is or the empty string used as file name. You can also use
|
|
Packit |
c32a2d |
.I --au
|
|
Packit |
c32a2d |
and
|
|
Packit |
c32a2d |
.I --cdr
|
|
Packit |
c32a2d |
for AU and CDR format, respectively. Note that WAV/AU writing to non-seekable files or redirected stdout needs some thought. The header is written with the first actual data. The result of decoding nothing to WAV/AU is a file consisting just of the header when it is seekable and really nothing when not (not even a header). Correctly writing data with prophetic headers to stdout is no easy business.
|
|
Packit |
c32a2d |
This shortcut is equivalent to ``-o wav -a \fIfile\fR''.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-\^\-au \fIfile
|
|
Packit |
c32a2d |
Write to
|
|
Packit |
c32a2d |
.I file
|
|
Packit |
c32a2d |
in SUN audio format. If \- or the empty string is used as the filename, the AU file is
|
|
Packit |
c32a2d |
written to stdout. See paragraph about WAV writing for header fun with non-seekable streams.
|
|
Packit |
c32a2d |
This shortcut is equivalent to ``-o au -a \fIfile\fR''.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-\^\-cdr \fIfile
|
|
Packit |
c32a2d |
Write to
|
|
Packit |
c32a2d |
.I file
|
|
Packit |
c32a2d |
as a CDR (CD-ROM audio, more correctly CDDA for Compact Disc Digital Audio).
|
|
Packit |
c32a2d |
If \- is or the empty string used as the filename, the CDR file is written
|
|
Packit |
c32a2d |
to stdout.
|
|
Packit |
c32a2d |
This shortcut is equivalent to ``-o cdr -a \fIfile\fR''.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-r \fIrate\fR, \fB\-\^\-rate \fIrate
|
|
Packit |
c32a2d |
Set sample rate in Hz (default: 44100). If this does not match the actual input
|
|
Packit |
c32a2d |
sampling rate, you get changed pitch. Might be intentional;-)
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-c \fIcount\fR, \fB\-\^\-channels \fIcount
|
|
Packit |
c32a2d |
Set channel count to given value.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fp\-e \fIenc\fR, \fB\-\^\-encoding \fIenc
|
|
Packit |
c32a2d |
Choose output sample encoding. Possible values look like f32 (32-bit floating point), s32 (32-bit signed integer), u32 (32-bit unsigned integer) and the variants with different numbers of bits (s24, u24, s16, u16, s8, u8) and also special variants like ulaw and alaw 8-bit.
|
|
Packit |
c32a2d |
See the output of \fBout123\fR's longhelp for actually available encodings.
|
|
Packit |
c32a2d |
Default is s16.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR \-m ", " \-\^\-mono "
|
|
Packit |
c32a2d |
Set for single-channel audio (default is two channels, stereo).
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR \-\-stereo
|
|
Packit |
c32a2d |
Select stereo output (2 channels, default).
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR \-\^\-list\-encodings
|
|
Packit |
c32a2d |
List known encoding short and long names to standard output.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR \-\^\-test\-format
|
|
Packit |
c32a2d |
Check if given format is supported by given driver and device (in command line before
|
|
Packit |
c32a2d |
encountering this), silently returning 0 as exit value if it is the case.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR \-\^\-test\-encodings
|
|
Packit |
c32a2d |
Print out the short names of encodings supported with the current setup.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR \-\^\-query\-format
|
|
Packit |
c32a2d |
If the selected driver and device communicate some default accepted format, print
|
|
Packit |
c32a2d |
out a command line fragment for \fBout123\fR setting that format, always in that order:
|
|
Packit |
c32a2d |
\-\^\-rate <r> -\^\-channels <c> -\^\-encoding <e>
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR "\-o h" ", " \-\^\-headphones
|
|
Packit |
c32a2d |
Direct audio output to the headphone connector (some hardware only; AIX, HP, SUN).
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR "\-o s" ", " \-\^\-speaker
|
|
Packit |
c32a2d |
Direct audio output to the speaker (some hardware only; AIX, HP, SUN).
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR "\-o l" ", " \-\^\-lineout
|
|
Packit |
c32a2d |
Direct audio output to the line-out connector (some hardware only; AIX, HP, SUN).
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-b \fIsize\fR, \fB\-\^\-buffer \fIsize
|
|
Packit |
c32a2d |
Use an audio output buffer of
|
|
Packit |
c32a2d |
.I size
|
|
Packit |
c32a2d |
Kbytes. This is useful to bypass short periods of heavy
|
|
Packit |
c32a2d |
system activity, which would normally cause the audio output
|
|
Packit |
c32a2d |
to be interrupted.
|
|
Packit |
c32a2d |
You should specify a buffer size of at least 1024
|
|
Packit |
c32a2d |
(i.e. 1 Mb, which equals about 6 seconds of usual audio data) or more;
|
|
Packit |
c32a2d |
less than about 300 does not make much sense. The default is 0,
|
|
Packit |
c32a2d |
which turns buffering off.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-\^\-preload \fIfraction
|
|
Packit |
c32a2d |
Wait for the buffer to be filled to
|
|
Packit |
c32a2d |
.I fraction
|
|
Packit |
c32a2d |
before starting playback (fraction between 0 and 1). You can tune this prebuffering to either get sound faster to your ears or safer uninterrupted web radio.
|
|
Packit |
c32a2d |
Default is 0.2 (changed from 1 since version 1.23).
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-\^\-devbuffer \fIseconds
|
|
Packit |
c32a2d |
Set device buffer in seconds; <= 0 means default value. This is the small buffer between the
|
|
Packit |
c32a2d |
application and the audio backend, possibly directly related to hardware buffers.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-\^\-timelimit \fIsamples
|
|
Packit |
c32a2d |
Set playback time limit in PCM samples if set to a value greater than zero.
|
|
Packit |
c32a2d |
\fBout123\fR will stop reading from stdin or playing from the generated wave
|
|
Packit |
c32a2d |
table after reaching that number of samples.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-\^\-wave\-freq \fIfrequencies
|
|
Packit |
c32a2d |
Set wave generator frequency or list of those with comma separation for enabling
|
|
Packit |
c32a2d |
a generated test signal instead of standard input. Empty values repeat the
|
|
Packit |
c32a2d |
previous one.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-\^\-wave\-pat \fIpatterns
|
|
Packit |
c32a2d |
Set the waveform patterns of the generated waves as comma-separated list.
|
|
Packit |
c32a2d |
Choices include sine, square, triangle, sawtooth, gauss, pulse, and shot.
|
|
Packit |
c32a2d |
Empty values repeat the previous one.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-\^\-wave\-phase \fIphases
|
|
Packit |
c32a2d |
Set waveform phase shift(s) as comma-separated list, negative values
|
|
Packit |
c32a2d |
inverting the pattern in time and empty value repeating the previous.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-\^\-wave\-limit \fIsamples
|
|
Packit |
c32a2d |
Set a custom soft limit on the wave table size. Small values cause larger changes
|
|
Packit |
c32a2d |
in actual frequencies to make whole periods fit.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR \-t ", " \-\^\-test
|
|
Packit |
c32a2d |
Test mode. The audio stream is read, but no output occurs.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR \-v ", " \-\^\-verbose
|
|
Packit |
c32a2d |
Increase the verbosity level.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR \-q ", " \-\^\-quiet
|
|
Packit |
c32a2d |
Quiet. Suppress diagnostic messages.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
\fB\-\^\-aggressive
|
|
Packit |
c32a2d |
Tries to get higher priority
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR \-T ", " \-\-realtime
|
|
Packit |
c32a2d |
Tries to gain realtime priority. This option usually requires root
|
|
Packit |
c32a2d |
privileges to have any effect.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR \-? ", " \-\^\-help
|
|
Packit |
c32a2d |
Shows short usage instructions.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR \-\^\-longhelp
|
|
Packit |
c32a2d |
Shows long usage instructions.
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
.BR \-\^\-version
|
|
Packit |
c32a2d |
Print the version string.
|
|
Packit |
c32a2d |
.SH AUTHORS
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
Maintainer:
|
|
Packit |
c32a2d |
.br
|
|
Packit |
c32a2d |
Thomas Orgis <maintainer@mpg123.org>, <thomas@orgis.org>
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
Creator (ancestry of code inside mpg123):
|
|
Packit |
c32a2d |
.br
|
|
Packit |
c32a2d |
Michael Hipp
|
|
Packit |
c32a2d |
.TP
|
|
Packit |
c32a2d |
Uses code or ideas from various people, see the AUTHORS file accompanying the source code.
|
|
Packit |
c32a2d |
.SH LICENSE
|
|
Packit |
c32a2d |
.B out123
|
|
Packit |
c32a2d |
is licensed under the GNU Lesser/Library General Public License, LGPL, version 2.1 .
|
|
Packit |
c32a2d |
.SH WEBSITE
|
|
Packit |
c32a2d |
http://www.mpg123.org
|
|
Packit |
c32a2d |
.br
|
|
Packit |
c32a2d |
http://sourceforge.net/projects/mpg123
|