=== Upmpdcli general parameters
[[friendlyname]]
friendlyname:: "Friendly Name" for the
UPnP Media Renderer. This will be displayed by most Control
Points to identify the Renderer. Some OpenHome Control Points may display
the 'ohproductroom' value instead.
[[upnpav]]
upnpav:: Enable UPnP AV services
(0/1). This is set by default, but it may useful to switch
it off with some OpenHome Control Points which are too easily confused by
the presence of UPnP AV services.
[[openhome]]
openhome:: Enable OpenHome services
(0/1). This defaults to 1, as OpenHome queuing is superior
for most usages. There should be little reason to turn it
off.
[[logfilename]]
logfilename:: Log file
name. Defaults to stderr. This can also be specified as -d
logfilename.
[[loglevel]]
loglevel:: Log
level. Can also be specified as -l loglevel.
[[checkcontentformat]]
checkcontentformat:: Check that
input format is supported. Extract the protocolinfo
information from the input metadata and check it against our supported
formats. Set this option to 0 if a control point or media server sends
good audio data with bad metadata.
[[iconpath]]
iconpath:: Path to the Renderer icon. The image will be displayed by Control Points which support
it. The UPnP protocol has provisions for a renderer to send the URL to a
descriptive icon as part of the device description. Due to current (and
probably permanent) *upmpdcli* limitations, the image file *must* be a
64x64 32 bits-per-pixel png file. Default: '$pkgdatadir/icon.png'.
The icon will only be read once, when upmpdcli starts
up.
[[pkgdatadir]]
pkgdatadir:: XML and other constant data storage
directory. Default: '$prefix/share/upmpcli' (e.g.:
'/usr/share/upmpdcli').
[[cachedir]]
cachedir:: Directory used to store cached
data Only used for the OpenHome queue metadata for now.
The default value is ~/.cache/upmpdcli for normal users or
/var/cache/upmpdcli when upmpdcli is started as root.
[[presentationhtml]]
presentationhtml:: Path to the presentation HTML
document You can change it to replace the default
presentation page. The page will only be read once, when upmpdcli starts
up. It can't presently be used for status updates (but I guess that you
could put a redirect in there, to something more dynamic served by a real
HTTP server). Default: '$pkgdatadir/presentation.html'.
[[pidfile]]
pidfile:: Name of lock file used to store the
current process pid. Only used if the process is launched
by user root. Used by the init system, and to avoid multiple
instances. The only reason to change the value is if you actually want to
have several instances running (also change cachedir in this
case).
=== Tidal streaming service parameters
[[tidaluser]]
tidaluser:: Tidal user name. Your Tidal login name.
[[tidalpass]]
tidalpass:: Tidal password. The password for your Tidal account.
[[tidalquality]]
tidalquality:: Tidal stream quality. 'low' and 'high' are aac
streams. 'lossless' is FLAC and will only work if your subscription
allows it.
=== Qobuz streaming service parameters
[[qobuzuser]]
qobuzuser:: Qobuz user name. Your Qobuz login name.
[[qobuzpass]]
qobuzpass:: Qobuz password. The password for your Qobuz account.
[[qobuzformatid]]
qobuzformatid:: Qobuz stream quality. 5 for mp3/320, 7 for FLAC if
your subscription allows it.
=== Google Music streaming service parameters
[[gmusicuser]]
gmusicuser:: Google Music user name. Your Google Music login name (probably a gmail address).
[[gmusicpass]]
gmusicpass:: Google Music password. The password for your Google Music account.
[[gmusicquality]]
gmusicquality:: Google Music stream quality. 'hi' for mp3/320, 'med'
for mp3/160, 'low' for mp3/128.
[[gmusicdeviceid]]
gmusicdeviceid:: Google Music device
id. Your system MAC address will be used by default, but
this will count against the maximum count of registered devices for this
account. You can set the gmusicdeviceid value to the device ID from a
phone or tablet on which you also use Google Play Music.
=== Local Media Server parameters
[[uprcluser]]
uprcluser:: Bogus user name variable. Used for consistency with other Media Server plugins to decide if
the service should be started (so, do set it if you want a Media Server).
[[uprclmediadirs]]
uprclmediadirs:: Media
directories This is a space-separated list of directories
to explore for music files. This is used directly as the recoll "topdirs"
value, so you can use double-quote quoting for paths with embedded
spaces.
[[uprclhostport]]
uprclhostport:: HTTP host and ports for
serving media files The Media Server HTTP server will run
on this address and port, which will also be inserted on the URLs we
produce. If the variable is not set, we will use port 9090 and the first
non-loopback ipv4 address in "ip addr" output, which may be right or
not. Example: 192.168.1.1:9090
[[uprclpaths]]
uprclpaths:: This is used
to translate real path to ones relative to the HTTP server doc tree. It
also performs a form of access control. If this is not set, uprcl will
use a null translation for each of the uprclmediadirs
entries.
[[uprclconfdir]]
uprclconfdir:: Recoll index
directory This is usually not defined and defaults to
/var/cache/upmpdcli/uprcl
[[uprclautostart]]
uprclautostart:: Initialize uprcl as soon as
upmpdcli starts This is useful because uprcl initialization
can take quite some time so it is better not to wait for the first
access. The general default is false for the autostart variables, so this
is normally explicitely set to true.
=== MPD parameters
[[mpdhost]]
mpdhost:: Host MPD runs on. Defaults to localhost. This can also be specified as -h
host
[[mpdport]]
mpdport:: IP port used by
MPD Can also be specified as -p port. Defaults to the
normal MPD port, 6600
[[mpdpassword]]
mpdpassword:: MPD
password. Password for connecting to MPD (only necessary
if password access is enabled in the MPD configuration
file).
[[ownqueue]]
ownqueue:: Set if we own the MPD
queue. If this is set (on by default), we own the MPD
queue and will fearlessly clear it. Can also be specified as -q
0|1.
=== UPnP network parameters
[[upnpiface]]
upnpiface:: Network interface to
use for UPnP. libupnp/pupnp only supports communicating on
a single interface and will use the first found, this allows forcing the
use of another interface.
[[upnpip]]
upnpip:: IP address to use for UPnP,
alternative to using an interface name.
[[upnpport]]
upnpport:: Port number
used for UPnP. libupnp/pupnp defaults to using the first
free port after 49152. Note that clients do not need to know about the
value, which is automatically discovered.
=== Audio control hooks
[[onstart]]
onstart:: Command to run when playback is
about to begin. Specify the full path to the program,
e.g. /usr/bin/logger.
[[onplay]]
onplay:: Command to run when MPD state
switches to "PLAY". Specify the full path to the program,
e.g. /usr/bin/logger.
[[onpause]]
onpause:: Command to run when MPD state
switches to "PAUSE". Specify the full path to the program,
e.g. /usr/bin/logger.
[[onstop]]
onstop:: Command to run when MPD state switches to
"STOP". Specify the full path to the program,
e.g. /usr/bin/logger.
[[externalvolumecontrol]]
externalvolumecontrol:: Use external command
to manage the the sound volume (0/1). This is used in the
case where MPD is unable to control the volume, but some other command
can, for example if you have an external amp on which it is possible to
set and read the volume through scripts. If set, the calls to MPD to set
and read the volume will be replaced by executions of 'onvolumechange'
and 'getexternalvolume'
[[getexternalvolume]]
getexternalvolume:: Command to run for reading
the sound volume. The command should write a 0-100 numeric
value to stdout.
[[onvolumechange]]
onvolumechange:: Command to run to set the
volume. Used when 'externalvolumecontrol' is set.
Specify the full path to the program, which is called with the volume as
the first argument, e.g. /some/script 85.
=== OpenHome parameters
[[ohproductroom]]
ohproductroom:: The name of the room where
the Product is located. Set to ���Main Room��� by default,
displayed in place of the "friendly name" by some control points.
ProductRoom is used to group the Product with other related Products in
the same physical room (e.g. a source with a pre-amp). Products which are
physically linked must always share the same ProductRoom
name.
[[radiolist]]
radiolist:: Path to an external file with radio
definitions. Radio stations can be defined at the end of
the the main file, or in an external file (or both). Using an external file
can ease distribution to multiple machines. Either way, each radio
station is defined as a section with a name beginning with 'radio',
containing a mandatory URL parameter, and optional values. The part of
the name after 'radio' will be the displayed radio name (as album title).
- artUrl: an optional static radio icon URL.
- artScript: an optional script to retrieve an image for the current title
- metaScript: an optional script to retrieve metadata for the current
title.
See the xref:radio-definitions[section about radio station definitions]
for details about the scripts.
Example:
----
[radio My Radio]
url = http://some.host/some/path.pls
artUrl = http://some.host/icon/path.png
artScript = /path/to/script/dynamic-art-getter
metaScript = /path/to/script/metadata-getter
----
[[ohmanufacturername]]
ohmanufacturername:: Manufacturer
name.
[[ohmanufacturerinfo]]
ohmanufacturerinfo:: Manufacturer
information.
[[ohmanufacturerurl]]
ohmanufacturerurl:: URL for manufacturer
web site.
[[ohmanufacturerimageuri]]
ohmanufacturerimageuri:: Uri for
manufacturer���s logo.
[[ohmodelname]]
ohmodelname:: Model name.
[[ohmodelinfo]]
ohmodelinfo:: Model information.
[[ohmodelurl]]
ohmodelurl:: URL for model web
site.
[[ohmodelimageuri]]
ohmodelimageuri:: Uri for model���s
icon.
[[ohproductname]]
ohproductname:: User-visible product
name. By default this is set to ModelName.
[[ohproductinfo]]
ohproductinfo:: Product information.
[[ohproducturl]]
ohproducturl:: URL for product web
site. This may be the UPnP presentation page.
[[ohproductimageuri]]
ohproductimageuri:: Uri for product
image.
[[ohmetapersist]]
ohmetapersist:: Save queue
metadata to disk (0/1). This allows persistence of the
metadata information across restarts, the default is 1, and there is no
reason to turn it off.
[[ohmetasleep]]
ohmetasleep:: Mimimum
interval (Seconds) between two cache saves. Increasing this
may improve playlist load speed on a slow device. The default is to start
a new save as soon as the previous one is done (if the list changed again
inbetween).
=== Songcast Receiver parameters
[[sclogfilename]]
sclogfilename:: Log file name for sc2mpd (default
stderr) The value *must not* be the same as the one used
for upmpdcli (except if empty).
[[scloglevel]]
scloglevel:: Log verbosity for
sc2mpd.
[[scplaymethod]]
scplaymethod:: sc2mpd
play method (mpd/alsa). With this set as 'alsa', sc2mpd
will send the audio directly to the sound driver, which is the only way
to really avoid skips and control the synchronization in multi-room
setups. *For 'alsa', make sure that user upmpdcli has permission to
access the audio devices !*
[[schttpport]]
schttpport:: Port
used by sc2mpd for MPD to connect to. Used only for
scplaymethod=mpd. sc2mpd only accepts connections from
localhost.
[[scalsadevice]]
scalsadevice:: Alsa device used by sc2mpd
for playing audio. Only used for scplaymethod=alsa. Use
'aplay -L' to see the possible values.
[[sccvttype]]
sccvttype:: sc2mpd resampling method.
Only used for scplaymethod=alsa. sc2mpd uses libsamplerate. The default
method is SRC_SINC_FASTEST and a Rasberry Pi 1 is fast enough to use it.
Possible values: SRC_SINC_BEST_QUALITY, SRC_SINC_MEDIUM_QUALITY,
SRC_SINC_FASTEST, SRC_ZERO_ORDER_HOLD, SRC_LINEAR. See the libsamplerate
documentation for descriptions. Anything above SRC_SINC_FASTEST needs a
serious CPU. BEST_QUALITY uses approx 25% cpu on a core i7
4770T. Obviously too much, actually might not be sustainable (it's almost
100% of 1 cpu). MEDIUM_QUALITY is around 10% on the same machine,
FASTEST is 4-5%. Given that this is measured for the full process, probably
a couple % for the conversion in fact.
[[sc2mpd]]
sc2mpd:: Path to
sc2mpd. Only useful if it is not in /usr/bin and the
location is not in the $PATH for the init scripts.
=== Songcast Sender parameters
[[scsenderpath]]
scsenderpath:: Path to the script
(scmakempdsender) which starts the auxiliary mpd and the sender
process. Empty and searched in PATH by default.
[[scstreamscaled]]
scstreamscaled:: Decide if we
scale the songcast stream. If set, MPD software volume
control will be applied to the stream. True by default: using a Control
Point to set the volume on the upmpdcli instance which started the Sender
affects the volume for all Receivers.
[[scsendermpdport]]
scsendermpdport:: localhost port to be used by the auxiliary mpd.
[[scripts_dir]]
scripts_dir:: Location for the scripts used
to set up additional external sources. See the Songcast
Sender support documentation page.