1out123(1)                   General Commands Manual                  out123(1)
2
3
4

NAME

6       out123 - send raw PCM audio or a waveform pattern to an output device
7

SYNOPSIS

9       cat audio.raw | out123 [ - ] [ options  ]
10
11       out123 [ options ] filename [ filename ... ]
12
13       out123 --wave-freq freq1[,freq2,...] [ options ]
14
15       out123 --source geiger [ options ]
16
17

DESCRIPTION

19       out123  reads raw PCM data (in host byte order) from standard input and
20       plays it on the audio device  specified  by  given  options.   Alterna‐
21       tively, it can generate periodic or random signals for playback itself.
22

OPTIONS

24       out123  options may be either the traditional POSIX one letter options,
25       or the GNU style long options.  POSIX style options start with a single
26       '-',  while  GNU  long  options  start with '--'.  Option arguments (if
27       needed) follow separated by  whitespace  (not  '=').   Note  that  some
28       options can be absent from your installation when disabled in the build
29       process.
30
31       --name name
32              Set the name of this instance, possibly used in various  places.
33              This sets the client name for JACK output.
34
35       -o module, --output module
36              Select  audio  output  module. You can provide a comma-separated
37              list to use the first one that works.  Also see -a.
38
39       --list-modules
40              List the available modules.
41
42       -a dev, --audiodevice dev
43              Specify the audio device to use.  The default  as  well  as  the
44              possible  values  depend on the active output. For the JACK out‐
45              put, a comma-separated list of ports to  connect  to  (for  each
46              channel) can be specified.
47
48       -s, --stdout
49              The  audio  samples  are  written to standard output, instead of
50              playing them through the audio device.  The output format is the
51              same  as  the input ... so in this mode, out123 acts similar the
52              standard tool  cat, possibly  with  some  conversions  involved.
53              This shortcut is equivalent to '-o raw -a -'.
54
55       -S, --STDOUT
56              This variant additionally writes the data to stdout, while still
57              playing it on the output device. So it is more like some flavour
58              of
59               tee than a cat.
60
61       -O file, --outfile
62              Write  raw  output  into  a  file (instead of simply redirecting
63              standard output to a file with the  shell).   This  shortcut  is
64              equivalent to '-o raw -a file'.
65
66       -w file, --wav
67              Write  output  as  WAV file file , or standard output if - is or
68              the empty string used as file name. You can also  use  --au  and
69              --cdr  for  AU  and  CDR  format, respectively. Note that WAV/AU
70              writing to non-seekable files or redirected  stdout  needs  some
71              thought.  The  header is written with the first actual data. The
72              result of decoding nothing to WAV/AU is a file  consisting  just
73              of  the  header  when it is seekable and really nothing when not
74              (not even a header). Correctly writing data with prophetic head‐
75              ers  to stdout is no easy business.  This shortcut is equivalent
76              to '-o wav -a file'.
77
78       --au file
79              Write to file in SUN audio format.  If - or the empty string  is
80              used  as  the  filename,  the  AU file is written to stdout. See
81              paragraph about WAV writing for  header  fun  with  non-seekable
82              streams.  This shortcut is equivalent to '-o au -a file'.
83
84       --cdr file
85              Write  to  file  as a CDR (CD-ROM audio, more correctly CDDA for
86              Compact Disc Digital Audio).  If - is or the empty  string  used
87              as the filename, the CDR file is written to stdout.  This short‐
88              cut is equivalent to '-o cdr -a file'.
89
90       -r rate, --rate rate
91              Set sample rate in Hz (default: 44100). If this does  not  match
92              the  actual input sampling rate, you get changed pitch. Might be
93              intentional;-)
94
95       -R rate, --inputrate rate
96              Set input sample rate to a different value. This triggers resam‐
97              pling if the output rate is indeed different. See --resample.
98
99       --speed factor
100              Speed  up/down  playback  by  that  factor using resampling. See
101              --resample.
102
103       --resample method
104              This chooses the method for resampling  between  differing  sam‐
105              pling  rates  or  to  apply  a  change  in tempo. You can choose
106              between two variants of the syn123 resampler: fine (the default)
107              and  dirty.  The  fine  one features 108 dB dynamic range and at
108              worst-case 84% bandwidth. The dirty one uses a bit less CPU time
109              (not  that  much, though) by reducing the dynamic range to 72 dB
110              with worst-case bandwidth of 85%. The exact properties vary with
111              the  sampling  rate  ratio,  as there is interpolation of filter
112              coefficients involved.
113
114       -c count, --channels count
115              Set channel count to given value.
116
117       -C count, --inputch count
118              Set input channel count to a differnt  value  than  for  output.
119              This probably means you want some remixing. Also see --mix.
120
121       -e enc, --encoding enc
122              Choose  output  sample  encoding.  Possible values look like f32
123              (32-bit  floating  point),  s32  (32-bit  signed  integer),  u32
124              (32-bit  unsigned  integer) and the variants with different num‐
125              bers of bits (s24, u24, s16, u16, s8, u8) and also special vari‐
126              ants  like  ulaw  and  alaw  8-bit.   See the output of out123's
127              longhelp for actually available encodings.  Default is s16.
128
129       --endian choice
130              Select output endianess (byte order). Choice is big, little,  or
131              native,  which  is the default.  The processing can only work in
132              native mode, so you need to specify input or output  byte  order
133              if  that  does  not match your machine. This also sets the input
134              endianess if that is not set separately. See also --inputend and
135              --byteswap.
136
137       -E enc, --inputenc enc
138              Specify  input  encoding different from output encoding for con‐
139              version.
140
141       --inputend choice
142              Select input endianess (byte order). By default it is  the  same
143              as output byte order.  See --endian.
144
145       --byteswap
146              A  switch  to trigger swapping of byte order just before output,
147              after any other transformations.  This works on top of any endi‐
148              aness you specify with
149
150       -m, --mono
151              Set for single-channel audio (default is two channels, stereo).
152
153       --stereo
154              Select stereo output (2 channels, default).
155
156       --list-encodings
157              List known encoding short and long names to standard output.
158
159       --mix matrix
160              Specify  a  mixing  matrix  between input and output channels as
161              linear factors, comma separated list for the input channel  fac‐
162              tors  for output channel 1, then output channel 2, and so forth.
163              The default is a unit matrix if channel counts match, so  for  3
164              channels  the equivalent of both channels with halved amplitude,
165              so '--mix 0.5,0.5'. For splitting mono to stereo, it  is  '--mix
166              1,1' top keep the symmetry.
167
168       --filter coeff
169              Apply  digital filter(s) before pre-amplification (see --preamp)
170              with the coefficient list coeff as
171                                  b_0,...,b_N,a_0,...,a_N
172              where a_0=1 is mandatory and perhaps helps  orientation  a  bit.
173              Multiple filters are separated by ':'.
174
175       -P dbvalue --preamp dbvalue
176              Enable  a pre-amplification stage that amplifies the signal with
177              the given value in dB before output.
178
179       --offset value
180              Apply a PCM offset (floating point value scaled in [-1:1] in the
181              pre-amplification stage.  Normally, you would do that to correct
182              a known DC offset in a recording.
183
184       --clip mode
185              Select clipping mode: 'soft' or 'hard' for forced clipping  also
186              for floating point output, 'implicit' (default) for implied hard
187              clipping during conversion where necessary.
188
189       --dither
190              Enable dithering for conversions  to  integer.  If  you  insist.
191              This  is  just some un-spectacular TPDF dither. For some people,
192              that is not fancy enough.  Most people cannot be  bothered  that
193              way or the other.
194
195       --test-format
196              Check  if  given  format is supported by given driver and device
197              (in command line before encountering this), silently returning 0
198              as exit value if it is the case.
199
200       --test-encodings
201              Print  out  the short names of encodings supported with the cur‐
202              rent setup.
203
204       --query-format
205              If the selected  driver  and  device  communicate  some  default
206              accepted  format,  print  out a command line fragment for out123
207              setting that format, always in that order: --rate <r> --channels
208              <c> --encoding <e>
209
210       -o h, --headphones
211              Direct  audio  output  to the headphone connector (some hardware
212              only; AIX, HP, SUN).
213
214       -o s, --speaker
215              Direct audio output to the speaker  (some  hardware  only;  AIX,
216              HP, SUN).
217
218       -o l, --lineout
219              Direct  audio  output  to  the line-out connector (some hardware
220              only; AIX, HP, SUN).
221
222       -b size, --buffer size
223              Use an audio output buffer of size Kbytes.  This  is  useful  to
224              bypass  short periods of heavy system activity, which would nor‐
225              mally cause the audio output  to  be  interrupted.   You  should
226              specify  a buffer size of at least 1024 (i.e. 1 Mb, which equals
227              about 6 seconds of usual audio data) or more;  less  than  about
228              300  does  not  make  much sense.  The default is 0, which turns
229              buffering off.
230
231       --preload fraction
232              Wait for the buffer to be filled  to  fraction  before  starting
233              playback  (fraction  between  0  and  1). You can tune this pre‐
234              buffering to either get sound faster to your ears or safer unin‐
235              terrupted  web radio.  Default is 0.2 (changed from 1 since ver‐
236              sion 1.23).
237
238       --devbuffer seconds
239              Set device buffer in seconds; <= 0 means default value. This  is
240              the  small buffer between the application and the audio backend,
241              possibly directly related to hardware buffers.
242
243       --timelimit samples
244              Set playback time limit in PCM samples if set to a value greater
245              than  zero.  out123 will stop reading from stdin or playing from
246              the generated wave table after reaching that number of samples.
247
248       --seconds seconds
249              Set time limit in seconds instead.
250
251       --source name
252              Choose the signal source: 'file' (default) for playback  of  the
253              given file(s) on the command line or standard input if there are
254              none, or one of the generators 'wave' (see --wave-freq),  geiger
255              (see --geiger-activity), or just 'white' for some white noise.
256
257       --wave-freq frequencies
258              Set wave generator frequency or list of those with comma separa‐
259              tion for enabling a generated test signal  instead  of  standard
260              input. Empty values repeat the previous one.
261
262       --wave-pat patterns
263              Set  the waveform patterns of the generated waves as comma-sepa‐
264              rated list.  Choices include sine, square,  triangle,  sawtooth,
265              gauss, pulse, and shot.  Empty values repeat the previous one.
266
267       --wave-phase phases
268              Set  waveform  phase  shift(s) as comma-separated list, negative
269              values inverting the pattern in time and empty  value  repeating
270              the previous. There is also --wave-direction overriding the neg‐
271              ative bit.
272
273       --wave-direction
274              Set wave direction explicitly (the sign counts).
275
276       --wave-sweep frequency
277              Sweep a generated wave to the given frequency,  from  first  one
278              specified  for  --wave-freq,  using  the  first wave pattern and
279              direction, too.
280
281       --sweep-time seconds
282              Set frequency sweep duration in seconds if > 0. This defaults to
283              the  configured time limit if set, otherwise one second, as end‐
284              less sweeps are not sensible.
285
286       --sweep-count count
287              Set timelimit to exactly produce that many (smooth) sweeps
288
289       --sweep-type type
290              Set sweep type: lin(ear) for linear, qua(d) (default)  for  qua‐
291              dratic,  or exp(onential) for an exponential change of frequency
292              with time.
293
294       --sweep-hard
295              Disable post-sweep smoothing for periodicity.
296
297       --genbuffer bytes
298              Set the buffer size  (limit)  for  signal  generators,  if  >  0
299              (default), this enforces a periodic buffer also for non-periodic
300              signals, benefit: less runtime CPU overhead,  as  everything  is
301              precomputed as enforced periodic signal.
302
303       --wave-limit samples
304              This is an alias for --genbuffer.
305
306       --pink-rows number
307              Activate pink noise source and choose rows for the algorithm (<1
308              chooses default).  The generator follows code provided  by  Phil
309              Burk (http://softsynth.com) and uses the Gardner method.
310
311       --geiger-activity number
312              This  configures  the  simulation of a Geiger-Mueller counter as
313              source, with the given numer as average events per second.  Play
314              with  it.  It's fun!  -t, --test Test mode.  The audio stream is
315              read, but no output occurs.
316
317       -v, --verbose
318              Increase the verbosity level.
319
320       -q, --quiet
321              Quiet.  Suppress diagnostic messages.
322
323       --aggressive
324              Tries to get higher priority
325
326       -T, --realtime
327              Tries to gain realtime priority.  This option  usually  requires
328              root privileges to have any effect.
329
330       -?, --help
331              Shows short usage instructions.
332
333       --longhelp
334              Shows long usage instructions.
335
336       --version
337              Print the version string.
338

AUTHORS

340       Maintainer:
341              Thomas Orgis <maintainer@mpg123.org>, <thomas@orgis.org>
342
343       Creator (ancestry of code inside mpg123):
344              Michael Hipp
345
346       Uses code or ideas from various people, see the AUTHORS file accompany‐
347       ing the source code.
348

LICENSE

350       out123 is licensed under the GNU Lesser/Library General Public License,
351       LGPL, version 2.1 .
352

WEBSITE

354       http://www.mpg123.org
355       http://sourceforge.net/projects/mpg123
356
357
358
359                                  26 Apr 2020                        out123(1)
Impressum