Provided by: squeezelite_1.8-4.1build1_amd64 bug

NAME

       squeezelite - Lightweight headless Squeezebox emulator

SYNOPSIS

       squeezelite [options]

DESCRIPTION

       Squeezelite  is  a  small  headless  Logitech Squeezebox emulator. It is aimed at supporting high quality
       audio including USB DAC based output at multiple sample rates.

       The player is controlled using, and media is streamed from, a  Logitech  Media  Server  instance  running
       somewhere on the local network.

OPTIONS

       This program supports the following options:

       -?     Show a summary of the available command-line options.

       -s <server>[:<port>]
              Connect  to the specified Logitech Media Server, otherwise uses automatic discovery to find server
              on the local network. This option should only be needed if automatic discovery does not  work,  or
              the server is not on the local network segment (e.g. behind a router).

       -o <output device>
              Specify  the  audio  output  device;  the  default  value  is  default.  Use the -l option to list
              available output devices.  - can be used to output raw samples to standard output.

       -l     List available audio output devices to stdout and exit. These device names can be passed to the -o
              option in order to select a particular device or configuration to use for audio playback.

       -a <params>
              Specify parameters used when opening an audio output device.  For ALSA, the format <b>:<p>:<f>:<m>
              is used where <b> is the buffer time in milliseconds (values less  than  500)  or  size  in  bytes
              (default  40ms);  <p>  is  the  period  count  (values  less  than 50) or size in bytes (default 4
              periods); <f> is the sample format (possible values: 16, 24, 24_3 or 32); <m> is  whether  to  use
              mmap  (possible  values:  0  or  1).   For  PortAudio,  the  value is simply the target latency in
              milliseconds. When the output is sent to standard output, the value can be 16,  24  or  32,  which
              denotes the sample size in bits.

       -b <stream>:<output>
              Specify internal stream and output buffer sizes in kilobytes.

       -c <codec1>,...
              Restrict  codecs  to  those  specified, otherwise load all available codecs. Use squeezelite -h to
              obtain the list of codecs built into squeezelite.

       -C <timeout>
              Close the output device after <timeout> seconds of the player being idle; the default is to always
              keep the device open as long as the payer is "on".

       -d <category>=<level>
              Set  logging  level. Categories are: all, slimproto, stream, decode, output or ir.  Levels can be:
              info, debug or sdebug.  The option can be repeated to  set  different  log  levels  for  different
              categories.

       -e <codec1>,...
              Explicitly exclude native support of one or more codecs. See also -c, above.

       -f <logfile>
              Send logging output to a log file instead of standard output or standard error.

       -i [<filename>]
              Enable  LIRC remote control support. If the optional <filename> is not provided, ~/.lircrc is used
              instead.

       -m <mac addr>
              Override the player's MAC address. The format must be colon-delimited  hexadecimal,  for  example:
              ab:cd:ef:12:34:56.  This  is usually automatically detected, and should not need to be provided in
              most circumstances.

       -M <modelname>
              Override the player's hardware model name. The default value is SqueezeLite.

       -n <name>
              Set the player name. This name is used by the Logitech Media Server to  refer  to  the  player  by
              name. This option is mututally exclusive with -N.

       -N <filename>
              Allow  the  server  to  set the player's name. The player name is stored in the file pointed to by
              <filename> so that it can persist between restarts. This option is mututally exclusive with -n.

       -p <priority>
              Set real time priority of output thread (1-99; default 45).  Not applicable when using PortAudio.

       -P <filename>
              Write the process ID (PID) number to the given  <filename>.   This  may  be  useful  when  running
              squeezelite as a daemon.

       -r <rates>[:<delay>]
              Specify  sample  rates  supported  by  the output device; this is required if the output device is
              switched off when squeezelite is started. The format is either a single  maximum  sample  rate,  a
              range  of  sample  rates  in the format <min>-<max>, or a comma-separated list of available rates.
              Delay is an optional time to wait when switching sample rates between tracks, in milliseconds.

       -u|-R [params]
              Enable upsampling of played audio. The argument is  optional;  see  RESAMPLING  (below)  for  more
              information. The options -u and -R are synonymous.

       -D [delay]
              Output  device supports DSD over PCM (DoP). DSD streams will be converted to DoP before output. If
              this option is not supplied, DSD streams will be converted to PCM and resampled, so  they  can  be
              played  on a PCM DAC. Delay is an optional time to wait when switching between PCM and DoP between
              tracks, in milliseconds.

       -v     Enable visualiser support. This creates a shared memory segment that contains some  of  the  audio
              being played, so that an external visualiser can read and process this to create visualisations.

       -L     List available volume controls for the output device. Only applicable when using ALSA output.

       -U <control>
              Unmute  the  given ALSA <control> at daemon startup and set it to full volume. Use software volume
              adjustment for playback. This option is mutually exclusive with the  -V  option.  Only  applicable
              when using ALSA output.

       -V <control>
              Use  the  given  ALSA  <control>  for  volume adjustment during playback. This prevents the use of
              software volume control within squeezelite. This option is mutually exclusive with the -V  option.
              If neither -U nor -V options are provided, no ALSA controls are adjusted while running squeezelite
              and software volume control is used instead. Only applicable when using ALSA output.

       -z     Cause squeezelite to run as a daemon. That is, it detaches itself from the terminal  and  runs  in
              the background.

       -t     Display version and license information.

