1MPC(1)                                mpc                               MPC(1)
2
3
4

NAME

6       mpc - mpc Documentation
7

DESCRIPTION

9       mpc  is  a  command-line  client for the Music Player Daemon (MPD).  It
10       connects to a MPD and controls it according to commands  and  arguments
11       passed  to  it.   If no command is given, the current status is printed
12       (same as "mpc status").
13

SYNOPSIS

15          mpc [options] <command> [<arguments>]
16

OPTIONS

18       -f, --format
19              Configure the format used to display songs.
20
21              The metadata delimiters are:
22
23                       ┌───────────────┬────────────────────────────┐
24                       │Name           │ Description                │
25                       ├───────────────┼────────────────────────────┤
26                       │%name%         │ A  name  for  this   song. │
27                       │               │ This  is  not the song ti‐ │
28                       │               │ tle. The exact meaning  of │
29                       │               │ this  tag  is not well-de‐ │
30                       │               │ fined. It is often used by │
31                       │               │ badly  configured internet │
32                       │               │ radio stations with broken │
33                       │               │ tags  to  squeeze both the │
34                       │               │ artist name and  the  song │
35                       │               │ title in one tag.          │
36                       ├───────────────┼────────────────────────────┤
37                       │%artist%       │ Artist file tag            │
38                       ├───────────────┼────────────────────────────┤
39                       │%album%        │ Album file tag             │
40                       ├───────────────┼────────────────────────────┤
41                       │%albumartist%  │ Album Artist file tag      │
42                       ├───────────────┼────────────────────────────┤
43                       │%comment%      │ Comment  file tag (not en‐ │
44                       │               │ abled   by   default    in │
45                       │               │ mpd.conf's           meta‐ │
46                       │               │ data_to_use)               │
47                       ├───────────────┼────────────────────────────┤
48                       │%composer%     │ Composer file tag          │
49                       ├───────────────┼────────────────────────────┤
50                       │%date%         │ Date file tag              │
51                       ├───────────────┼────────────────────────────┤
52                       │%originaldate% │ Original Date file tag     │
53                       ├───────────────┼────────────────────────────┤
54                       │%disc%         │ Disc file tag              │
55                       ├───────────────┼────────────────────────────┤
56                       │%genre%        │ Genre file tag             │
57                       ├───────────────┼────────────────────────────┤
58                       │%performer%    │ Performer file tag         │
59                       ├───────────────┼────────────────────────────┤
60                       │%title%        │ Title file tag             │
61                       ├───────────────┼────────────────────────────┤
62                       │%track%        │ Track file tag             │
63                       ├───────────────┼────────────────────────────┤
64                       │%time%         │ Duration of file           │
65                       └───────────────┴────────────────────────────┘
66
67                       │%file%         │ Path of file, relative  to │
68                       │               │ MPD's      music_directory 
69                       │               │ variable                   │
70                       ├───────────────┼────────────────────────────┤
71                       │%position%     │ Queue track number         │
72                       ├───────────────┼────────────────────────────┤
73                       │%id%           │ Queue track id number      │
74                       ├───────────────┼────────────────────────────┤
75                       │%prio%         │ Priority in  the  (random) │
76                       │               │ queue.                     │
77                       ├───────────────┼────────────────────────────┤
78                       │%mtime%        │ Date and time of last file │
79                       │               │ modification               │
80                       ├───────────────┼────────────────────────────┤
81                       │%mdate%        │ Date of last file  modifi‐ │
82                       │               │ cation                     │
83                       └───────────────┴────────────────────────────┘
84
85              The [] operator is used to group output such that if no metadata
86              delimiters are found or matched between [ and ],  then  none  of
87              the  characters between [ and ] are output.  & and | are logical
88              operators for and and or.  # is used to escape characters.  Some
89              useful examples for format are: "%file%" and "[[%artist% - ]%ti‐
90              tle%]|[%file%]".  This command also takes the following  defined
91              escape sequences:
92
93                                   ┌───┬─────────────────┐
94                                   │\  │ backslash       │
95                                   ├───┼─────────────────┤
96                                   │\[ │ left bracket    │
97                                   ├───┼─────────────────┤
98                                   │\] │ right bracket   │
99                                   ├───┼─────────────────┤
100                                   │\a │ alert           │
101                                   ├───┼─────────────────┤
102                                   │\b │ backspace       │
103                                   ├───┼─────────────────┤
104                                   │\e │ escape          │
105                                   ├───┼─────────────────┤
106                                   │\t │ tab             │
107                                   ├───┼─────────────────┤
108                                   │\n │ newline         │
109                                   ├───┼─────────────────┤
110                                   │\v │ vertical tab    │
111                                   ├───┼─────────────────┤
112                                   │\f │ form-feed       │
113                                   ├───┼─────────────────┤
114                                   │\r │ carriage return │
115                                   └───┴─────────────────┘
116
117              If  not  given, the value of the environment variable MPC_FORMAT
118              is used.
119
120       --wait Wait for operation to finish (e.g. database update).
121
122       --range=[START]:[END]
123              Operate on a range (e.g. when loading a playlist).  START is the
124              first index of the range, END is the first index after the range
125              (i.e. excluding).  START and END  may  be  omitted,  making  the
126              range open to that end.  Indexes start with zero.
127
128       -q, --quiet, --no-status
129              Prevents  the  current song status from being printed on comple‐
130              tion of some of the commands.
131
132       --verbose
133              Verbose output.
134
135       --host=HOST
136              The MPD server to connect to.  This can be a hostname, IPv4/IPv6
137              address, an absolute path (i.e. local socket) or a name starting
138              with @ (i.e. an abstract socket, Linux only).
139
140              To use a password, provide a value of the form "password@host".
141
142              If not given, the value of the environment variable MPD_HOST  is
143              used.
144
145       --port=PORT, -p PORT
146              The TCP port of the MPD server to connect to.
147
148              If  not given, the value of the environment variable MPD_PORT is
149              used.
150

