mpv is a free (as in freedom) media player for the command line. It supports a wide variety of media file formats, audio and video codecs, and subtitle types.
Scripting
Powerful scripting capabilities can make the player do almost anything. There is a large selection of user scripts on the wiki.
On Screen Controller
While mpv strives for minimalism and provides no real GUI, it has a small controller on top of the video for basic control.
High quality video output
mpv has an OpenGL, Vulkan, and D3D11 based video output that is capable of many features loved by videophiles, such as video scaling with popular high quality algorithms, color management, frame timing, interpolation, HDR, and more.
GPU video decoding
mpv can leverage most hardware decoding APIs on all platforms. Hardware decoding can be enabled at runtime on demand.
Embeddable
A straightforward C API was designed from the ground up to make mpv usable as a library and facilitate easy integration into other applications.
Homepage
Download
Recent Releases
0.39.025 Nov 2024 04:05
minor feature:
lt;p gt;We are excited to announce the release of mpv 0.39.0, with more than 5 months of development since the last version. This release brings numerous improvements and across nearly all components. lt;/p gt;.
lt;p gt;Key highlights: lt;/p gt;.
lt;ul gt;.
lt;li gt;A new select.lua script, allowing users to easily choose files from playlists, tracks, chapters, output devices, and more. lt;/li gt;.
lt;li gt;A native replacement for autoload.lua has been implemented. See --autocreate-playlist in the manual. lt;/li gt;.
lt;li gt;NVIDIA RTX and Intel VSR scaling are now supported via the d3d11va filter. lt;/li gt;.
lt;li gt;Media controls are now supported on Windows. lt;/li gt;.
lt;li gt;Track selection has been improved, especially for multi-component languages like fr-CA. lt;/li gt;.
lt;li gt;A new fifth page has been added to stats.lua, displaying track information. lt;/li gt;.
lt;li gt;Compatibility with dmabuf-wayland has been significantly enhanced. lt;/li gt;.
lt;li gt;Multi-touch support has been introduced. lt;/li gt;.
lt;/ul gt;.
lt;hr gt;.
lt;p gt;This release requires FFmpeg 6.1 or newer and libplacebo 6.338.2 or newer. lt;/p gt;.
lt;h1 gt;Features lt;/h1 gt;.
lt;h2 gt;New lt;/h2 gt;.
lt;ul gt;.
lt;li gt;vf_d3d11vpp: add support for Intel VSR and NVIDIA RTX scaling modes lt;/li gt;.
lt;li gt;demux: add --autocreate-playlist lt;/li gt;.
lt;li gt;audio: add pitch-shifting feature lt;/li gt;.
lt;li gt;win32: add Media Control support lt;/li gt;.
lt;li gt;various: allow changing GPU API options at runtime lt;/li gt;.
lt;li gt;vo_gpu_next: support --gamma-factor lt;/li gt;.
lt;li gt;vf_vapoursynth: upgrade to VapourSynth API v4 lt;/li gt;.
lt;li gt;select.lua: add this script lt;/li gt;.
lt;li gt;console.lua: implement a command parser to complete more things lt;/li gt;.
lt;li gt;demux_mkv: demux Block Additional Mappings lt;/li gt;.
lt;li gt;cocoa-cb: add support for macOS color space transformation (EDR/HDR) lt;/li gt;.
lt;li gt;powershell-completion: add Pow
0.38.018 Apr 2024 01:27
major feature:
New
scripting: add mp.input()
player: add an option to automatically turn on deinterlacing
mac: add more Now Playing information and functionality
osxbundle: automatically include MoltenVK to enable Vulkan support
input.conf: bind Ctrl+WHEEL_UP/DOWN to video-zoom
ao_avfoundation: initial support for AVFoundation audio driver (macOS)
vo: add context menu support on win32
Changed
osc: allow disabling special mouse wheel behavior
mac: add support for dynamic change of geometry, autofit
x11_common: allow DPI scale in unit of 0.5 and prefer the value from Xft.dpi
vo_gpu_next: save cache to separate files
mac: large amounts of refactoring, internal improvements and cleanups
builtin.conf: remove debanding from the high-quality profile
Removed
player: remove legacy, non-standard Raspberry Pi-specific support code
0.37.030 Jan 2024 12:26
major feature:
This release requires FFmpeg 4.4 or newer and libplacebo 6.338.0 or newer.
This is the first release to unconditionally require libplacebo, but note that the new improved renderer (vo_gpu_next) is not yet the default.
Features
New
ao_oss: add SPDIF passthrough support
hwtransfer: implement support for HW- HW format conversions
stream/dvbin: add support for delivery system ISDB-T
audio/chmap: support up to 64 channels (including 22.2 layout)
libmpv: add mpv_time_ns()
vo_gpu, vo_gpu_next: add Vulkan support for macOS
meson: make libplacebo a required dependency
hwdec: support videotoolbox hwdec with libplacebo
Changed
msg: print warning and error messages to stderr
options: restore old default subtitle selection behavior
input.conf: swap wheel up/down with wheel left/right
Removed
waf: remove waf as a build system
osc.lua: remove toggle for forced only subpictures (appeared as F )
mac: remove runtime checks and compatibility for macOS older than 10.15
cocoa: remove deprecated OpenGL cocoa backend
Options and Commands
Added
vo_gpu_next: add --hdr-peak-percentile
player: add --term-remaining-playtime option
x11: add --x11-wid-title option
vo_gpu_next: add --libplacebo-opts
player: add --subs-match-os-language option (replaces 'auto' option)
vo: add --video-crop
win32: add --window-corners, --window-affinity, --title-bar, --backdrop-type
sub: add --sub-stretch-durations option
Changed
builtin.conf: add --hdr-peak-percentile=99.995 to gpu-hq profile
player: add 'always' option to --subs-fallback-forced
demux_playlist: default to --directory-mode=lazy
builtin.conf: add --allow-delayed-peak-detect=no to gpu-hq profile
vo_gpu, vo_gpu_next: support --icc-3dlut-size=auto
demux: prepend some cache options with --demuxer-
builtin.conf: modernize internal profiles for higher quality rendering by default,
rename 'gpu-hq' profile to 'high-quality',