Skip to content

mpv on a Mac: install it, and when IINA is better

Learn how to install and configure mpv on macOS with Homebrew, how mpv compares to VLC, and when modern Mac users should choose IINA or MacLC instead.

In short

  • mpv is a fast, keyboard-driven media player installed on macOS via Homebrew.
  • Configuring mpv requires editing plain-text files like mpv.conf and input.conf.
  • IINA packages mpv's libmpv engine inside a native macOS AppKit and Swift interface.
  • While mpv targets terminal purists, VLC and MacLC provide graphical libraries and menus.
On this page
  1. What is mpv, and why do video enthusiasts use it?
  2. How to install mpv on an Apple Silicon Mac
  3. Setting up a starter mpv.conf on macOS
  4. When is IINA a better choice than raw mpv?
  5. How does mpv compare with VLC-based players?
  6. Choosing the right player for your Mac workflow

Installing mpv on a Mac is best done through Homebrew using the terminal command brew install mpv or brew install --cask mpv for a desktop application wrapper. While mpv is revered by power users for its minimalist window, high-precision video output, and scriptable configuration, most Mac users will prefer IINA, a modern video player that embeds mpv’s engine inside a native macOS interface.

Unlike conventional desktop applications, mpv strips away standard window borders, menu bars, preferences panels, and playlist drawers. In their place, it presents a bare video canvas governed almost entirely by keyboard shortcuts and plain-text configuration files. Understanding how mpv works helps you decide whether you want the raw terminal engine, a polished wrapper like IINA, or a library-focused alternative.

What is mpv, and why do video enthusiasts use it?

mpv is a free, open-source media player based on MPlayer and mplayer2. Originally created by developer Vincent Lang in 2012, mpv streamlined the legacy MPlayer codebase, removing unmaintained drivers and replacing archaic video rendering systems with modern OpenGL, Vulkan, and Metal-compatible backends. It is distributed under the GNU General Public License (GPL-2.0 or later).

Video enthusiasts and videophiles favor mpv for three primary reasons:

  1. High Rendering Quality: Through its modern GPU renderer (gpu-next) and integration with libplacebo, mpv offers reference-grade color management, high-order video scaling filters (such as EWA-Lanczos and spline algorithms), debanding shaders, and advanced HDR tone mapping.
  2. Deep Customizability: Every aspect of mpv—from subtitle rendering sizes to cache depths and custom GLSL user shaders (.hook)—can be fine-tuned through text directives.
  3. Embeddable Architecture: The project compiles into a clean, well-documented C library named libmpv. This design allows external developers to build entirely new desktop applications on top of mpv’s battle-tested playback engine.

Despite its technical excellence, mpv’s user experience is austere. When you launch mpv, you are greeted by an empty black window or a command prompt. There is no graphical button to open an audio equalizer, no sidebar showing your movie collection, and no standard macOS settings window.

How to install mpv on an Apple Silicon Mac

The mpv development team does not provide pre-compiled, notarized .dmg installer packages on mpv.io. Instead, the project officially recommends installing mpv via Homebrew, the open-source package manager for macOS.

To install mpv on an Apple Silicon Mac, follow these steps:

  1. If you do not already have Homebrew installed, open Terminal (located in Applications › Utilities) and run the official installation script:
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  2. For the standard command-line utility, install the core formula:
    brew install mpv
  3. If you want a double-clickable .app bundle placed in your Applications folder, install the community-maintained cask:
    brew install --cask mpv

Once installed, you can launch playback from your terminal by typing mpv followed by a file path or URL:

mpv ~/Movies/BigBuckBunny.mkv

Because mpv bundles support for yt-dlp, you can also paste direct web video links into the terminal command to stream online videos directly into a floating window.

Setting up a starter mpv.conf on macOS

Out of the box, mpv uses conservative default settings. To unlock hardware decoding on Apple Silicon and enable high-fidelity scaling, you must create a configuration file named mpv.conf.

On macOS, mpv reads configuration files from the hidden directory ~/.config/mpv/. You can create this folder and file in Terminal with two commands:

mkdir -p ~/.config/mpv
touch ~/.config/mpv/mpv.conf

Open ~/.config/mpv/mpv.conf in TextEdit or your favorite code editor, and add the following foundational configuration:

# Enable Apple VideoToolbox hardware decoding
hwdec=auto

# Use the modern libplacebo GPU rendering backend
vo=gpu-next
gpu-api=auto

# High quality scaling profile
profile=gpu-hq

# Keep player open after playback finishes
keep-open=yes

# Automatic subtitle and audio language selection
slang=en,eng
alang=en,eng

# Subtitle styling
sub-font="Helvetica Neue"
sub-font-size=40
sub-color="#FFFFFFFF"
sub-border-color="#000000FF"
sub-border-size=2.0

