|Current Maintainer(s):||Oleg Vinichenko|
|Source Repository:||No results|
Summary: Video player based on MPlayer/mplayer2.
- Enable support for various archive formats via app-arch/libarchive
- Enable playback of Blu-ray filesystems
- Enable Bauer stereophonic-to-binaural headphone filter
- Build mpv CLI player
- Enable CDDA support via dev-libs/libcdio-paranoia
- Build documentation in pdf format
- Enable Kernel Mode Setting / Direct Rendering Manager based video output
- Enable support for various EGL-based video outputs
- Enable subtitles charset discovery via app-i18n/enca
- Enable Graphics Buffer Manager based EGL video output
- Enable support for saving screenshots in JPEG format
- Enable OSD (On Screen Display) and subtitles support via media-libs/libass
- Enable subtitles charset discovery via app-i18n/libguess
- Build mpv shared library
- Enable Lua scripting, OSC (On Screen Controller) GUI and net-misc/youtube-dl hook-script
- Use dev-lang/luajit instead of dev-lang/lua
- Enable Video4Linux2 MPEG PVR
- Enable support for the Raspberry Pi
- Enable high quality pitch correction via media-libs/rubberband
- Enable media-libs/libsdl2 based video and audio outputs (Note: these outputs exist for compatibility reasons only, avoid if possible)
- Install extra tools: mpv_identify.sh, mpv_idet.sh, and umpv
- Enable subtitles charset discovery via dev-libs/uchardet
- Install additional video filters to be used with -vf dlopen
mpv is a simple and lightweight media player for video and audio. As a fork of mplayer2, it shares some features while introducing others. To learn more about the differences take a look at their docs.
Due to it's high flexibility and configurability, mpv is great for media center usage, lightweight systems or just users who know what they want in a media player. For a more out-of-the-box solution, several alternatives like media-video/vlc (package not on wiki - please add) or media-video/totem (package not on wiki - please add) are recommended.
# emerge media-video/mpv
mpv does not ship with a graphical user interface (besides the video display). The easiest way to play a video is:
# mpv /path/to/video/file
Since this is not very comfortable, you can of course set mpv as the default application for video playback. Depending on your environment you can use either the configuration tools provided by your desktop environment/file manager; for more info, see .
Because there are no gui elements, keyboard shortcuts are used to control mpv. The following table provides the most important one; check the manpage (
man mpv) for more.
|Play/Pause||Space or p|
|Increase/Decrease volume||/ and * or 9 and 0|
|Cycle through the available audio tracks||#|
You may change all of these bindings (and more) to your custom using the config file.
Even though mpv works fine without a config file, the configuration options allow to adjust a lot of settings. A short example is provided below:
# Save the video position on quit save-position-on-quit # Use the vdpau driver for hardware decoding (for nvidia cards) hwdec=vdpau # Video output driver. A list can be displayed via: mpv -vo=help vo=opengl
All possible options are listed in the man page:
# man mpv
You may create a separate file called input.conf for customizing the shortcuts for mpv. The example below binds the key "n" to skip to the next video in the current playlist and the key "p" to skip to the previous video:
n playlist_next p playlist_prev
The man page provides information about all possible bindings.
mpv is capable of playing twitch.tv/youtube streams and videos. To enable this, install net-misc/youtube-dl (package not on wiki - please add) and enable the lua useflag on media-video/mpv.
# emerge -a net-misc/youtube-dl # echo "media-video/mpv lua" >> /etc/portage/package.use
After everything is set up, use the --ytdl parameter for youtube and twitch playback:
# mpv --ytdl [url]