Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
PLAYERCTL(1)		    General Commands Manual		  PLAYERCTL(1)

NAME
       playerctl -- control media players via MPRIS

SYNOPSIS
       playerctl [-aFhlV] [-f FORMAT] [-i NAME]	[-p NAME] command

DESCRIPTION
       The  playerctl  utility controls	MPRIS-enabled media players.  In addi-
       tion to offering	play, pause and	stop control,  playerctl  also	offers
       previous	and next track support,	the ability to seek backwards and for-
       wards in	a track, and volume control.  playerctl	also supports display-
       ing  metadata  (e.g.,  artist, title, album) for	the current track, and
       showing the status of the player.

       Players that can	be controlled using  playerctl	include	 audacious(1),
       cmus(1),	 mopidy(1),  mpd(1),  quodlibet(1),  rhythmbox(1),  vlc(1) and
       xmms2(1).  However, any player  that  implements	 the  MPRIS  interface
       specification can be controlled using playerctl including web browsers.

       Playerctl  also comes with a daemon called playerctld which keeps track
       of media	player activity. When playerctld is  running,  playerctl  com-
       mands  will act on the media player with	the most recent	activity.  Run
       the command playerctld daemon to	start the daemon.

       The options are as follows:

       -a, --all-players
	       Apply command to	all available players.

       -F, --follow
	       Block and output	the updated query when it changes.

       -f FORMAT, --format FORMAT
	       Set the output of the current command to	FORMAT.	  See  "Format
	       Strings".

       -h, --help
	       Print this help,	then exit.

       -i NAME,	--ignore-player	NAME
	       Ignore the specific player NAME.	 Multiple players can be spec-
	       ified in	a comma-separated list.

       -l, --list-all
	       List the	names of running players that can be controlled.

       -p NAME,	--player NAME
	       Control	the  specific  player  NAME.   Multiple	players	can be
	       specified in a comma-separated list.   Defaults	to  the	 first
	       available  player.   The	 name  "name"  matches both "name" and
	       "name.{INSTANCE}".  Additionally, the name "%any"  matches  any
	       player.

       -s, --no-messages
	       Silence some diagnostic and error messages.

       -V, --version
	       Print version number, then exit.

       The commands are	as follows:

       status  Get the current status of the player.

       play    Command the player to play.

       pause   Command the player to pause.

       play-pause
	       Command the player to toggle between play and pause.

       stop    Command the player to stop.

       next    Command the player to skip to the next track.

       previous
	       Command the player to skip to the previous track.

       position	[OFFSET[+|-]]
	       Print  the  position  of	 the  current  track in	seconds.  With
	       OFFSET specified, seek to OFFSET	seconds	from the start of  the
	       current	track.	With the optional [+|-]	appended, seek forward
	       or backward OFFSET seconds from the current position.

       volume [LEVEL[+|-]]
	       Print the player's volume scaled	from 0.0 (0%) to  1.0  (100%).
	       With  LEVEL  specified, set the player's	volume to LEVEL.  With
	       the optional [+|-] appended, increase or	decrease the  player's
	       volume by LEVEL.

       metadata	[KEY]
	       Print  all metadata properties for the current track set	by the
	       current player.	If KEY is specified only the value of  KEY  is
	       printed.

       open URI
	       Open  URI  in  the player.  URI may be the name of a file or an
	       external	URL.

       shuffle [On | Off | Toggle]
	       Print the shuffle status	of the player.	With the shuffle  sta-
	       tus  specified,	set the	shuffle	status to either On , Off , or
	       Toggle

       loop [None | Track | Playlist]
	       Print the loop status of	the  player.   With  the  loop	status
	       specified, set the loop status to None (disable looping), Track
	       (loop  the  current  track),  or	 Playlist  (loop  the  current
	       playlist).

   Format Strings
       The output of the position, metadata, status and	volume commands	can be
       controlled using	a format string.  Variables set	by these commands  can
       be  included  in	 the  format string by enclosing them in curly braces:
       `{{var}}'.  These will then be expanded on output.

       Each command has	access to the following	variables:

       playerName
	       The name	of the current player.

       position
	       The time	position of the	current	track, in microseconds.

       status  The status of the current player.

       volume  The player's volume scaled from 0.0 (0%)	to 1.0 (100%).

       Each property listed in the metadata command are	also set as variables.
       It is recommended to check this list  for  each	player,	 as  different
       players	may  not  set  the same	properties.  See the MPRIS v2 metadata
       guidelines for a	list of	all properties	in  the	 MPRIS	specification.
       The most	common properties are as follows:

       album, xesam:album
	       The album of the	current	track.

       artist, xesam:artist
	       The artist of the current track.

       title, xesam:title
	       The title of the	current	track.

       Helper  functions  are  also  available to transform expanded variables
       into  other   representations.	 They	are   called   in   the	  form
       `{{func(var)}}'.	 The helper functions are as follows:

       lc(str)
	       Convert string str to lowercase.

       uc(str)
	       Convert string str to uppercase.

       markup_escape(str)
	       Escape XML characters in	string str.

       default(str1, str2)
	       Print str1 if set, else print str2.

       duration(time)
	       Reformat	the microsecond	timestamp time in the form `hh:mm:ss'.
	       Can only	be called with position	or mpris:length.

       emoji(key)
	       Try  to	convert	 the value for key to an emoji representation.
	       Currently implemented for status	and volume.

       The template language is	also able to perform basic math	operations.

       References to unknown functions will cause playerctl to	exit  with  an
       error.	References  to	unknown	 variables  will  be expanded to empty
       strings.	 Text not enclosed in braces will be printed verbatim.

EXIT STATUS
       The playerctl utility exits 0 on	success, and >0	if an error occurs.

EXAMPLES
       Print the player	name, playback status in lowercase, and	 position  and
       length in human readable	form:

	     $ playerctl metadata --format '{{playerName}}: {{lc(status)}} '\
	     '{{duration(position)}}|{{duration(mpris:length)}}'

SEE ALSO
       MPRIS	    v2	     metadata	    guidelines,	      freedesktop.org,
       https://freedesktop.org/wiki/Specifications/mpris-spec/metadata/,
       September 18, 2013.

       playerctl homepage: https://github.com/altdesktop/playerctl,  playerctl
       API     documentation:	 https://dubstepdish.com/playerctl,    GObject
       introspection			language		     bindings:
       https://wiki.gnome.org/Projects/GObjectIntrospection/Users

AUTHORS
       The    playerctl	   utility    is    maintained	  by	Tony	Crisci
       <tony@dubstepdish.com> and is made available under the GNU Lesser  Gen-
       eral Public License 3.0.

       This  reference was written by Nick Morrott <knowledgejunkie@gmail.com>
       for the Debian GNU/Linux	project.  It was later updated and expanded by
       Stephen Gregoratto <dev@sgregoratto.me>.

FreeBSD	Ports 14.quarterly     November	30, 2020		  PLAYERCTL(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=playerctl&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>

home | help