A free, open source, and cross-platform media player for Mac!

MPV Player for Mac

Join our mailing list

Stay up to date with latest software releases, news, software discounts, deals and more.

Subscribe

MPV Player for Mac

  -  22.77 MB  -  Open Source
  • Latest Version

    MPV Player 0.37.0 LATEST

  • Review by

    Sophia Jones

  • Operating System

    Mac OS X 10.10 or later

  • User Rating

    Click to vote
  • Author / Product

    MPV Player Team / External Link

  • Filename

    mpv-0.37.0.tar.gz

  • MD5 Checksum

    5cc16b566d06b874d6f056ba7bd4da45

MPV Player for Mac is a free media player for the command line. It supports a wide variety of media file formats, audio and video codecs, and subtitle types.

MPV Player for macOS is a media player based on MPlayer and mplayer2. It supports a wide variety of video file formats, audio and video codecs, and subtitle types. Special input URL types are available to read input from a variety of sources other than disk files. Depending on platform, a variety of different video and audio output methods are supported.

It has a fully configurable, command-driven control layer which allows you to control MPV using keyboard, mouse, or remote control (there is no LIRC support - configure remotes as input devices instead).

Features and Highlights

Scripting
Powerful scripting capabilities can make the player do almost anything.

On Screen Controller
While the app 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
It 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.

Active development
MPV Player is under active development, focusing on code refactoring and cleanups as well as adding features.

Note: MPV has no official GUI.

Also Available: Download MPV Player for Windows

What's new in this version:

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', add 'fast' profile
- vo_gpu, vo_gpu_next: default to dscale=hermite
- builtin.conf: remove deprecated 'opengl-hq' profile
- options: remove a bunch of old option fallbacks/deprecated ones
- vo_gpu: allow --deband-iterations to be 0
- stream_cdda: deprecate --cdda-toc-bias and always check for offsets
- options: disable --allow-delayed-peak-detect by default
- options: adjust default of --watch-later-options

Deprecated:
- command: deprecate shared-script-properties
- demux_cue: deprecate --demuxer-cue-codepage for --metadata-codepage