To customize keyboard shortcuts, you create a companion file named ~/.config/mpv/input.conf. For example, adding UP add volume 5 and DOWN add volume -5 remaps your arrow keys to adjust playback volume in five percent increments.

When is IINA a better choice than raw mpv?

For the vast majority of Mac users, installing raw mpv feels like driving a race car without a dashboard. This is where IINA enters the picture.

Developed by a dedicated open-source team, IINA embeds mpv’s libmpv shared library as its core video engine, but surrounds it with a native macOS user interface written in Swift and AppKit. Version 1.5.0 features mpv 0.41.0 under the hood, delivering the exact same format decoding and rendering fidelity as the command-line tool.

IINA is the better choice when you want:

  • Familiar Mac Controls: Native menus, trackpad pinch-to-zoom gestures, Force Touch seeking, and Picture-in-Picture buttons integrated into the title bar.
  • Graphical Settings: A comprehensive macOS preferences window where you can adjust video filters, audio delays, and subtitle encodings without editing text files.
  • Online Subtitle Downloads: Direct integration with OpenSubtitles, allowing you to search and download subtitle tracks with a single click.
  • Integrated Dark Mode: A visual interface designed specifically for macOS, including support for the MacBook Pro camera notch and media keys.

If you love the playback speed and codec support of mpv but dislike managing terminal commands and text files, IINA provides the ideal middle ground. Compare their detailed differences in our guide to IINA vs VLC.

How does mpv compare with VLC-based players?

In the Mac ecosystem, open-source video players generally divide into two architectural camps: players built on mpv (libmpv), and players built on VLC (libvlccore).

MacLC compared with other video players for the Mac
FeatureMacLCIINAInfuseQuickTime Player
Plays almost any video file Some audio needs Pro Mostly MP4 and MOV
HDR video on HDR screens
Makes ordinary video glow on HDR screens (SDR to HDR)
Upscaling methods built in Nine Shaders you install One AI mode
Smooth motion (frame interpolation) Built in Through mpv options
One-click dialogue boost Voice Boost Filters by hand Volume boost only
Library for your own videos And music Playlists and history Its speciality
Add-on catalogs and torrents
YouTube and web video With yt-dlp With yt-dlp
Free Pro is paid With macOS
Open source GPL GPL

VLC media player remains the most famous multi-format player in the world. It provides robust network protocol streaming (SMB, FTP, UPnP) and exceptional tolerance for corrupted files. However, the current stable release of VLC (version 3.0.x) on macOS lacks modern Apple EDR (Extended Dynamic Range) support and retains a dated playlist interface.

mpv excels at minimal windowed viewing and shader customization, but lacks any concept of a persistent media library. It does not scan your disk, group episodes into television series, or track watched statuses across a movie collection.

If you appreciate the format playback capability of VLC’s engine but want a modern, native Mac application with an organized media library and true HDR display support, consider MacLC.

Choosing the right player for your Mac workflow

Every Mac user has different priorities when watching video:

  • Choose mpv if you are a programmer, system administrator, or video purist who prefers the command line, scripts custom workflows, and wants a distraction-free window with no UI chrome.
  • Choose IINA if you want mpv’s fast rendering engine wrapped in a clean, elegant macOS application with full trackpad gesture support and graphical settings.
  • Choose VLC if you need an established, universal workhorse to play unusual transport streams or stream media across local network servers via FTP or UPnP.
  • Choose MacLC if you want an open-source player for Apple Silicon that organizes your local folder into a visual library, handles advanced Dolby Vision profiles, and plays web videos or torrents.

Explore our full breakdown of the best video players for Mac to find the software that best matches your setup.

Questions people ask

How do I install mpv on a Mac?

The official way to install mpv on macOS is through Homebrew. Open Terminal and run 'brew install mpv' for the command-line tool, or 'brew install --cask mpv' to install the desktop application bundle.

Where is the mpv config file on macOS?

On a Mac, mpv stores its user configuration files in '~/.config/mpv/'. You create and edit 'mpv.conf' for video settings and 'input.conf' for custom keyboard bindings.

Is IINA just mpv?

IINA uses mpv's shared C library (libmpv) as its underlying playback engine, but wraps it in a native macOS interface with mouse-driven menus, trackpad gestures, and system settings.

Does mpv support hardware video decoding on Apple Silicon?

Yes. Adding 'hwdec=auto' or 'hwdec=videotoolbox' to your mpv.conf enables Apple's VideoToolbox hardware decoding, offloading HEVC and H.264 streams to the Media Engine.

Before you download

MacLC is free. If it is useful to you, a gift helps it skip “Open Anyway” and funds the next release.