Provided by: squeezelite_1.4-1_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:

       -h     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; known
              codecs: flac, pcm, mp3, ogg, aac, wma, alac.  mad or mpg can be supplied instead of
              mp3 to use a specific decoder library.

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

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

       -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.

       -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.

       -r <rates>
              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.

       -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     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.

       -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.

       -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/
       http://www.communitysqueeze.org/squeezelite_about.jsp
       http://www.communitysqueeze.org/squeezelite_upsample.jsp
       sox(1) - for further information about resampling