Software Setup
The instructions below are designed to help users install the software utilized in this guide. A few optional tools are included to assist with processing files and scripts. Both D2V Witch and DGMPGDec are used to create d2v files that assist with handling MPEG streams. AMVtool is included as an easy option to process VapourSynth scripts to media files.
IMPORTANT: If you are a Windows user, make sure your Operating System is 64-bit before continuing by checking to see if the folder "Program Files (x86)" exists. If it does not then your operating system is 32-bit and you will need to use the 32-bit versions of the software and plugins.
NOTE: If you are on macOS wish to simplify the installation process then try out AMVpack, an all-in-one installer package including these tools and a few more!
I. Linux
RECOMMENDED: Any Linux distro that includes Python 3 and Qt 5.4 or newer.
Linux Bases:
Debian (Includes Linux Mint & Ubuntu)
openSUSE
Pacman (Includes Manjaro)
RPM (Includes CentOS & Fedora)
Currently Tested: CentOS 8.1, Debian 10.3, Fedora 32, Manjaro 20.0, Mint 19.3, openSUSE 15.1, & Ubuntu 20.04
A. Dependencies
1. Check the version of Python 3 included with your Linux distro by running the following command:
python3 -V
Ex. Ubuntu 20.04 includes Python 3.8.2 and Mint 19.3 includes Python 3.6.9.
2. Check to see if your distro uses dist-packages instead of site-packages:
if test -d /usr/local/lib/python3.*/dist-packages; then echo "exists"; else echo "doesn't exist"; fi
If the directory exists create a link to the "dist-packages" directory:
cd /usr/local/lib/python3.*
sudo ln -s dist-packages site-packages
3. Create a folder to run the installs from:
mkdir $HOME/.installs
4. Install dependencies available as packages for VapourSynth and VapourSynth plugins:
Debian:
sudo apt install build-essential meson autoconf automake libtool git nasm yasm python3-dev python3-pip cython3 libass-dev qt5-default libqt5websockets5-dev libfftw3-dev libtesseract-dev ffmpeg libavcodec-dev libavformat-dev libswscale-dev libavutil-dev libswresample-dev libmediainfo-dev
NOTE: Debian 11 does not need qt5-default.
Additionally, run the following command on Linux Mint:
pip3 install cython
openSUSE:
sudo zypper install automake libtool meson nasm yasm python3-devel python3-Cython libass-devel libqt5-qtbase-devel libqt5-qtbase-common-devel libqt5-qtwebsockets-devel fftw3-devel tesseract-ocr-devel ffmpeg ffmpeg-4-libavcodec-devel ffmpeg-4-libavformat-devel ffmpeg-4-libavresample-devel ffmpeg-4-libavutil-devel ffmpeg-4-libswresample-devel ffmpeg-4-libswscale-devel libmediainfo-devel
Pacman:
sudo pacman -S base-devel cython meson nasm yasm libass fftw imagemagick tesseract qt5-websockets zimg libmediainfo
RPM:
Follow the RPM Fusion configuration guide to setup the repository.
sudo dnf install git wget gcc gcc-c++ meson automake libtool make nasm yasm python3-devel python3-Cython libass-devel qt5-qtbase-devel qt5-qtwebsockets-devel fftw-devel tesseract-devel ffmpeg-devel libmediainfo-devel
5. Download, compile, & install additional dependencies:
Debian & openSUSE:
cd $HOME/.installs
git clone https://github.com/l-smash/l-smash.git
cd l-smash
./configure --enable-shared
make lib
sudo make install-lib
cd $HOME/.installs
git clone https://github.com/sekrit-twc/zimg.git
cd zimg
./autogen.sh
./configure
make
sudo make install
cd $HOME/.installs
wget https://www.imagemagick.org/download/ImageMagick.tar.gz
tar xvzf ImageMagick.tar.gz
cd ImageMagick*/
./configure
make
sudo make install
RPM:
cd $HOME/.installs
git clone https://github.com/l-smash/l-smash.git
cd l-smash
./configure --prefix=/usr --enable-shared
make lib
sudo make install-lib
cd $HOME/.installs
git clone https://github.com/sekrit-twc/zimg.git
cd zimg
./autogen.sh
./configure --prefix=/usr
make
sudo make install
cd $HOME/.installs
wget https://www.imagemagick.org/download/ImageMagick.tar.gz
tar xvzf ImageMagick.tar.gz
cd ImageMagick*/
./configure --prefix=/usr
make
sudo make install
B. VapourSynth
NOTE: VapourSynth can alternatively be install on Pacman with: sudo pacman -S vapoursynth
1. Browse to the installs folder:
cd $HOME/.installs
2. Download VapourSynth:
git clone https://github.com/vapoursynth/vapoursynth.git
3. Browse to the new folder:
cd $HOME/.installs/vapoursynth
4. Checkout the latest stable release:
git checkout R59
5. Run the following commands to install VapourSynth:
Debian & openSUSE:
./autogen.sh
./configure
make
sudo make install
sudo mkdir /usr/local/lib/vapoursynth
sudo ldconfig
Pacman & RPM:
./autogen.sh
./configure --prefix=/usr
make
sudo make install
sudo mkdir /usr/lib/vapoursynth
C. VapourSynth Editor
1. Browse to the installs folder:
cd $HOME/.installs
2. Download VapourSynth-Editor:
git clone https://github.com/YomikoR/VapourSynth-Editor
3. Browse to the new folder:
cd $HOME/.installs/vapoursynth-editor/pro
4. Run the following commands to install VapourSynth-Editor:
Debian & Pacman:
qmake pro.pro
make
openSUSE & RPM:
qmake-qt5 pro.pro
make
5. Move executables to the bin folder:
sudo mv ../build/release-64bit-gcc/vsedit /usr/local/bin/
sudo mv ../build/release-64bit-gcc/vsedit-* /usr/local/bin/
(Optional) Add VapourSynth-Editor to application menu:
sudo mv ../build/release-64bit-gcc/vsedit.svg /usr/share/pixmaps/
sudo gedit /usr/share/applications/vsedit.desktop
Enter the following, save, then close gedit:
[Desktop Entry]
Type=Application
Name=VapourSynth Editor
Comment=Cross-platform editor for VapourSynth scripts.
Icon=vsedit.svg
Exec=vsedit
Terminal=false
Categories=VapourSynth;
D. Plugins & Scripts
Getting Started
1. Create a folder to compile the plugins:
mkdir $HOME/.installs/plugins
cd $HOME/.installs/plugins
2. Download the repository for plugins used in this guide:
git clone https://github.com/dubhater/vapoursynth-awarpsharp2
git clone https://github.com/dubhater/vapoursynth-bifrost
git clone https://github.com/dwbuiten/d2vsource
git clone https://github.com/HomeOfVapourSynthEvolution/VapourSynth-DFTTest
git clone https://github.com/FFMS/ffms2
git clone https://github.com/myrsloik/VapourSynth-FFT3DFilter
git clone https://github.com/SAPikachu/flash3kyuu_deband
git clone https://github.com/HolyWu/L-SMASH-Works
git clone https://github.com/dubhater/vapoursynth-mvtools
git clone https://github.com/dubhater/vapoursynth-nnedi3
git clone https://github.com/dubhater/vapoursynth-sangnom
git clone https://github.com/dubhater/vapoursynth-tcomb
git clone https://github.com/HomeOfVapourSynthEvolution/VapourSynth-TDeintMod
3. Download scripts with functions used in this guide:
git clone https://github.com/HomeOfVapourSynthEvolution/havsfunc
git clone https://github.com/dubhater/vapoursynth-adjust
git clone https://github.com/HomeOfVapourSynthEvolution/mvsfunc
git clone https://github.com/mawen1250/VapourSynth-script
git clone https://github.com/Irrational-Encoding-Wizardry/vapoursynth-Hysteria
4. Copy scripts to the Python site-packages directory:
Debian:
sudo cp vapoursynth-adjust/adjust.py /usr/local/lib/python3.*/dist-packages/
sudo cp havsfunc/havsfunc.py /usr/local/lib/python3.*/dist-packages/
sudo cp vapoursynth-Hysteria/hysteria.py /usr/local/lib/python3.*/dist-packages/
sudo cp mvsfunc/mvsfunc.py /usr/local/lib/python3.*/dist-packages/
sudo cp VapourSynth-script/nnedi3_resample.py /usr/local/lib/python3.*/dist-packages/
openSUSE & Pacman:
sudo cp vapoursynth-adjust/adjust.py /usr/lib/python3.*/site-packages/
sudo cp havsfunc/havsfunc.py /usr/lib/python3.*/site-packages/
sudo cp vapoursynth-Hysteria/hysteria.py /usr/lib/python3.*/site-packages/
sudo cp mvsfunc/mvsfunc.py /usr/lib/python3.*/site-packages/
sudo cp VapourSynth-script/nnedi3_resample.py /usr/lib/python3.*/site-packages/
RPM:
sudo cp vapoursynth-adjust/adjust.py /usr/lib64/python3.*/site-packages/
sudo cp havsfunc/havsfunc.py /usr/lib64/python3.*/site-packages/
sudo cp vapoursynth-Hysteria/hysteria.py /usr/lib64/python3.*/site-packages/
sudo cp mvsfunc/mvsfunc.py /usr/lib64/python3.*/site-packages/
sudo cp VapourSynth-script/nnedi3_resample.py /usr/lib64/python3.*/site-packages/
5. Compile plugins and put them into the autoload directory for VapourSynth. Each plugin repository includes files to assist with compiling the plugins and three methods are covered in this guide; Autotools, Meson, and Waf.
Autotools Method
1. Enter the plugin directory:
cd $HOME/.installs/plugins/ffms2
2. FFMS2 has autogen.sh so you would compile and install by doing the following:
./autogen.sh
./configure
make
sudo make install
Pay attention to where the install places the file, most plugins will install to /usr/local/lib instead of the vapoursynth plugins directory. If this is the case it is recommended you create a symbolic link it to the vapoursynth plugins folder by doing the following:
Debian & openSUSE:
sudo ln -s /usr/local/lib/libffms2.so /usr/local/lib/vapoursynth/libffms2.so
Pacman:
sudo ln -s /usr/local/lib/libffms2.so /usr/lib/vapoursynth/libffms2.so
RPM:
sudo ln -s /usr/local/lib64/libffms2.so /usr/lib64/vapoursynth/libffms2.so
Meson Method
1. Enter the plugin directory:
cd $HOME/.installs/plugins/vapoursynth-awarpsharp2
2. aWarpSharp2 uses the Meson build system so you would compile and install by doing the following:
meson build/
cd build
ninja
ninja install
Pay attention to where the install places the file, most plugins will install to /usr/local/lib instead of the vapoursynth plugins directory. If this is the case it is recommended you create a symbolic link it to the vapoursynth plugins folder by doing the following:
Debian & openSUSE:
sudo ln -s /usr/local/lib/libawarpsharp2.so /usr/local/lib/vapoursynth/libawarpsharp2.so
Pacman:
sudo ln -s /usr/local/lib/libawarpsharp2.so /usr/lib/vapoursynth/libawarpsharp2.so
RPM:
sudo ln -s /usr/local/lib64/libawarpsharp2.so /usr/lib64/vapoursynth/libawarpsharp2.so
Waf Method
1. Enter the plugin directory:
cd $HOME/.installs/plugins/flash3kyuu_deband
2. Flash3kyuu Deband uses the Waf build system so you would compile and install by doing the following:
./waf configure
./waf build
After building the plugin move it to the vapoursynth plugins folder by doing the following:
Debian & openSUSE:
sudo cp build/libf3kdb.so /usr/local/lib/vapoursynth/libf3kdb.so
Pacman:
sudo cp build/libf3kdb.so /usr/lib/vapoursynth/libf3kdb.so
RPM:
sudo cp build/libf3kdb.so /usr/lib64/vapoursynth/libf3kdb.so
E. D2V Witch (Optional)
NOTE: This currently does not compile on Fedora!
1. Browse to the installs folder:
cd $HOME/.installs
2. Download D2V Witch:
git clone https://github.com/dubhater/D2VWitch
3. Browse to the new folder:
cd $HOME/.installs/D2VWitch
4. Run the following commands to compile and install D2V Witch:
./autogen.sh
./configure
make
sudo make install
(Optional) Add D2V Witch to application menu:
sudo gedit /usr/share/applications/d2vwitch.desktop
Enter the following, save, then close gedit:
[Desktop Entry]
Type=Application
Name=D2V Witch
Comment=D2V Witch indexes various video streams and writes D2V files.
Icon=
Exec=d2vwitch
Terminal=false
Categories=VapourSynth;
F. AMVtool (Optional)
1. Browse to the installs folder:
cd $HOME/.installs
2. Download AMVtool:
git clone https://github.com/l33tmeatwad/AMVtool
3. Browse to the new folder:
cd $HOME/.installs/AMVtool
4. Run the following commands to compile and install AMVtool:
Debian & Pacman:
qmake
make
sudo make install
RPM & openSUSE:
qmake-qt5
make
sudo make install
II. MacOS
A. VapourSynth
IMPORTANT: By default macOS disables users from installing apps that are not from the App Store or Identified Developers. To approve the VapourSynth installer & other applications please follow the instructions provided by Apple for opening an app that hasn't been notarized or is from an unidentified developer.
Option 1: Installer
1. Download the latest VapourSynth Installer.
2. Open VapourSynth-R65.pkg
4. On the Introduction screen click Continue.
5. On the License Agreement screen click Continue.
6. In the Read License drop down click Agree
7. In the Custom Install screen click Install.
8. Enter your password when requested then click Install Software.
9. On the Summary screen click Close.
Option 2: Brew
1. Install Homebrew by running the following command in terminal:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2. A box should pop up to install Xcode, click Install and once it is finished click Done.
3. Back in terminal press "return" and then enter your password to finish installing Homebrew.
4. Setup plugins folder and auto load configuration before installing VapourSynth:
mkdir -p /usr/local/lib/vapoursynth
mkdir -p "$HOME/Library/Application Support/VapourSynth"
touch "$HOME/Library/Application Support/VapourSynth/vapoursynth.conf"
echo UserPluginDir=/usr/local/lib/vapoursynth >> "$HOME/Library/Application Support/VapourSynth/vapoursynth.conf"
echo SystemPluginDir=/usr/local/lib/vapoursynth >> "$HOME/Library/Application Support/VapourSynth/vapoursynth.conf"
5. Install VapourSynth:
brew install vapoursynth
6. Create shortcuts on the desktop for copying plugins and dependencies:
mkdir -p $HOME/Desktop/VapourSynth
ln -s /usr/local/bin "$HOME/Desktop/VapourSynth/Add Executables"
ln -s /usr/local/lib "$HOME/Desktop/VapourSynth/Add Libraries"
ln -s /usr/local/lib/vapoursynth "$HOME/Desktop/VapourSynth/Add Plugins"
ln -s /usr/local/lib/python3.7/site-packages "$HOME/Desktop/VapourSynth/Add Scripts"
B. VapourSynth Editor
Download VapourSynth Editor
Open VapourSynthEditor.dmg and drag "VapourSynth Editor" into the Applications folder shortcut.
C. Plugins & Scripts
Download the following plugins that are used in this guide and their dependencies from here:
Dependencies: FFMPEG Libs, FFTW3F, GCC Libs, L-Smash, Zlib
Plugins: aWarpSharp2, Bifrost, D2V Source, DFTTest, ffms2, FFT3DFilter, Flash3kyuu Deband, L-SMASH-Works, MVTools, nnedi3, Sangnom, TComb, TDeintMod
Download the following scripts with functions used in this guide:
In the VapourSynth folder on the desktop there is a shortcut to the Libraries folder, place all of the dependencies there.
In the VapourSynth folder on the desktop there is a shortcut to the Plugins directory, place all plugins there.
In the VapourSynth folder on the desktop there is a shortcut to the Scripts folder, place all of the scripts there.
D. D2V Witch (Optional)
Download D2V Witch
Open D2VWitch-macOS.dmg and drag "D2V Witch" into the Applications folder shortcut.
E. AMVtool (Optional)
Download AMVtool
Open AMVtool-macOS.dmg and drag "AMVtool" into the Applications folder shortcut.
III. Windows
A. Python
Download Python 3.11 (64-bit)
Run python-3.11.7-amd64.exe
NOTE: The version required will depend on the VapourSynth version.
On the Install Python Screen check "Add Python to PATH", then click "Custom installation".
On the Optional Features Screen make sure "for all users" is checked, then click Next.
On the Advanced Options Screen check "Install for all users", then click Install.
On the Setup was successful Screen click Close.
B. VapourSynth
Download VapourSynth.
Run vapoursynth-r65.exe
NOTE: The file name will vary based on the version you download.
On the Select Components Screen click Next.
On the Select Python Installation Screen select Python 3.11 (64-bit) then click Next.
On the Select Additional Tasks Screen click Next.
On the Ready to Install Screen click Install.
NOTE: If a box pops up asking to install Visual C++ 2015-2019 Redistributableclick Yes.
On the Completing the VapourSynth Setup Wizard Screen click Finish.
C. VapourSynth Editor
Download the 64-bit (x64) version of VapourSynth Editor.
Extract VapourSynthEditor-64bit.7z to the directory: C:\Program Files\VapourSynth\Editor
NOTE: The file name will vary based on the version you download.
Create a shortcut of vsedit.exe and place it in the location of your choice.
D. Plugins & Scripts
1. Open "Command Prompt" or "PowerShell" (run as Admin) and run the following command:
vsrepo.py install avisource bifrost d2v ffms2 lsmashsource tcomb tdeintmod havsfunc -b "C:\Program Files\VapourSynth\plugins" -s "C:\Program Files\Python38\Lib\site-packages"
2. Download the following plugin and script that are both used in this guide:
Plugin: Flash3kyuu Deband
Script: Hysteria
3. Place the x64 version of the Flash3kyuu Deband plugin in the following directory:
C:\Program Files\VapourSynth\plugins
4. Place the Hysteria script in the Python site-packages folder:
Scripts Directory: C:\Program Files\Python39\Lib\site-packages
E. DGMPGDec (Optional)
Download DGMPGDec.
Extract the files dgmpgdec158.zip to the directory: C:\Program Files (x86)\DGMPGDec
Create a shortcut of DGIndex.exe and place it in the location of your choice.
F. AMVtool (Optional)
1. Download AMVtool
2. Extract files in AMVtool_WINx64.zip to the directory: C:\Program Files\AMVtool
3. Open Command Prompt (run as Admin) and run the following command:
mklink "C:\Program Files\AMVpack\AMVtoo\vspipe.exe" "C:\Program Files\VapourSynth\core\vspipe.exe"
4. Create a shortcut of AMVtool.exe and place it in the location of your choice.