COMMANDS

152       Commands can be used from the least unambiguous prefix (e.g  insert  or
153       ins).
154
155   Player Commands
156       consume <on|off> - Toggle consume mode if state (on
157              or off) is not specified.
158
159       crossfade [<seconds>] - Gets and sets the current amount of
160              crossfading between songs (0 disables crossfading).
161
162       current [--wait] - Show the currently playing song.  With
163              --wait,  mpc  waits until the song changes (or until playback is
164              started/stopped) before it queries the  current  song  from  the
165              server.
166
167       queued - Show the currently queued (next) song.
168
169       mixrampdb [<db>] - Gets and sets the volume level at which
170              songs  with  MixRamp  tags will be overlapped. This disables the
171              fading of the crossfade command  and  simply  mixes  the  songs.
172              -50.0 will effectively remove any gaps, 0.0 will mash tracks to‐
173              gether. The amount of  overlap  is  limited  by  the  audio_buf‐
174              fer_size MPD configuration parameter.
175
176       mixrampdelay [<seconds>] - Gets and sets the current amount
177              of  extra  delay  added  to  the value computed from the MixRamp
178              tags. (A negative value disables overlapping with  MixRamp  tags
179              and restores the previous value of crossfade).
180
181       next - Starts playing next song on queue.
182
183       pause - Pauses playing.
184
185       play <position> - Starts playing the song-number
186              specified. If none is specified, plays number 1.
187
188       prev - Starts playing previous song.
189
190       random <on|off> - Toggle random mode if state (on
191              or off) is not specified.
192
193       repeat <on|off> - Toggle repeat mode if state (on
194              or off) is not specified.
195
196       replaygain [<off|track|album>] - Sets the replay gain mode.
197              Without arguments, it prints the replay gain mode.
198
199       single <on|once|off> - Toggle single mode if state (on,
200              once, or off) is not specified.  once toggles to off.
201
202       seek [+-][<HH:MM:SS>] or <[+-]<0-100>%> - Seeks by hour,
203              minute  or seconds, hours or minutes can be omitted.  If seeking
204              by percentage, seeks within the current song  in  the  specified
205              manner.   If  a + or - is used, the seek is done relative to the
206              current song position. Absolute seeking by default.
207
208       seekthrough [+-][<HH:MM:SS>] - Seeks by hour,
209              minute or seconds, hours or minutes can be  omitted,  relatively
210              to  the  current  position. If the duration exceeds the limit of
211              the current song, the seek command proceeds to seek through  the
212              playlist  until  the  duration  is reached.  If a + is used, the
213              seek is forward. If a - is used, the seek is  backward.  Forward
214              seeking by default.
215
216       stop - Stops playing.
217
218       toggle - Toggles between play and pause. If stopped starts
219              playing.   Does  not  support  start playing at song number (use
220              play).
221
222   Queue Commands
223       add <file> - Adds a song from the music database to the
224              queue. Can also read input from pipes. Use "mpc add  /"  to  add
225              all files to the queue.
226
227       insert <file> - The insert command works similarly to
228              add  except  it  adds  song(s)  after the currently playing one,
229              rather than at the end.  When random mode is  enabled,  the  new
230              song is queued after the current song.
231
232       clear - Empties the queue.
233
234       crop - Remove all songs except for the currently playing
235              song.
236
237       del <songpos> - Removes a queue number from the queue. Can
238              also read input from pipes (0 deletes the current playing song).
239
240       mv, move <from> <to> - Moves song at position <from> to the
241              position <to> in the queue.
242
243       searchplay <type> <query> [<type> <query>]... - Search the
244              queue for a matching song and play it.
245
246       shuffle - Shuffles all songs on the queue.
247
248   Playlist Commands
249       load <file> - Loads <file> as queue.  The option
250              --range may be used to load only a portion of the file
251
252       lsplaylists: - Lists available playlists.
253
254       playlist [<playlist>] - Lists all songs in <playlist>. If
255              no  <playlist>  is  specified,  lists  all  songs in the current
256              queue.
257
258       rm <file> - Deletes a specific playlist.
259
260       save <file> - Saves playlist as <file>.
261
262   Database Commands
263       listall [<file>] - Lists <file> from database.  If no
264              file is specified, lists all songs in the database.
265
266       ls [<directory>] - Lists all files/folders in
267              directory. If no directory is specified, lists all files in  mu‐
268              sic directory.
269
270       search <type> <query> [<type> <query>]... - Searches for
271              substrings  in song tags.  Any number of tag type and query com‐
272              binations can be specified.  Possible tag types are: artist, al‐
273              bum,  title, track, name, genre, date, composer, performer, com‐
274              ment, disc, filename, or any (to match any tag).
275
276       search <expression> - Searches with a filter expression,
277                 e.g.:
278
279                     mpc search '((artist == "Kraftwerk") AND (title == "Metall auf
280                     Metall"))'
281
282              Check the MPD protocol documentation for details.   This  syntax
283              can  be  used  with find and findadd as well.  (Requires libmpd‐
284              client 2.16 and MPD 0.21)
285
286       find <type> <query> [<type> <query>]... - Same as
287              search, but tag values must match query exactly instead of doing
288              a substring match.
289
290       findadd <type> <query> [<type> <query>]... - Same as
291              find,  but add the result to the current queue instead of print‐
292              ing them.
293
294       list <type> [<type> <query>]... [group <type>]... - Return
295              a  list  of  all  tags  of  given  tag  type.   Optional  search
296              type/query  limit  results  in a way similar to search.  Results
297              can be grouped by one or more tags.  Example:
298
299                 mpc list album group artist
300
301       stats - Displays statistics about MPD.
302
303       update [--wait] [<path>] - Scans for updated files in the
304              music directory.  The optional parameter path (relative  to  the
305              music directory) may limit the scope of the update.
306
307              With --wait, mpc waits until MPD has finished the update.
308
309       rescan [--wait] [<path>] - Like update, but also rescans
310              unmodified files.
311
312   File Commands
313       albumart <file> - Download album art for the given song and
314              write it to stdout.
315
316       readpicture <file> - Download a picture embedded in the
317              given song and write it to stdout.
318
319   Mount Commands
320       mount - Lists all mounts.
321
322       mount <mount-path> <storage-uri> - Create a new mount:
323              mounts a storage on the given path.  Example:
324
325                 mpc mount server nfs://10.0.0.5/mp3
326                 mpc mount stick udisks://by-id-ata-FOO-part2
327
328       unmount <mount-path> - Remove a mount.
329
330       listneighbors - Print a list of "neighors"
331              (i.e.  automatically  detected  storages  which can be mounted).
332              This requires enabling at least one neighbor plugin in mpd.conf.
333              Example:
334
335                 $ mpc listneighbors
336                 upnp://uuid:01234567-89ab-cdef-0123-456789abcdef/urn:schemas-upnp-org:service:ContentDirectory:1
337                 udisks://by-id-dm-name-_dev_sdb3
338                 udisks://by-id-ata-FOO-part2
339
340   Sticker Commands
341       The sticker command allows you to get and set song stickers.
342
343       sticker <file> set <key> <value> - Set the value of a song
344              sticker.
345
346       sticker <file> get <key> - Print the value of a song
347              sticker.
348
349       sticker <file> list - List all stickers of a song.
350
351       sticker <file> delete <key> - Delete a song sticker.
352
353       sticker <dir> find <key> - Search for stickers with the
354              specified name, below the specified directory.
355
356   Output Commands
357       volume [+-]<num> - Sets the volume to <num> (0-100).  If
358              +  or - is used, then it adjusts the volume relative to the cur‐
359              rent volume.
360
361       outputs - Lists all available outputs
362
363       disable [only] <output # or name> [...] - Disables the
364              output(s); a list of one or more names or numbers  is  required.
365              If only is the first argument, all other outputs are enabled.
366
367       enable [only] <output # or name> [...] - Enables the
368              output(s);  a  list of one or more names or numbers is required.
369              If only is the first argument, all other outputs are disabled.
370
371       toggleoutput <output # or name> [...] - Changes the
372              status for the given output(s); a list of one or more  names  or
373              numbers is required.
374
375   Client-to-client Commands
376       channels - List the channels that other clients have
377              subscribed to.
378
379       sendmessage <channel> <message> - Send a message to the
380              specified channel.
381
382       waitmessage <channel> - Wait for at least one message on
383              the specified channel.
384
385       subscribe <channel> - Subscribe to the specified channel
386              and continuously receive messages.
387
388   Other Commands
389       idle [events] - Waits until an event occurs.  Prints a list
390              of  event  names, one per line.  See the MPD protocol documenta‐
391              tion for further information.
392
393              If you specify a list of events, only these events  are  consid‐
394              ered.
395
396       idleloop [events] - Similar to idle, but
397              re-enters "idle" state after events have been printed.
398
399              If  you  specify a list of events, only these events are consid‐
400              ered.
401
402       status [format] - Without an argument print a three line status
403              output equivalent to "mpc" with no arguments. If a format string
404              is  given  then the delimiters are processed exactly as how they
405              are for metadata. See the '-f' option in Options
406
407                        ┌──────────────┬────────────────────────────┐
408                        │Name          │ Description                │
409                        ├──────────────┼────────────────────────────┤
410                        │%totaltime%   │ The total duration of  the │
411                        │              │ song.                      │
412                        ├──────────────┼────────────────────────────┤
413                        │%currenttime% │ The  time  that the client │
414                        │              │ is currently at.           │
415                        └──────────────┴────────────────────────────┘
416
417                        │%percenttime% │ The  percentage  of   time │
418                        │              │ elapsed  for  the  current │
419                        │              │ song.                      │
420                        ├──────────────┼────────────────────────────┤
421                        │%songpos%     │ The position of  the  cur‐ │
422                        │              │ rent   song   within   the │
423                        │              │ playlist.                  │
424                        ├──────────────┼────────────────────────────┤
425                        │%length%      │ The number of songs within │
426                        │              │ the playlist               │
427                        ├──────────────┼────────────────────────────┤
428                        │%state%       │ Either     'playing'    or │
429                        │              │ 'paused'                   │
430                        ├──────────────┼────────────────────────────┤
431                        │%volume%      │ The current volume  spaced │
432                        │              │ out  to  4  characters in‐ │
433                        │              │ cluding a percent sign     │
434                        ├──────────────┼────────────────────────────┤
435                        │%random%      │ Current status  of  random │
436                        │              │ mode. 'on' or 'off'        │
437                        ├──────────────┼────────────────────────────┤
438                        │%repeat%      │ Current  status  of repeat │
439                        │              │ mode. 'on' or 'off'        │
440                        ├──────────────┼────────────────────────────┤
441                        │%single%      │ Current status  of  single │
442                        │              │ mode.   'on',  'once',  or │
443                        │              │ 'off'                      │
444                        ├──────────────┼────────────────────────────┤
445                        │%consume%     │ Current status of  consume │
446                        │              │ mode. 'on' or 'off'        │
447                        └──────────────┴────────────────────────────┘
448
449       version - Reports the version of the protocol spoken, not the real
450              version of the daemon.
451

ENVIRONMENT VARIABLES

453       All  environment  variables  are overridden by any values specified via
454       command line switches.
455
456       MPC_FORMAT
457              Configure  the  format  used  to  display  songs.   See   option
458              --format.
459
460       MPD_HOST
461              The MPD server to connect to.  See option --host.
462
463       MPD_PORT
464              The  TCP  port  of  the  MPD  server  to connect to.  See option
465              --port.
466

BUGS

468       Report bugs on https://github.com/MusicPlayerDaemon/mpc/issues
469
470       Since MPD uses UTF-8, mpc needs to convert characters  to  the  charset
471       used  by the local system.  If you get character conversion errors when
472       you're running mpc you probably need to set up your  locale.   This  is
473       done  by  setting any of the LC_CTYPE, LANG or LC_ALL environment vari‐
474       ables (LC_CTYPE only affects character handling).
475

SEE ALSO

477       mpd(1)
478

AUTHOR

480       See
481       https://raw.githubusercontent.com/MusicPlayerDaemon/mpc/master/AUTHORS
482

AUTHOR

484       Max Kellermann
485
487       Copyright 2003-2021 The Music Player Daemon Project
488
489
490
491
4920.34                             Jul 20, 2023                           MPC(1)
Impressum