Removed:
- player: remove special 'auto' option from alang/slang/vlang (previous default)
- vo_gpu: remove --tone-mapping-mode
- vo_gpu: remove --scale-wblur, --scale-cutoff etc.
- vo_gpu: remove --scaler-lut-size
- m_option: drop support for -del for list options
- Fixes and Minor Enhancements:
- build: remove unneeded libdl requirement for vaapi
- zimg: fix abort on subsampled input with odd heights
- video_writer: fix gamma for YUV screenshots
- player/video: fix possible crash when changing lavfi-complex
- ad_spdif: fix segfault due to early deallocation
- ao_pipewire: fix race conditon with setting the media role
- draw_bmp: fix overflowing coordinates in mark_rcs
- ao_sndio: use sio_flush() to improve controls responsiveness
- vo_vdpau: fix hwdec for this vo
- vo_gpu, vo_gpu_next: fix setting an empty dscale
- vd_lavc: repeatedly attempt to fallback if hwdec fails in reinit
- options: fix relative time parsing on negative input
- win32: signal DPI changes correctly
- mp_image: properly infer color levels for some pixfmts
- vo_gpu_next: add ability to use named hook params
- vo_gpu_next: take into account PAR when taking screenshots
- ao_audiotrack: support more channel layouts
- osc.lua: support speed-independent time-remaining display
- sub: fix switching tracks while paused
- audio: fix clipping with gapless audio enabled
- player/video: avoid spamming logs with EOF
- player/command: detect aspect ratio name and show it in stats.lua
- wayland: keyboard input fixes
- demux_playlist: remove len restriction on headerless m3u
- win32: fix display resolution calculation on mulitple monitors
- vo_gpu_next: multiple adjustments and fixes to interpolation
- loadfile: avoid infinite playlist loading loops
- context_drm_egl: don't free EGL properties if they are null
- x11: require xrandr 1.4, remove xinerama support
- drm_common: skip cards that don't have connected outputs
- win32_common: fixes minimized window being focused on launch
- ao/jack: set device_buffer to JACK buffer size
- meson: rename all features with underscores
- input: add new keys: Back, Tools, ZoomIn, ZoomOut
- win32: don't ignore --screen and --fs-screen
- input: add missing keypad key defines and Windows multimedia keys
- player: use audio pts corresponding to playing audio on EOF
- command: add sub-ass-extradata property
- vo_dmabuf_wayland: unmap osd surface when not needed
- player: always write redirect entries for resuming playback
- stats.lua: reorganize how video params are displayed
- stats.lua: display HDR metadata
- osc.lua: add scrolling to the seekbar
- demux_lavf: prefer track durations over container durations to determine total
- vo: vulkan: allow picking devices by UUID
- video: allow overriding container crop if it is present
- vo_gpu, vo_gpu_next, screenshot: support applying crop for screenshots
- sd_lavc: account for floating point inaccuracy, fix sub PTS
- stream: accept dav:// and davs:// urls
- filter_kernels: refine some constants
- filter_kernels: add ewa_lanczos4sharpest
- osc.lua: add scrolling to audio/sub buttons
- demux_mkv: support cropping and rotation
- vo_dmabuf_wayland: support 90 degree rotations
- filter_kernels: add hermite filter
- vo: avoid unnecessary redraws when the OSD shows
- scripting: support DLL cplugins
- af_scaletempo2: various bug fixes
- sdl_gamepad: fix button detection on modern controllers
- vo_dmabuf_wayland: support osd rendering when there's no video
- demux_playlist: add --directory-mode=auto
- vo_gpu_next: use proper color for subtitles
- win32: add an option to change window affinity and control title bar state
- win32: reduce top border thickness to imitate DWM invisible borders
- wayland: remove gnome-specific idle-inhibit warning
- win32: pass window handle to the window-id property
- osc.lua: fix calculation for slider's min-max average
- recorder: fix a couple of memory leaks
- af_scaletempo2: raise max playback rate to 8.0
- osc.lua: move the idle logo behind other overlays
- hwdec_drmprime: add nv16 support
- various: change internal timing code to work in nanoseconds instead of microseconds
- vo: increase display refresh rate estimation limit from 99 Hz to 400 Hz
- external_files: base cover-art-whitelist on cover-art-auto-exts
- path: don't override cache and state paths with --config-dir
- codec_tags: map some more image mimetypes
- af/vf-command: add ability to target a specific lavfi filter
- win32: prevent white window flash on startup
- demux_playlist: use --metacode-codepage when parsing playlist files
- video: revert racey change that led to stutter and deadlocking
- console.lua: various improvements
- command: add playlist-next-playlist and playlist-prev-playlist
- ytdl_hook.lua: set metadata with single tracks
- defaults.lua: add a disabled parameter to timer constructors
- terminal-unix: race condition fixes
- af_scaletempo2: better defaults
- hwtransfer: handle hwcontexts that don't implement frame constraints
- stream_cdda: remove fallback for ancient libcdio versions
- osdep: drop support for C11 without atomics
- dvbin: do a big cleanup on code style and functions
- ytdl_hook.lua: parse the separate cookies field
- sub: update subtitles if current track is an image
- javascript: use --js-memory-report option instead of MPV_LEAK_REPORT
- ao_coreaudio: signal buffer underruns
- ytdl_hook.lua: support thumbnails
- demux: make hysteresis-secs respect cache-secs
- mp_image: pass rotation correctly to/from AVFrame correctly
- various: add new internal mp_thread abstraction and use it
- drm: use present_sync mechanism for presentation feedback
- vo_gpu: apply ICC profile and dithering only to window screenshots
- audio: introduce ao_read_data_nonblocking() and use it in relevant backends
- wayland: obey initial size hints set by the compositor
- command: export storage aspect ratio (sar) properties
- vo: delay vsync samples by at least 10 refreshes to improve convergence time
- vo_sdl: fix broken mouse wheel multiplier
- vo_gpu_next: simplify cache code and don't re-save when unmodified

Join our mailing list

Stay up to date with latest software releases, news, software discounts, deals and more.

Subscribe