RESAMPLING

       Audio can be resampled or upsampled before being sent to the output device. This can be enabled simply by
       passing the -u option to squeezelite, but further configuration can  be  given  as  an  argument  to  the
       option.

       Resampling  is  performed using the SoX Resampler library; the documentation for that library and the SoX
       rate effect many be helpful when configuring upsampling for squeezelite.

       The                format                of                the                argument                 is
       <recipe>:<flags>:<attenuation>:<precision>:<passband_end>:<stopband_start>:<phase_response>

   recipe
       This   part   of   the   argument   string   is   made   up   of  a  number  of  single-character  flags:
       [v|h|m|l|q][L|I|M][s][E|X]. The default value is hL.

       v, h, m, l or q
              are mutually exclusive and correspond to very high, high, medium, low or quick quality.

       L, I or M
              correspond to linear, intermediate or minimum phase.

       s      changes resampling bandwidth from the default 95% (based on the 3dB point) to 99%.

       E      exception - avoids resampling if the output device supports the playback sample rate natively.

       X      resamples to the maximum sample rate for the output device ("asynchronous" resampling).

       Examples
              -u vLs would use very high quality setting, linear phase filter and steep cut-off.
              -u hM would specify high quality, with the minimum phase filter.
              -u hMX would specify high quality, with the minimum phase  filter  and  async  upsampling  to  max
              device rate.

   flags
       The  second  optional  argument  to -u allows the user to specify the following arguments (taken from the
       soxr.h header file), in hex:

       #define SOXR_ROLLOFF_SMALL     0u  /* <= 0.01 dB */
       #define SOXR_ROLLOFF_MEDIUM    1u  /* <= 0.35 dB */
       #define SOXR_ROLLOFF_NONE      2u  /* For Chebyshev bandwidth. */

       #define SOXR_MAINTAIN_3DB_PT   4u  /* Reserved for internal use. */
       #define SOXR_HI_PREC_CLOCK     8u  /* Increase 'irrational' ratio accuracy. */
       #define SOXR_DOUBLE_PRECISION 16u  /* Use D.P. calcs even if precision <= 20. */
       #define SOXR_VR               32u  /* Experimental, variable-rate resampling. */

       Examples
              -u :2 would specify SOXR_ROLLOFF_NONE.

              NB: In the example above the first option, <quality>, has not been specified so would  default  to
              hL. Therefore, specifying -u :2 is equivalent to having specified -u hL:2.

   attenuation
       Internally,  data  is  passed  to  the  SoX  resample  process as 32 bit integers and output from the SoX
       resample process as 32 bit integers. Why does  this  matter?   There  is  the  possibility  that  integer
       samples, once resampled may be clipped (i.e. exceed the maximum value). By default, if you do not specify
       an attenuation value, it will default to -1db. A value of 0 on the command line, i.e. -u ::0 will disable
       the default -1db attenuation being applied.

       NB: Clipped samples will be logged. Keep an eye on the log file.

       Examples
              -u ::6 specifies to apply -6db (ie. halve the volume) prior to the resampling process.

   precision
       The internal 'bit' precision used in the re-sampling calculations (ie. quality).

       NB: HQ = 20, VHQ = 28.

       Examples
              -u :::28 specifies 28-bit precision.

   passband_end
       A  percentage  value between 0 and 100, where 100 is the Nyquist frequency. The default if not explicitly
       set is 91.3.

       Examples
              -u ::::98 specifies passband ends at 98 percent of the Nyquist frequency.

   stopband_start
       A percentage value between 0 and 100, where 100 is the Nyquist frequency. The default if  not  explicitly
       set is 100.

       Examples
              -u :::::100 specifies that the stopband starts at the Nyquist frequency.

   phase_response
       A  value between 0-100, where 0 is equivalent to the recipe M flag for minimum phase, 25 is equivalent to
       the recipe I flag for intermediate phase and 50 is equivalent to the recipe L flag for linear phase.

       Examples
              -u ::::::50 specifies linear phase.

SEE ALSO

       https://code.google.com/p/squeezelite/
       sox(1) - for further information about resampling