MPlayer is a popular movie player for GNU/Linux. It has support for most video and audio formats and is thus highly versatile, even if it is mostly used for viewing videos.
- MPlayer — Official package
Notable variants are:
- MPlayer-VAAPI — VAAPI-enabled version
- MPlayer-svn — Development version
- || AUR
- MPlayer2 — Fork of MPlayer
- || AUR
- GNOME MPlayer — Simple GTK+-based GUI for MPlayer.
- KPlayer — Multimedia player for KDE4 using mplayer as a backend.
- KMPlayer — Video player plugin for Konqueror and basic MPlayer/Xine/ffmpeg/ffserver/VDR frontend for KDE.
- SMPlayer — Qt multimedia player with extra features (CSS themes, YouTube integration, etc.).
If you want to let MPlayer control video viewing in your favorite web browser, install one of the following plugins for your browser.
A browser plugin is available in the official repositories with thepackage.
A plugin for Konqueror can be found in the AUR with the package.
The Chromium.plugin for Firefox also works in
System-wide configuration files are located in the
/etc/mplayer/, whereas the user-local settings are stored in
The default files in the
codecs.conf- Contains configuration of codecs.
example.conf- Is an example of mplayer.conf, which is not automatically created after installation.
input.conf- Contains configuration of a hotkeys.
config is created in the
~/.mplayer/ directory by default.
See also: Example MPlayer configuration file,
System key bindings are configured via
/etc/mplayer/input.conf. Personal key bindings are stored in
~/.mplayer/input.conf. For a complete list of keyboard shortcuts look at
See also: XF86 keyboard symbols
Tips and tricks
Automatic resuming from where you left off
To get this behavior, you can install the AUR. The package contains a Perl wrapper script for MPlayer which will allow you to autoresume playback from the point it was last stopped.AUR package from the
To use it, simply call the wrapper script in place of MPlayer:
$ mplayer-resumer options path/to/file
If this script is restarted within a short amount of time after closing MPayer (default 5 seconds) then it will delete the file used to keep track of the videos resume position, effectively starting the video from the beginning.
If the video file to be played is on a read-only filesystem, or otherwise lives in a location that cannot be written to, resume will fail. This is because the current implementation uses a file parallel to the video file to store the timecode.
Append the following to either the system-wide (
/etc/mplayer/mplayer.conf) or user-specific (
~/.mplayer/config) configuration files:
This requiresAUR from the AUR.
$ mplayer -vo vaapi -va vaapi foobar.mpeg
- -vo - Select vaapi video output driver
- -va - Select vaapi video decoder driver
MPlayer based players:
: To enable hardware acceleration: Edit > Preferences > Player, then set Video Output to
vaapi. : To enable hardware acceleration: Options > Preferences > General > Video, then set Output driver to
Translucent video with Radeon cards and Composite enabled
To get translucent video output in X you have to enable textured video in MPlayer:
$ mplayer -vo xv:adaptor=1 file
Or add the following line to
You can use
xvinfo to check which video modes your graphic card supports.
Watching streamed video
If you want to play a video stream (e.g an
ASX link) use:
$ mplayer -playlist link-to-stream.asx
-playlist option is necessary because these streams are actually playlists and cannot be played without it.
To play a DVD with MPlayer:
$ mplayer dvd://N
where N is the desired title number. Start at 1 and work up if unsure. To start at a specific chapter use the '-chapter' flag. For example, adding '-chapter 5' to the command starts the dvd playing at chapter five of the title.
/dev/dvd by default. Tell it to use
/dev/sr0 with the
dvd-device option at the command line, or the
dvd-device variable in
To play a DVD image file:
$ mplayer -dvd-device movie.iso dvd://N
To enable the DVD menu use:
$ mplayer dvdnav://
To enable mouse support in DVD menus use:
$ mplayer -mouse-movements dvdnav://
To find the audio language, start MPlayer with the
-v switch to output audio IDs. An audio track is selected with
-aid audio_id. Set a default audio language by editing
~/.mplayer/config and adding the line
alang=en for English.
With MPlayer, the DVD could be set to a low volume. To increase the maximum volume to 400%, use
softvol-max=400. The startup volume defaults to 100% of software volume and the global mixer levels will remain untouched. Using the
0 keys, volume can be adjusted between 0 and 400 percent.
alang=en softvol=yes softvol-max=400
See DVB-T for more info.
To have MPlayer audio output directed to JACK as its default behavior, edit
~/.mplayer/config and add:
If you do not have JACK running all the time, you can have MPlayer output to JACK on an as-needed basis by invoking MPlayer from the command line as such:
$ mplayer -ao jack path/to/file
In order to get Advanced SubStation Alpha (ass) or SubStation Alpha (ssa) formatted subtitles to display properly you need to either edit
~/.mplayer/config and add:
or add -ass to the command line:
$ mplayer -ass path/to/subtitledVideo.mkv
One possible indication of needing to enable this flag is if you get numbers appearing with your subtitles. This is caused by the positioning information being interpreted as something to be displayed. Mplayer will also complain about subtitles being either too long or having too many lines.
ass also enables any embedded fonts. As per the note in the mplayer's man adding
embeddedfonts=true is unneeded if is version 2.4.2 or newer. Fontconfig will also be used to select which font to use when there are no embedded fonts. This may result in a different font being used than the OSD subtitle renderer.
Here is an example of a script for an easy start/stop of playing a predefined radio station. 
#!/bin/bash XX="X"$1; PLAYIT='mplayer -loop 0 -playlist http://*.*.*.*:8000/listen.pls'; if [ "$XX" == "Xstop" ]; then killall mplayer; else if [ 'EX' == 'EX'"$(pidof mplayer)" ]; then if [ "$UID" -ne 0 ]; then nohup $PLAYIT &> /dev/null & disown; else echo The "root" user is not allowed to run this script. fi else echo mplayer is already running by user: $(ps -eo user,comm | grep -i "mplayer"$ | sed 's/ mplayer/,/m') | sed "s/ ,$/./m"; fi fi
For more details on a running mplayer instance:
$ ps -eo pcpu,pid,user,comm | grep -i "mplayer"$ | sed "s/ mplayer$//m"
MPlayer fails to open files with spaces
MPlayer can fail to open a file with spaces (e.g. 'The Movie') by saying that it could not open the file
file:///The%20Movie (where all spaces are converted to
%20). This can be fixed by editing
/usr/share/applications/mplayer.desktop to changing the following line from:
If you use a frontend/GUI for MPlayer, enter its name in
MPlayer has black or strange colored font for OSD and Subtitles
There appears to be an issue with OSD and Subtitle colors when using vdpau output, which mplayer may be using by default. You can get around this issue by using xv instead of vdpau:
As a command line option:
mplayer -vo xv
Adding the following line to your
See the original forums thread for details.
SMPlayer: No video issue
SMPlayer may have trouble opening some
MP4 (and probably
FLV) videos. If it plays only audio without any video, a possible fix is to add the following lines to your
If problem persists after doing so, it is because SMPlayer is keeping settings for that specific file. Deleting the settings for all the files that SMPlayer is keeping will solve this problem:
$ rm -rf ~/.config/smplayer/file_settings
SMPlayer: fail to resume playback after pause
SMPlayer might stop playing a video after pausing it if your audio output driver is incorrectly set. You can fix this by specifically setting your audio driver. For example, if you use PulseAudio, this can be done by starting MPlayer with the
-ao pulse argument or by adding
the following to your
You can also change this from SMPlayer by going to Options > Preferences > General > Audio and setting the Output Driver option to pulse.
SMPlayer: no video when using transparency in GNOME
This problem may arise under GNOME when using Compiz to provide transparency: SMPlayer starts with a transparent screen with audio playing, but no video. To fix this, create (as root) a file with the contents:
export XLIB_SKIP_ARGB_VISUALS=1 exec smplayer.real "$@"
Then do the following:
# chmod 755 /usr/local/bin/smplayer.helper # ln -sf /usr/local/bin/smplayer.helper /usr/local/bin/smplayer
SMPlayer: OSD font too big / subtitle text too small
Since SMPlayer 0.8.2.1 (with MPlayer2 20121128-1), the ratio of the subtitle font to the OSD font is very strange. This can result in the OSD text filling the whole screen while the subtitles are very small and unreadable. This problem can be solved by adding:
or to the extra options passed to MPlayer from SMPlayer. These options are found in Options > Preferences > Advanced > Options for MPlayer. This can also be achieved by adding the following line to
Mplayer shows question marks for some characters on subtitle
If the codepage of the subtitles is utf8, try using:
You can find the codepage of the subtitles with:
Choppy audio CD playback
CDDA playback may be interrupted every few seconds as the CDROM spins down the CD. To get around this you need to cache or buffer in advance using the
mplayer cdda://:1 -cache 1024
:1 is to lower the CDROM speed for a constant spin and less noise.