NAME
xmms2 - offers a simple command-line interface to the XMMS2 daemon
SYNOPSIS
xmms2 command
xmms2 mlib command
xmms2 playlist command
xmms2 coll command
DESCRIPTION
XMMS2 is a redesign of the XMMS (http://www.xmms.org) music player. It
features a client-server model, allowing multiple (even simultaneous!)
user interfaces, both textual and graphical. All common audio formats
are supported using plugins. On top of this, there is a flexible media
library to organize your music.
xmms2 is the official command-line interface client for XMMS2 and acts
as a reference implementation for the development of new clients.
xmms2 is able to issue commands to control the active playlist and
playback as well as commands to control the media library.
The following commands effect the current XMMS2 playlist.
xmms2 includes many commands that allow the user to execute actions on
xmms2d.
These commands are currently recognized:
add [playlist] url...
Adds URL(s) to playlist or the active playlist.
addarg [playlist] url arguments
Adds an URL to playlist or the active playlist, with arguments.
addid [playlist] medialib_id...
Adds song(s) to playlist or the active playlist using its Media
Library ID.
addpls [playlist] url
Adds a playlist in a file to playlist or the active playlist.
insert [playlist] pos url
Adds a URL to playlist or the active playlist at a specific
position.
insertid [playlist] pos medialib_id
Adds a song to playlist or the active playlist at a specific
position using its Media Library ID.
radd [playlist] directory
Adds a directory of songs recursively to playlist or the active
playlist.
clear [playlist]
Clears all entries from playlist or the active playlist.
shuffle [playlist]
Places the songs in playlist or the active playlist in a random
order.
sort property
Sort the active playlist based on metadata from the Media
Library. The metadata which is used for the sorting is based on
what was given for property. An overview of the media library,
and the potential properties, can be found in the MEDIA LIBRARY
section of this manual page.
sort playlist properties
Sort playlist based on metadata from the Media Library. Separate
the properties with a spaces.
remove [playlist] playlist_position
Removes a song from playlist or the active playlist at the
position given by playlist_position.
list [playlist]
Lists the contents of playlist or the active playlist. An
explanation of how to change the output format can be found in
the FILES section of this manual page.
play Starts playback of the playlist.
stop Stops playback of the playlist.
toggleplay
Toggles playback status between play/pause
pause Pauses playback of the playlist.
next Skips to the next song in the playlist.
prev Skips to the previous song in the playlist.
seek [+ / -]seconds
Seeks to a specific position in the currently playing song. The
way in which seek moves in the file is based on the arguments
passed to it. If + is used xmms2 will seek seconds forward in
the song. If - is used xmms2 will seek seconds backwards in the
song. If merely a number of seconds is given xmms2 will seek to
that absolute position in the song.
jump [+ / -]playlist_position
Jumps to playlist_position in the playlist or playlist_position
forward/backward if + or - is specified.
move [playlist] playlist_position new_position
Moves the song at playlist position to the position denoted by
new_position in playlist or the active playlist.
volume channel volume
Sets the volume of channel to volume.
volume_list
Lists the volume for each channel.
mlib Allows for the manipulation of the Media Library. The
significance of the sub-commands of mlib can be found in the
MEDIA LIBRARY section of this manual page.
playlist
Allows for the manipulation of playlists. The significance of
the sub-commands of playlist can be found in the PLAYLIST
section of this manual page.
coll Allows for the manipulation of collections. The significance of
this sub-commands of coll can be found in the COLLECTIONS
section of this manual page.
browse url
Lists the contents of url in a list of encoded urls.
status Gives a live status of the currently playing song.
info [id]
Gives the metadata archived by the Media Library for Media
Library id id or the currently playing song.
current [pattern]
Gives some summary of the currently playing song's meta data. A
pattern can be specified in the form "${album} - ${tracknr}".
Please be aware of your shells substitution features.
config config_key [=] value
Sets config_key to value on xmms2d(8).
config_list
Lists all the configuration values of XMMS2.
plugin_list
Prints a list of the plugins being used by XMMS2.
stats Retrieves the uptime and version from XMMS2.
quit Makes xmms2d(8) quit.
help Prints a concise overview of all commands offered by xmms2.
MEDIA LIBRARY
XMMS2 stores metadata about every song in the Media Library. One can
retrieve data from the Media Library using the mlib command of xmms2.
The Media Library is an SQL database which is created and accessed by
use of the sqlite library. xmms2 mlib includes many commands for
manipulating and retrieving data from the Media Library.
The following mlib commands are currently recognized:
add url
Adds a URL to the Media Library but not to the current playlist.
The Media Library also fetches associated metadata for the added
song.
loadall
Load all songs in the Media Library into the current playlist.
searchadd pattern
Searches the Media Library for songs that match pattern criteria
and adds them to the current playlist.
search pattern
Searches and returns a list of songs in the Media Library that
match pattern.
For example one could execute:
xmms2 mlib search artist:Dismantled
The result of which would be that all songs by Dismantled in the
Media Library would be listed.
addpath path
Adds all songs in directory path into the Media Library.
rehash Force the Media Library to check whether its data is up to date.
remove id
Removes a song from the Media Library with the id id.
setstr id key value [source]
sets a string Media Library property with key key and value
value for song with ID id. Optionally a source can be supplied
with the source argument. If no source is defined
client/xmms2-cli will be used.
setint id key value [source]
Sets a string Media Library property with key key and value
value for song with ID id. Optionally a source can be supplied
with the source argument. If no source is defined
client/xmms2-cli will be used.
rmprop id key [source]
Removes properties from the Media Library entry with id and with
key key and optionally source source.
addcover file id
Add a cover image for id(s) id.
The Media Library allows for any variety of keys (sometimes called
properties) to be stored within. There is no set list of available keys
but rather the Media Library can store any variety of different values.
For this reason it is difficult to give a complete list of available
keys but some examples are:
url The path to the song in url
added The time in seconds since UTC 00:00:00, 1 Jan 1970 that the song
was added to the Media Library
mime The MIME type of the song in the Media Library
lmod The last time in seconds since UTC 00:00:00, 1 Jan 1970 that the
song was modified
laststarted
The last time the song was played
timesplayed
The number of times the song was played
duration
The length of the song in milliseconds
bitrate
The bitrate of the song in bps
album The name of the album the song is on
artist The name of the artist that produced the song
title The title of the song
tracknr
The track number of the song
{album, artist, track}_id
MusicBrainz ID numbers for the song
PLAYLIST
XMMS2 has support for playlists which is tightly coupled with XMMS2's
Collections system. Playlist manipulation is accessible with the
playlist command of xmms2. xmms2 playlist includes many commands for
manipulating and retrieving data about playlists.
The following playlist commands are currently recognized:
list Lists all currently available playlists.
create [playlistname]
Create a new playlist named playlistname.
type [playlistname] [type]
Sets type of the playlist named playlistname to type type.
Descriptions of the available types can be found later in the
PLAYLIST section of this manual page.
load [playlistname]
Load a playlist specified by playlistname from the Media Library
remove [playlistname]
Remove a playlist specified by playlistname from the Media
Library
XMMS2 currently supports three types of playlists, each of these
playlists has a number of attributes which can be set using the coll
attr command described in the COLLECTIONS section of this manual page.
The available playlist types are:
list A simple list of medialib ids. The list has one attribute:
jumplist which is the name of a playlist to jump to when the list is
finished.
queue A static playlist which supports a fixed length playlist where
songs are removed as they are played. The queue has two
attributes:
jumplist which is the name of a playlist to jump to when the queue is
finished
history which is the number of played entries to keep before beginning
to remove them
pshuffle
A playlist which picks a configurable number of songs from a
collection at random. The pshuffle has three attributes:
jumplist which is the name of a playlist to jump to when the pshuffle
is finished. A pshuffle playlist only finishes when the collection from
which new songs are pulled dries up, for instance when filtering on
timesplayed < 1
history which is the number of played entries to keep before beginning
to remove them
upcoming which is the number of unplayed entries to show in the
playlist
COLLECTIONS
XMMS2 includes an extremely powerful method for querying and selecting
music from the Media Library called Collections. Some of the features
of collections are made accessible via the xmms2 client. xmms2 coll
includes many commands for manipulating and retrieving data about
Collections.
The following coll commands are currently recognized:
save [collname] [pattern]
Save the pattern pattern as a Collection named collname
rename [oldname] [newname]
Rename a Collection from oldname to newname.
list [namespace]
List all Collections, or if namespace is specified list only
collections in the Collections or Playlists namespace.
query [collname] [order]
Retrieve information about all media in the Collection named
collname ordered by order
queryadd [collname] [order]
Add all media from the Collection collname ordered by order to
the active playlist
find [mid] [namespace]
Find all collections in namespace that include the media
referenced by mid
get [collname]
Display information about the Collection collname
remove [collname]
Remove the collection referenced by collname
attr [collname] [attr] [val]
Set or get an attribute of name attr to value val on Collection
collname
xmms2 sometimes requires that the namespace of a Collection be
specified in collname. This is done by prepending either Playlists/ or
Collections/ to the beginning of the Collection name. If not specified
the namespace defaults to Collections.
FILES
$XDG_CONFIG_HOME/xmms2/clients/cli.conf or
$HOME/Library/xmms2/clients/cli.conf or
$HOME/.config/xmms2/clients/cli.conf
A configuration file containing basic configuration values for
xmms2, including the output format used by the list and status
commands.
ENVIRONMENTAL VARIABLES
XMMS_PATH
The URL path to xmms2d.
XDG_CONFIG_HOME
The path where the xmms2 configuration files are located See IPC
SOCKET in xmms2d(8) for details of possible values for this
variable
SEE ALSO
xmms2d(8), http://xmms2.xmms.org
HISTORY
The XMMS2 Project was started by Tobias Rundstrm and Anders Gustafsson.
It is developed with their lead by a small group of contributors from
all over the world.
AUTHOR
This manual page was written by Alexander Botero-Lowry
<alex@foxybanana.com>