SVP:Mac
Contents
Automatic installation uses Homebrew and works on macOS 12 Monterey or later!
For macOS 11 Big Sur and earlier see MacPorts method below.
HDR tone mapping broken in mpv 0.39 release - i.e. the one installed from Homebrew. Until 0.40 release, the only workaround is building mpv from sources:
brew uninstall mpv brew install --head mpv
Note that this will require Xcode.
Compatible video players
- mpv with Vapoursynth support
- Plex Media Player - requires libmpv built with Vapoursynth support
- IINA - requires libmpv built with Vapoursynth support
- VLC 3.0 or later
Installation
- Mount SVP 4 Mac DMG image
- Move "SVP 4 Mac" icon into Applications
- Control key + double-click on Install mpv.command script to install all the stuff listed below and write default mpv.conf.
Note: you DON'T need to run this on every SVP update.
Updating
Updating SVP app:
- Download an updated DMG package
- Mount it and replace SVP 4 Mac.app in Applications
- That's it! You DON'T need to run Install mpv.command when updating SVP!
Updating mpv to the newer version: open Terminal and type
brew upgrade mpv
Uninstall
To remove SVP simply delete the SVP 4 Mac.app from Applications.
Additionally if you want to remove all the Homebrew packages including mpv video player run this command from the Terminal:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)"
Note that it will remove EVERYTHING from Homebrew, not only mpv dependencies.
Manual installation
- Take at least macOS 12 "Monterey" or later.
- Install Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Note that on Apple M1 systems this will install native ARM binaries into /opt/homebrew. You can either add /opt/homebrew/bin/ to your PATH, or call '/opt/homebrew/bin/brew' instead of simple 'brew' in the following commands.
- Install mpv (this will also automatically install Vapoursynth) (DO NOT install it via 'brew install --cask mpv' !):
brew install mpv
Note: this step is essential even if you don't want to use mpv at all.
Alternate installation via MacPorts
Use this method if you are still on macOS 11 or earlier OR just don't like Homebrew ;)
Prebuilt mpv package
!!! DO NOT INSTALL THIS if you're using MacPorts already! Go to the next section and just install mpv in your existing MacPorts installation.
Just install our prebuilt mpv 0.37, and you're good to go. Works with macOS 10.15 "Catalina" or later.
Full MacPorts installation
- Install full Xcode from the App store, run it for the first time, accept user agreement, install whatever it wants to install.
- Install MacPorts
- Install mpv:
sudo port install mpv +vapoursynth +libmpv
This will install everything into /opt/local - i.e. /opt/local/bin/mpv.
Problems:
- mpv 0.38 won't build on Big Sur or earlier. It's possible to install previous version such as mpv 0.37 instead:
sudo ln -s /opt/local/bin/rst2man-3.12 /opt/local/bin/rst2man-3.12.py git clone --single-branch https://github.com/macports/macports-ports.git cd macports-ports git checkout 772d1aa5a7c314db69fa709e04d37e7025467b40 cd multimedia/mpv sudo port install +vapoursynth
Apple M1 (Apple Silicon, ARM64) systems
SVP 4.5.205 and later supports both x86 (Intel) and native ARM video players. Native SVPflow libraries + mpv give ~50% performance improvement over x86 versions running via Rosetta 2.
Homebrew will install native ARM binaries in /opt/homebrew. Still you can install x86 binaries side-by-side in case you have any problem with the native ones.
Tell SVP which version to use
Open Application settings -> All settings, search for player and set main.setup.player to either /usr/local/bin/mpv (default path for x86 build) or /opt/homebrew/bin/mpv (default path for ARM build).
mpv configuration
Just add --input-ipc-server=/tmp/mpvsocket to mpv args (or config file, usually located in ~/.config/mpv/mpv.conf) and SVP should find it.
# create ~/.config/mpv directory for the first time mpv --version echo "input-ipc-server=/tmp/mpvsocket" >> ~/.config/mpv/mpv.conf
Alternatively you can "open" video file via SVP - it'll launch mpv with the correct argument, assuming that mpv is actually installed either in $PATH or in /usr/local/bin (you can also define the actual path in SVP's settings - see main.setup.player and main.setup.player_args values).
Note: only "copy-back" hardware video decoders are compatible with Vapoursynth filters, use --hwdec=auto-copy.
Recommended minimal mpv.conf:
input-ipc-server=/tmp/mpvsocket hwdec-codecs=all hwdec=auto-copy opengl-early-flush=no hr-seek-framedrop=no
VLC configuration
SVP's plugin for VLC replaces the "deinterlace" filter.
Install SVP's plugin via SVP main menu -> Utilities -> SVP in VLC.
macOS 12 Ventura or later: you have to allow SVP to modify apps on your Mac - go to System settings -> Privacy & security -> App Management and turn it on for SVP 4 Mac.
Then you'll be able to quickly "install" and "uninstall" SVP's plugin.
You must turn on deinterlace in VLC via Video -> Deinterlace -> On to start using SVP's plugin. Alternatively you can turn it on permanently: Tools -> Preferences -> Video -> Deinterlacing = On
Transcoding with SVPcode
Muxing .MKV files
If the output format after transcoding is Matroska (.MKV) then it's highly recommended to additionally install mkvmerge command line tool (which is part of the MKVToolNix package):
brew install mkvtoolnix