Add invalid-tags cover icon.
[gmpc.git] / doc / Manual.txt
blobcd2e8fc4d11d7ba94e4f193186939e7714f4850e
1 GMPC Manual - The interface
2 ===========================
3 :Author:  Qball
4 :Email: Qball@gmpclient.org
5 :Date: 07/11/2010
6 :Revision: 0.01
9 == The main interface
11 The following image displays GMPC's main window:
13 image:Images/main-window.png[]
15 If you collapse the main window, parts of the window might be hidden. 
16 Currently there are 2 collapsed views.
18 Collapsed view 1:
20 image:Images/main-window-collapsed1.png[]
22 Collapsed view 2:
24 image:Images/main-view-collapsed2.png[]
26 Below we will explain each part of the window.
29 === The menu bar
30 image:Images/menu-bar.png[]
32 The menu bar gives you direct acces to every part of the program. You can control playback (control item), configure gmpc, enable outputs, switch to another profile, etc.
35 NOTE: There  might be more or less menu items available depending on the number of plugins installed.
37 * Music
38 ** 'Connect' - Connect to MPD.
39 ** 'Disconnect' - Disconnect from MPD.
40 ** 'Send password' - Send a new password to MPD. This can either increase or drop the permission level.
41 ** 'Profiles' - A submenu containing a list of possible profiles
42 *** List of profiles
43 ** 'Preferences' - Opens the preferences pane. xref:preferences[(more here)] 
44 ** 'Quit' - Completely quits GMPC.
45 * Server
46 ** 'Update database' - Tells MPD to update the complete database.
47 ** 'Information' - Opens a window with server information. xref:server-information[(more here)]
48 ** List of outputs available on the connected MPD. This allows you to enable and disable them.
49 * Control
50 ** 'Play/Pause'
51 ** 'Stop'
52 ** 'Next'
53 ** 'Previous'
54 ** 'Mute' - Toggles mute state. (Set volume to 0, and restores it again.)
55 ** 'Repeat' - Enable/Disable repeat.
56 ** 'Random' - Enable/Disable random.
57 ** 'Single mode' - Enable/Disable single mode. Single mode makes MPD not progres to the next song.
58 ** 'Consume' - Enable/Disable consume mode. Consume mode makes MPD remove played songs from the play-queue.
59 * View
60 ** 'Expand Interface' - Makes GMPC interface include more elements. 
61 ** 'Collapse Interface' - Hides elements from the GMPC interface.
62 ** 'Fullscreen' - Switch to fullscreen mode.
63 ** 'Show artist image' - Enable/Disable an artist image to be embedded below the sidebar.
64 * Option
65 ** These show options for the current visible browser.
66 * Tool
67 ** 'Add Url' - Add a remote URI  to the play-queue. xref:add-url[(see here)]
68 ** List of global options that are inserted by plugins.
69 * Go
70 ** Gives a list of enabled browsers and allows you to switch between them quickly. 
71 * Help
72 ** 'Show messages' - Shows you a list of messages, warnings and information that GMPC have shown in the past.
73 ** 'Visit website' - Opens GMPC's website.
74 ** 'Getting Help' - Opens GMPC's Wiki on the getting help page.
75 ** 'Bug information' -  Opens a dialog with information about your current GMPC. xref:bug-information[(more here)]
76 ** 'Easy command help' - Opens a list of possible commands for the easy-command dialog. More information can be found xref:easy-command[here].
77 ** 'About' - Opens about dialog.
79 === Playback Controls
80 image:Images/playback-control.png[]
83 I will explain the elements from left to right.
85 ==== Album Cover
86 image:Images/pc-cover.png[]
88 This shows cover of the currently playing album. If no cover is available, or the song has not information about it, an empty case or cd is shown.
90 [TIP]
91 =================================
92 * Hovering the cover will show an enlarged version of the cover.
93 * Right mouse click on the cover allows you to modify it.
94 * You can modify the look of the cover art in the preferences pane. (With or withouth the casing)
97 image:Images/pc-cover.png["With casing"]
98 image:Images/pc-cover-plain.png["Withouth casing"]
100 =================================
102 ==== Song information
103 image:Images/pc-song-info.png[]
105 Next to it is basic information about the song. This shows the Title, artist and album name.
107 TIP: If you click on the title, artist or album name it will jump to that item in the Metadata Browser.
110 ==== Favorite 
111 image:Images/pc-favorite-nhl.png[]
113 The heart-shaped icon allows you to mark (or unmark) the song as favorite by clicking in on it.
115 If the song is marked as favorite the icon is highlighted, if it is not a favorite, the icon is dimmed.
117 * image:Images/pc-favorite-hl.png["Song is a favorite"]
118 Marked as favorite:
119 * image:Images/pc-favorite-nhl.png["Sog is not a favorite"]
120 Not marked as favorite:
123 Favorite songs are stored in a playlist called Favorite.
126 TIP: Right click on the favorite icon allows you to add the current song to any playlist.
128 WARNING: To make favorites work, MPD needs to be able to store and load playlists.
132 ==== Playback Control
133 image:Images/pc-playback-control.png[]
135 Of course the playback control buttons are also available: Play/Pause, Previous, Next, Stop and volume control.
138 [CAUTION]
139 =====================================================================
140 * You need sufficient permission to control playback. If you do not have the permission, the buttons will be made insensitive.
141 * If there is no output mixer defined in MPD, or it is not currently available, the Volume control is made insensitive.
142 =====================================================================
144 TIP: Hovering your mouse over the next button will show a tooltip with the title of the next song.
146 ==== Seek bar
147 image:Images/pc-seek-bar.png[]
149 Below is the progress/seek bar. This indicates how much of the song is allready played. 
150 You can drag the bar to a certain position to seek. Pressing the middle mouse button will instantly jump to that position. 
152 On the right of the seekbar is the progressed time (or remaining, see tip) and the total time of the song (if available).
155 [TIP]
156 =======================
157 * Right mouse click on the seekbar changes the time indication from progressed time to remaining time and back.
158 * Hovering the progress bar  will show you the time (or remaining) under the cursor. Allowing you to seek exactly to one point.
159 =======================
161 NOTE: Seeking is not instant, but the seek is done as you drop the handle. This is done so MPD is not spammed with seek requests.
163 === Message bar
164 image:Images/message-bar.png[]
166 The message bar is only visible when GMPC has to tell you something. The messsage bar can show information, warning and errors. 
168 A list of previous shown (or hidden) messages can be seen in the Show messages window under Help->show messages.
170 TIP: You can set what message should be shown in the message bar in the xref:preferences[preferences].
172 [[sidebar]]
173 === Sidebar
174 image:Images/sidebar.png[]
176 The sidebar allows you to switch between different browsers. 
177 You can reorder the browsers by drag and dropping them to there new place in the list.
178 What browsers are visible depend on the plugins installed and settings.
180 If you collapse the view the sidebar is turned into a horizontal selector:
182 image:Images/sidebar-hori1.png[]
184 Or if configured differently in the xref:preferences[preferences], a list of buttons:
186 image:Images/sidebar-hori2.png[]
189 TIP: The top browser is always selected when you connect to an MPD server.
191 NOTE: When collapsing the view, the sidebar is turned into a horizontal view, below the playback controls and when collapsed further the sidebar is hidden.
193 === Browser window
195 The browser window contains the actual browser, how this looks depends on the selected view. Browsers should (normally) follow the same generic layout.
196 Either one large pane (like now playing, search, play-queue, etc). Or 2 panes (like database, metadata browser, etc), where the size of the panes is synced between the browsers. 
198 One pane view:
200 image:Images/browser-pane-single.png[]
202 Two pane view:
204 image:Images/browser-pane-double.png[]
206 NOTE: When the view is completely collapsed the Browser window is hidden.
208 === Statusbar
209 image:Images/status-bar.png[]
211 At the bottom of the screen is the status bar. The statusbar is hidden when gmpc is fully collapsed.
213 The status bar consists of 2 parts:
215 On the left there is a message block. This shows feedback about changes, like 'repeat enabled', '10 songs added to play-queue'. It indicates if some action was succesful.
217 On the right there are status icons. 
219 ==== Status icons
220 image:Images/status-icons.png[]
222 Status icons are small icons indicating the state of a setting, a plugin or shows that something is in progress. 
224 Currently GMPC always shows the following status icons:
226 * Repeat
227 * Random
228 * Single mode
229 * Consume 
231 Some icons only show when f.e. MPD is updating it database.
232 All status icons should have a tooltip.
234 NOTE: Clicking a status icon may change its state.
236 NOTE: Some status icons, like from the gmpc-shout plugin, can have a context menu.
238 [[preferences]]
239 == Preferences
241 === Connection
242 image:Images/preferences-connection.png[]
244 In the connection pane you can configure the connection to MPD.
245 You can define multiple connection profiles. GMPC allows you to quickly switch between the different profiles.
247 * The 'Name' field holds the name GMPC shows for this connection.
248 * The 'Host' field holds the hostname off the MPD machine. It may also holds the path to a socket.
249 * The 'Port' field holds the port where MPD listens on. 
250 * 'Use authentication' tells GMPC to send the 'Password' field on connection. You need this, if you want an authentication with your MPD Server.
251 * The 'Music Directory' field allows you to tell GMPC where it can find the music.
254 === Server Settings
255 image:Images/preferences-server-settings.png[]
257 When connected to MPD, you can configure several parameters in MPD:
259 * 'Enable Crossfade': Tells MPD to fade the song out and the fade in the new song in 'fade time(s)' seconds.
260 * 'Replaygain': Select the replaingain mode.
261 * 'Output devices': Enable/disable output devices.
264 === Interface 
265 image:Images/preferences-interface.png[]
267 Configure GMPC interface.
269 * 'Hide on close': If the GMPC is closed, hide to the notification tray.  (If no notification tray is present, GMPC is minimized.)
270 * 'Stylize album covers': Make covers look like it is placed inside a casing.
271   image:Images/pc-cover.png["With casing"]
272   image:Images/pc-cover-plain.png["Withouth casing"]
273   
274 * 'Stop playing on exit':  If you quit GMPC, stop playback.
275 * 'Show song tooltip': Enabled tooltips on the song list. Showing an information about the song under the mouse pointer.
276 * 'Enable search as you type': Make GMPC search directly as you type. (Might be slow).
277 * 'Show buttons instead of dropdown in collapsed view': Changes the dropdown to a button list. See xref:sidebar[Sidebar].
278 * 'Center playing song': Make GMPC center the playing song in the play queue.
279 * 'Save position and size between sessions': Make GMPC store and retstore it size between sessions.
281 === Tag Based Browser 
282 image:Images/preferences-tag-based-browser.png[]
284 === Multimedia Keys
285 image:Images/preferences-multimedia-keys.png[]
287 === Notification
288 image:Images/preferences-notification.png[]
290 * 'Show on song change': This will pop a notification as soon as the song changes with information about the new song.
291 * 'Timeout': This is the time in seconds for which the notification lasts on the screen.
292 * 'Position': There are five options.
293 ** 'At the notification area icon': Notification is at the gmpc icon in the notification area.
294 ** 'Upper Left Corner': Notification is in the upper left corner of the screen.
295 ** 'Upper Right Corner': Notification is in the upper right corner of the screen.
296 ** 'Lower Left Corner': Notification is in the lower left corner of the screen.
297 ** 'Lower Right Corner': Notification is in the lower right corner of the screen.
298 * 'Enable': Tick box which enables the gmpc icon in the notification area when ticked.
299 * 'Show severity': The amount of messages which will be displayed in the gmpc window. This dropdown has four options.
300 ** 'information and up': Information messages, warnings and errors will be displayed.
301 ** 'warnings and up': Warnings and errors will be displayed.
302 ** 'errors': Only errors will be displayed.
303 ** 'none': Nothing will be displayed.
305 === Metadata Handler
306 image:Images/preferences-metadata-handler.png[]
308 The metadata handler is a function in GMPC to give priority to different plugins.
309 You can give every plugin a number between 1 and 100 where 1 is the lowest and 100 the highest priority.
310 GMPC will use these numbers to share the amount of resources between every plugin, this means the higher priority a plugin has, the more resources it gets allocated.
312 === Proxy
313 image:Images/preferences-proxy.png[]
315 === Metadata Browser
316 image:Images/preferences-metadata-browser.png[]
318 == Metadata Selector
319 You can open the metadata selector by right clicking on the metadata item, f.e. a lyrics and selecting 'metadata selector'.
320 image:Images/meta-data-selector-artist.png[]
321 image:Images/meta-data-selector-lyrics.png[]
323 If gmpc fails to find the right metadata, you can view all the results in the metadata selector.  You can edit the exact value of the query fields and retry the query.
324 As you can see in the above screenshots you can see the results, where they came from and the size (if it is an image)
326 The following items can be selected:
328 * Artist art
329 * Album cover
330 * Song lyric
331 * Album Information
332 * Artist Biography
333 * Guitar tab.
335 == Browsers
337 === Now Playing
338 image:Images/nowplaying.png[]
340 The now playing browser shows you all sorts of information about the song playing right now.
341 Information found on the now playing page changes as soon as a new track starts. 
343 * 'Album picture': The image in the upper left corner is the album picture.
344 * 'Song title': The big headlining text is the song title.
345 * 'Artist name': The performers of the current song.
346 * 'Album name': The album name in which the current song is featured.
347 * 'Genre': This displays the genre of the current playing song.
348 * 'Format': Format is giving information about sound specific information, the amount of channels, the frequency of the song and the amount of kbps.
349 * 'Codec': Codec used for decoding the song.
350 * 'Length': Length of the song in minutes, rounded downwords (2:10 = 2 minutes, 1:59 = 1 minute)
351 * 'Track number': Track number of the album it's featuring in.
352 * 'Artist picture': Image in the upper right corner is a picture from the artist.
354 Under the general information you can see a tabbed view of more information which we will explain now.
356 * 'Lyrics': Fetches and displays them when possible. (Lyrics can only be fetched when lyrics plugins are installed)
357 * 'Guitar Tabs': Fetches guitar tabs for the current playing song. (This only works with the Guitar Tabs plugin installed)
358 * 'Similar Songs': Will find similar songs in your own database based on the genre of the song.
359 * 'Similar Artists': Last.fm checks for similar artists and these results are displayed.
360 * 'Web Links': Shows several links to different pages.
361 * 'Artist Information': Shows information about the artist fetched from last.fm.
363 To the right of the tabbed view there is a list of other albums from the currently playing artist.
364 When you click on one of the albums, it will give you information about the album in the metadata browser.
366 NOTE: The album list will only be shown when there are actually other albums from the artist in your mpd database.
368 === Database
370 image:Images/database.png[]
372 The database browser is a directory listing of all your music. With the browser you can browse through all your music currently in the mpd database.
373 The folder tree looks like a real folder tree, but it actually is a copy of the music folder tree.
374 In case you delete, add or change files, you must first update the database to update the folder/file tree.
375 As you can see on the screenshot there are two parts of the window.
376 To the left you can see the folder tree, this shows all folders in your music folder.
377 Next to the folder tree are colums which show the files and folders from the currently selected folder (the one selected in the folder tree).
379 When you right click on a folder in the folder tree, you get three options.
381 * 'Add': Adds all music files in the selected folder to the playlist.
382 * 'Replace': Empties the current playlist and adds all music files in the selected folder to the playlist.
383 * 'Update': Updates the database (and the folder tree).
385 You can also right click on a folder or file in the right window. The following options are available.
387 * 'Add': Adds the specific file(s) and/or folder(s) to the playlist.
388 * 'Replace': Empties the current playlist and adds the specific file(s) and/or folder(s) to the playlist.
389 * 'Update': Updates the database and the left folder tree. (Only available when right clicking a folder)
390 * 'Information': Shows information about the selected song. (Only available when right clicking one song)
391 * 'Add to playlist': Gives a number of options to add the selected file or folder to a playlist. (Only works for one file or folder at a time)
392 ** 'New': Gives you the possibility to create a new playlist.
393 ** List of playlists: all available playlists are shown here.
394 * 'Add more': Gives a number of options to add more files to the playlist. (Only showing up when right clicking one song)
395 ** 'All from album': Adds all songs from the same album to the playlist.
396 ** 'All from artist': Adds all songs from the same artist to the playlist.
397 ** 'All from genre': Adds all songs from the same genre to the playlist.
398 ** 'All from same directory': Adds all songs from the same directory to the playlist.
399 * 'Tools': Gives a number of options for the selected folder(s) and/or file(s).
400 ** 'Metadata selector': Gives you the possibility to find information about the selected song. (Album cover, artist art, lyrics etc.)
401 ** 'Queue songs for tag edit': Tag Edit gives you the possibility to modify ID3 tags. (Only works with the Tag Edit plugin enabled)
402 * 'Copy': Copies the selected folder(s) and/or file(s), you can paste them in the playlist.
403 * 'Edit columns': With this function you can enable/disable columns from showing in the right window. (Check the image for available options)
405 image:Images/database-columns.png[]
407 === Play Queue
408 image:Images/play-queue.png[]
411 This is basically your master-playlist. Every title you want to listen to will appear here. You can add songs to the play-queue by opening the context menu (right mouse click) in either the file in the database or the playlist-editor and selecting "Add". 
413 ==== Sorting
414 You can move a single song to a new location using drag and drop. You can move a single row by selecting it, and dragging it to the new location.
415 To quickly move around multiple songs you can cut, copy and then paste songs within the play-queue. It is even possible to copy songs from other lists and insert them at a certain position in the play-queue.
417 NOTE: GTK does not yet provide a method of moving multiple rows using drag and drop. Instead of adding this using dirty hacks, a more robust cut/copy/paste system was added.
419 ==== Filter
420 You can filter the play-queue by pressing 'ctrl-f' or start typing when it is selecting. The playlist filter supports the xref:query-syntax[Query syntax]. 
422 TIP: If the filter is slow in updating the playlist, because you are on a slow connection or MPD runs on a slow machine. You can disable search-as-you-type in the xref:preferences[preferences] pane.
425 ==== Editing columns
426 You can edit what columns GMPC displays in the play-queue (or any song list), by opening the xref:play-queue-context-menu[context-menu] (right click) and selecting 'edit columns'
428 [[play-queue-context-menu]]
429 ==== Context menu
430 If you do a right click on an entry of the play queue, you will get this context-menu:
432 image:Images/play-queue-rightclick.png[]
435 NOTE: This context-menu will depend on the plugins you have installed and activated. Some plugins cause an entry here, others don't.
438 ==== Useful key-bindings
440 * 'Center playing song': Hit the space bar.
441 * 'Delete selected song':  Hit del.
442 * 'Opening filter': Ctrl-f.
443 * 'Empty filter': Escape.
444 * 'Close filter':  Escape or backspace when empty.
446 TIP: If you enable 'Enable songlist tooltip' in xref:preferences[preferences] pane. Gmpc will show a tooltip with the album cover and some information about the song you are hovering.
451 === Tag Browser
453 === Search
455 === Metadata Browser
457 == Server Information
458 image:Images/server-information.png[]
460 [[query-syntax]]
461 == Query Syntax
463 The query syntax is used in the search browser, the playlist quick search and in easy command.
465 The syntax consists of the following:
467 ---------------
468 <field>=<value>
469 ---------------
471 This will search for value in the field field.
473 The following fields are supported:
475     artist
476     album
477     title
478     track
479     Name (applies to streams)
480     Genre
481     Date
482     Composer
483     Performer
484     Comment
485     Disc
486     Filename
487     AlbumArtist
488     Any (searches all the above fields) 
490 If your MPD does not support any of these fields, they will be ignored and seen as part of the command.
492 The search is tokenized and case insensitive, so for example:
494 -------------------
495 artist=eric clapton
496 -------------------
498 Will match both "eric clapton", "Clapton, Eric". To stop this tokenization wrap the values in (). For example:
500 ---------------------
501 artist=(Eric Clapton)
502 ---------------------
504 Will not match "Clapton, Eric".
507 To refine your search multiple queries can be concatenated:
509 For example:
511 ----------------------------------
512 artist=Eric Clapton album=Slowhand
513 ----------------------------------
515 There is also an option to run multiple queries at once by using the or operator ||:
517 -----------------------------------------
518 artist=Eric Clapton || artist=Norah Jones
519 -----------------------------------------
521 This will return all songs by Eric Clapton and Norah Jones.
523 NOTE: If <field= > is ommited, all fields are searched. 
526 == Easy Command
527 image:Images/Gmpc-easy-command.png[]
529 GMPC has an feature called "Easy Command". Easy command gives you a small command box, allowing you to quickly execute commands without having to use the mouse.
531 For example, send the command to gmpc to search in the play queue for the song Holy Mother from the artist Eric Clapton and play that song immediately the following could easily be typed.
533 First, start the "easy command" mode:
535 ----------
536 ctrl-space
537 ----------
539 Next, type the following command:
541 ------------------------------------------
542 play title=Holy mother artist=Eric Clapton
543 ------------------------------------------
545 You can also concatenate commands:
547 --------------------------------------------
548 clear; add artist=Strehli; play title=SRV
549 --------------------------------------------
551 You can also bind a global one in preferences -> Multimedia Keys.
553 Some commands use the xref:query-syntax[Query syntax].
555 === Implemented Easy Commands
556 To get a more uptodate list of possible commands, see Help -> Easy command help in gmpc.
558 ====  Switch
560 *    switch play queue: Switch to play queue
561 *    switch metadata browser: Switch to the metadata browser
562 *    switch search: Switch to the search browser 
564 ==== Main
566 *    quit: Quit gmpc
567 *    hide: Hide gmpc
568 *    show: Show gmpc
569 *    show notification: Show the tray-icon notification. (if enabled) 
571 ==== Playback
573 *    play: start playback
574 *    pause: pause playback
575 *    next: next song
576 *    prev: previous song
577 *    stop: stop playback
578 *    random (on|off): Random (on|off)
579 *    repeat (on|off): Repeat (on|off)
580 *    volume [+-]?[0-9]+: Volume <level>
581 *    mute: Mute
582 *    play .*: Play <query> 
584 *    seek hh:mm:ss: Seek to position
585 *    seek +hh:mm:ss: Seek relative to current position
586 *    seek -hh:mm:ss: Seek backwards relative to current position 
588 *    repeat current song: Repeats the currently playing song forever
589 *    stop after current song: Stops playback after current song.
590 *    consume (on|off)
591 *    single (on|off) 
593 ==== Play-Queue Manipulation
595 *    add .*: Add <query>
596 *    replace .*: Replace <query>
597 *    Clear play queue: Clear play queue 
598 *    Crop current song: Clears the whole play queue without removing the current playing song. 
600 ==== Search
602 *    search database .*: Search database <query>
603 *    search playlist .*: Search playlist <query> 
605 ==== Metadata Browser
607 *    show current song: Show the page of the current playing song.
608 *    show current artist: Show the page of the current playing artist
609 *    show current album: Show the page of the current playing album