A comprehensive guide to build mpv media player from source on Apple Silicon Macs with Vulkan support.
Don't want to build from source? Here are your options:
- π₯ Official MPV Nightly Builds: Download here - Official ARM64 builds
- π οΈ m154k1's Enhanced Builds: mpv-build-macOS - Comprehensive builds with extra features
- Direct download: mpv-macos-15-arm64.zip
- Includes advanced optimizations and additional codecs
Choose this option if you want to:
- β Customize build options and dependencies
- β Latest bleeding-edge features from git
- β Learn the build process
- β Optimize for your specific Mac model
| Feature | Official Nightly | m154k1 Builds | This Guide |
|---|---|---|---|
| Ease of Use | βββββ | βββββ | βββ |
| Download Size | ~50MB | ~80MB | N/A (Build locally) |
| Build Time | Instant | Instant | 20-30 minutes |
| Customization | β | β | β Full control |
| Latest Features | β Daily builds | β Regular updates | β Git HEAD |
| Extra Codecs | β Standard | β Enhanced | β Configurable |
| Learning Value | β | β | β Educational |
π‘ Recommendation:
- Beginners: Use Official Nightly or m154k1 builds
- Power Users: Follow this build guide for maximum control
Before building mpv, ensure you have the following installed:
- π οΈ Xcode - Apple's development tools
- πΊ Homebrew - Package manager for macOS
- π₯οΈ macOS 11.0+ - Required for Apple Silicon support
- πΎ ~2GB free space - For dependencies and build artifacts
- β±οΈ 20-30 minutes - Estimated build time
Clone the official mpv repository:
git clone https://github.com/mpv-player/mpv.git
cd mpvTo update your local clone to the latest version:
git reset --hard
git clean --force -d -x
git pull origin masterInstall MoltenVK for Vulkan API support on Metal:
brew install molten-vkInstall mpv dependencies and libplacebo:
brew install --build-from-source --only-dependencies mpv && brew install libplaceboDownload the build-mpv_silicon.sh script and place it in your mpv directory:
# Download the build script
curl -O https://raw.githubusercontent.com/hongmd/mpv-arm/main/build-mpv_silicon.sh
chmod +x build-mpv_silicon.shWhat the script does:
- Sets up meson build system
- Compiles mpv with optimized settings for Apple Silicon
- Creates macOS app bundle
- Handles static linking for standalone app
Install dylibbundler for app bundling:
brew install dylibbundlerMake the script executable and run it:
# Build with static linking (recommended for distribution)
./build-mpv_silicon.sh --static
# OR build without static linking (smaller file, requires system libraries)
./build-mpv_silicon.shBuild Options Explained:
--static: Creates self-contained app with all dependencies bundled- Without
--static: Smaller app but requires system libraries
The build process will:
- Configure meson build system
- Compile mpv with ARM64 optimizations
- Run tests to verify the build
- Create macOS app bundle (if --static is used)
Copy the built application to your Applications folder:
cp -r build/mpv.app /Applications/For enhanced streaming and downloading capabilities:
# Install streamlink and yt-dlp
brew install streamlink yt-dlp
# Create symlinks for compatibility (if needed)
sudo ln -sf /opt/homebrew/bin/streamlink /usr/local/bin/streamlink
sudo ln -sf /opt/homebrew/bin/yt-dlp /usr/local/bin/yt-dlpAfter successful build, you'll find:
build/mpv- Command-line binarybuild/mpv.app- macOS application bundle
- β Apple Silicon optimized - Native ARM64 performance
- β Vulkan support - Hardware-accelerated rendering via MoltenVK
- β Static linking - Self-contained application bundle
- β Latest codecs - Support for modern video formats
Create ~/.config/mpv/mpv.conf for optimal performance:
# Use Vulkan for hardware acceleration
vo=gpu-next
gpu-api=vulkan
# Apple Silicon optimizations
hwdec=videotoolbox
profile=gpu-hq
# High quality scaling
scale=ewa_lanczos
dscale=mitchell
cscale=ewa_lanczos
# Performance settings
vd-lavc-threads=8
cache=yes
demuxer-max-bytes=150MIf you encounter issues:
- Xcode Command Line Tools:
xcode-select --install - Update Homebrew:
brew update && brew upgrade - Clean builds:
rm -rf build/before rebuilding - Vulkan issues: Check MoltenVK installation:
brew list molten-vk - Build errors: Ensure you're in the mpv source directory
- App won't open: Check code signing:
codesign -v /Applications/mpv.app
This repository's documentation and modifications are licensed under the MIT License.
Important Note:
- The build script may contain code from other sources
- This license applies to documentation, guides, and original contributions
- Please refer to original sources for script attribution
- MPV itself is licensed under GPLv2+
- Original build script by dbrookman - Source Gist
- MPV Project - The amazing media player we're building
- MoltenVK - Vulkan on Metal implementation
- Homebrew - Package management for macOS
- m154k1/mpv-build-macOS - Comprehensive build scripts with prebuilt binaries
- MPV Official Builds - Official nightly builds for Apple Silicon
- pxia/mpv-macos-build - Another excellent build solution
β Star this repository if it helped you build mpv successfully!