id = "mplayer"
name = "MPlayer"
homepage = "https://mplayerhq.hu/"
description = "UNIX movie player"
executables = ["mplayer", "mencoder"]
[dotfiles]
paths = [
"~/.mplayer/config",
"~/.mplayer/input.conf",
"~/.mplayer/codecs.conf",
"~/.mplayer/mencoder.conf",
"~/.mplayer/gui.conf",
]
secret = []
[commands]
format = 1
label = "Play media"
description = "Play files or URLs with MPlayer. Video and audio driver choice, filters and encoding (mencoder) are left out."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = false, short_attached = false, short_bundles = false }
[[commands.source]]
id = "man"
kind = "manual"
url = "https://manpages.debian.org/unstable/mplayer/mplayer.1.en.html"
revision = "debian-unstable-2026-10"
evidence = """
mplayer [options] [file|URL|playlist|-]
-fs
Fullscreen playback (centers movie, and paints black bands around it).
-loop <number>
Loops the playback <number> times. 0 means forever.
-ss <time>
-endpos <[[hh:]mm:]ss[.ms]|size[b|kb|mb]>
Stop at given time or byte position.
-volume <-1-100>
Set the startup volume in the mixer, either hardware or software (if used with -softvol).
-shuffle
Play files in random order.
-playlist <filename>
Play files according to a playlist file (ASX, Winamp, SMIL, or one-file-per-line format).
-sub <subtitlefile1,subtitlefile2,...>
Use/display these subtitle files.
-speed <0.01-100>
Slow down or speed up playback by the factor given as parameter.
-nosound
Do not play/encode sound.
"""
[[commands.field]]
id = "files"
label = "Files or URLs"
type = "string"
position = 0
multiple = true
sources = ["man"]
[[commands.field]]
id = "playlist"
label = "Playlist file"
type = "path"
option = ["-playlist"]
path = { kind = "file", role = "input" }
sources = ["man"]
[[commands.field]]
id = "fullscreen"
label = "Fullscreen"
type = "boolean"
option = ["-fs"]
sources = ["man"]
[[commands.field]]
id = "loop"
label = "Loop count (0 = forever)"
type = "integer"
option = ["-loop"]
sources = ["man"]
[[commands.field]]
id = "start"
label = "Start position"
description = "Seconds or hh:mm:ss."
type = "string"
option = ["-ss"]
sources = ["man"]
[[commands.field]]
id = "end"
label = "Stop position"
description = "[[hh:]mm:]ss, relative to the file start."
type = "string"
option = ["-endpos"]
sources = ["man"]
[[commands.field]]
id = "volume"
label = "Startup volume (0-100)"
type = "integer"
option = ["-volume"]
sources = ["man"]
[[commands.field]]
id = "speed"
label = "Speed factor"
type = "number"
option = ["-speed"]
sources = ["man"]
[[commands.field]]
id = "sub"
label = "Subtitle file"
type = "path"
option = ["-sub"]
path = { kind = "file", role = "input" }
sources = ["man"]
[[commands.field]]
id = "shuffle"
label = "Shuffle"
type = "boolean"
option = ["-shuffle"]
sources = ["man"]
[[commands.field]]
id = "nosound"
label = "No sound"
type = "boolean"
option = ["-nosound"]
sources = ["man"]
[[commands.task]]
id = "play"
label = "Play files"
fields = ["files", "fullscreen", "loop", "volume"]
required = ["files"]
[[commands.task]]
id = "play_playlist"
label = "Play a playlist"
fields = ["playlist", "shuffle", "fullscreen"]
required = ["playlist"]
[[commands.group]]
id = "basic"
label = "Basic"
fields = ["files", "playlist", "fullscreen", "loop", "volume"]
[[commands.group]]
id = "advanced"
label = "Advanced"
fields = ["start", "end", "speed", "sub", "shuffle", "nosound"]