Switch to unified view

a/doc/upmpdcli.txt b/doc/upmpdcli.txt
1
= Upmpdcli: an UPnP Renderer Front-End to the Music Player Daemon
1
= Upmpdcli: an UPnP Renderer Front-End to the Music Player Daemon
2
2
3
[[upmpdcli.intro]]
3
[[upmpdcli.intro]]
4
== Introduction
4
== Introduction
5
5
6
*upmpdcli* is an UPnP Media Renderer front-end to *mpd*, the Music Player
6
*upmpdcli* is an UPnP Media Renderer front-end to *MPD*, the Music Player
7
Daemon. It turns *mpd* into an UPnP Media Renderer. 
7
Daemon. It turns *MPD* into an UPnP Media Renderer. 
8
8
9
*upmpdcli* is open-source, free and licensed under the GPL. It is written
9
*upmpdcli* is open-source, free and licensed under the GPL. It is written
10
in C++ and uses the *libupnp* (1.6) and *libmpdclient* libraries.
10
in C++ and uses the *libupnp* (1.6) and *libmpdclient* libraries.
11
11
12
The typical setup is a home network with:
12
The typical setup is a home network with:
13
13
14
- An UPnP media server (e.g. *Minidlna*, *Mediatomb*, or some commercial
14
- An UPnP media server (e.g. *Minidlna*, *Mediatomb*, or some commercial
15
  device).
15
  device).
16
- An UPnP control point (e.g. *Audionet* or *Bubble UPnP* running on a
16
- An UPnP control point (e.g. *Audionet* or *Bubble UPnP* running on a
17
  tablet or phone). 
17
  tablet or phone). 
18
- *mpd* running on some Linux device (e.g. Raspberry PI hooked up to your
18
- *MPD* running on some Linux device (e.g. Raspberry PI hooked up to your
19
  bedroom stereo). 
19
  bedroom stereo). 
20
- *upmpdcli* running on any Linux computer on the network (the same as
20
- *upmpdcli* running on any Linux computer on the network (the same as
21
  *mpd* or not). It will be discovered by the UPnP control point in a
21
  *MPD* or not). It will be discovered by the UPnP control point in a
22
  standard fashion.
22
  standard fashion.
23
23
24
image::upmpdcli.png["Basic flow", float="right"]
25
24
In this usage, *mpd* does not manage the audio files directly and its
26
In this usage, *MPD* does not manage the audio files directly and its
25
configured music directory will typically be empty. It fetches them from
27
configured music directory will typically be empty. It fetches them from
26
the Media Server through HTTP, using the *curl* input plugin, and does not
28
the Media Server through HTTP, using the *curl* input plugin, and does not
27
need a local tags database.
29
need a local tags database.
28
30
31
When used with an appropriate control point, the *upmpdcli*/*MPD*
32
combination supports gapless playback.
33
29
_What's the point ?_ If you are running an UPnP network with multiple
34
_What's the point ?_ If you are running an UPnP network with multiple
30
devices, you may prefer to use a single control application (UPnP-based)
35
devices, you may prefer to use a single control application (UPnP-based)
31
for everything. *mpd* is a very capable and robust music-playing application,
36
for everything. *MPD* is a very capable and robust music-playing application,
32
which runs well on small computers (e.g. Raspberry PI or other "plug" type
37
which runs well on small computers (e.g. Raspberry PI or other "plug" type
33
computers). However it needs a specific control application.
38
computers). However it needs a specific control application.
34
39
35
*upmpdcli* lets you control your *mpd*-based players with your UPnP control
40
*upmpdcli* lets you control your *MPD*-based players with your UPnP control
36
point.
41
point.
37
42
38
[[upmpdcli.config]]
43
[[upmpdcli.config]]
39
== Configuration
44
== Configuration
40
45
...
...
56
The following parameters can be set:
61
The following parameters can be set:
57
62
58
|========================
63
|========================
59
|What|Command line|Environment|Config variable
64
|What|Command line|Environment|Config variable
60
|Configuration file name|-c config|$UPMPD_CONFIG|
65
|Configuration file name|-c config|$UPMPD_CONFIG|
61
|Host name or IP address where *mpd* runs|-h mpdhost|$UPMPD_HOST|mpdhost
66
|Host name or IP address where *MPD* runs|-h mpdhost|$UPMPD_HOST|mpdhost
62
|TCP port for *mpd*|-p mpdport|$UPMPD_PORT|mpdport
67
|TCP port for *MPD*|-p mpdport|$UPMPD_PORT|mpdport
63
|Do we own the *mpd* queue and fearlessly clear it|-o 0/1||ownqueue
68
|Do we own the *MPD* queue and fearlessly clear it|-o 0/1||ownqueue
64
|UPnP "friendly name" for the device. This gets displayed in network search
69
|UPnP "friendly name" for the device. This gets displayed in network search
65
  results.|-f friendlyname|$UPMPD_FRIENDLYNAME|friendlyname 
70
  results.|-f friendlyname|$UPMPD_FRIENDLYNAME|friendlyname 
66
|Log file name. Leave empty for stderr|-d logfilename||logfilename
71
|Log file name. Leave empty for stderr|-d logfilename||logfilename
67
|Verbosity level (0-4)|-l loglevel||loglevel
72
|Verbosity level (0-4)|-l loglevel||loglevel
68
|===========================    
73
|===========================