Skip to content
github-actions[bot] edited this page Jul 4, 2026 · 13 revisions

Note

This page is auto-generated from man/waybar-mpris.5.scd on the master branch. Do not edit it here — changes will be overwritten on the next sync. To update it, edit the man page(s) and open a PR.

DESCRIPTION

The mpris module displays currently playing media via libplayerctl.

CONFIGURATION

Option Typeof Default Description
player string playerctld Name of the MPRIS player to attach to. Using the default value always follows the currently active player.
ignored-players []string Ignore updates of the listed players, when using playerctld.
interval integer 0 Refresh MPRIS information on a timer.
format string {player} ({status}): {dynamic} The text format.
format-[status] string The status-specific text format.
tooltip bool true Option to disable tooltip on hover.
tooltip-format string {player} ({status}): {dynamic} The tooltip text format.
tooltip-format-[status] string The status-specific tooltip format.
artist-len integer Maximum length of the Artist tag (Wide/Fullwidth Unicode characters count as two). Set to zero to hide the artist in `{dynamic}` tag.
album-len integer Maximum length of the Album tag (Wide/Fullwidth Unicode characters count as two). Set to zero to hide the album in `{dynamic}` tag.
title-len integer Maximum length of the Title tag (Wide/Fullwidth Unicode characters count as two). Set to zero to hide the title in `{dynamic}` tag.
dynamic-len integer Maximum length of the Dynamic tag (Wide/Fullwidth Unicode characters count as two). The dynamic tag will not truncate any tags beyond their set length limits, instead, it will attempt to fit as much of the available tags as possible. It is recommended you set title-len to something less than or equal to this value, so the title will always be displayed.
dynamic-order []string ["title", "artist", "album", "position", "length"] Order of the tags shown by Dynamic tag. The position and length tags will always be combined in the format [{position}/{length}]. The order of these tags in relation to other tags will be determined based on the declaration of the first among the two tags. Absence in this list means force exclusion.
dynamic-importance-order []string ["title", "artist", "album", "position", "length"] Priority of the tags when truncating the Dynamic tag. The final ones will be the first to be truncated. Absence in this list means force inclusion.
dynamic-separator string " - " These characters will be used to separate two different tags, except when one of these tags is position and length.
truncate-hours bool true Whether to hide hours when media duration is less than an hour long.
enable-tooltip-len-limits bool false Option to enable the length limits for the tooltip as well. By default, the tooltip ignores all length limits.
ellipsis string "…" This character will be used when any of the tags exceed their maximum length. If you don't want to use an ellipsis, set this to empty string.
rotate integer Positive value to rotate the text label (in 90 degree increments).
max-length integer The maximum length in character the module should display.
min-length integer The minimum length in characters the module should accept.
align float The alignment of the label within the module, where 0 is left-aligned and 1 is right-aligned. If the module is rotated, it will follow the flow of the text.
justify string The alignment of the text within the module's label, allowing options 'left', 'right', or 'center' to define the positioning.
on-click string play-pause Overwrite default action toggles.
on-click-middle string previous track Overwrite default action toggles.
on-click-right string next track Overwrite default action toggles.
on-click-backward string previous track Overwrite the default action for the backward mouse button (button 8).
on-click-forward string next track Overwrite the default action for the forward mouse button (button 9).
prefer-album-artist bool false When true, use the album artist instead of the track artist for the {artist} and {dynamic} tags, falling back to the track artist when no album artist is available.
player-icons map[string]string Allows setting {player_icon} based on player-name property.
status-icons map[string]string Allows setting {status_icon} based on player status (playing, paused, stopped).
expand bool false Enables this module to consume all left over space dynamically.

FORMAT REPLACEMENTS

{player}: The name of the current media player

{status}: The current status (playing, paused, stopped)

{artist}: The artist of the current track

{album}: The album title of the current track

{title}: The title of the current track

{length}: Length of the track, formatted as HH:MM:SS

{position}: Current playback position of the track, formatted as HH:MM:SS

{dynamic}: Use {artist}, {album}, {title} and {length}, automatically omit
empty values

{player_icon}: Chooses an icon from player-icons based on {player}

{status_icon}: Chooses an icon from status-icons based on {status}

EXAMPLES

"mpris": {
	"format": "{player_icon} {dynamic}",
	"format-paused": "{status_icon} <i>{dynamic}</i>",
	"player-icons": {
		"default": "▶",
		"mpv": "🎵"
	},
	"status-icons": {
		"paused": "⏸"
	},
	// "ignored-players": ["firefox"]
}

STYLE

  • #mpris

  • #mpris.${status}

  • #mpris.${player}

Clone this wiki locally