Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Capturing and Editing Video > VapourSynth

Reply
 
Thread Tools Search this Thread Display Modes
Old 11th June 2018, 16:39   #1  |  Link
l33tmeatwad
Registered User
 
l33tmeatwad's Avatar
 
Join Date: Jun 2007
Posts: 414
VapourSynth Installer, Applications, & Plugins for macOS (Intel)

The applications, installer, and plugins are compiled for macOS 10.12 or newer. To install plugins simply copy them to the autoloading path, which can be found through the shortcut on the desktop.

NOTE: Gatekeeper will require you to approve the installer and each plugin you add individually by following Apple's instructions for opening an app that hasn't been notarized or is from an unidentified developer.



VapourSynth Installer:
Installer Downloads
Installers include D2V Source, FFMS2, & LSMASHSource.
INFO: To access the python environment for the VapourSynth.framework just run vspython in terminal.
DEPENDENCY: For ImageMagick to work you will need to install XQuartz.
IMPORTANT: The installer includes it's own copy of python separate from the system, to access that environment use the commands vspython3 or vspip3 in terminal.

Alternative VapourSynth Install Method (Brew):
IMPORTANT: Brew users will need to create and set the autoload folder prior to installing VapourSynth! Simply run the following commands:
Code:
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"
(Optional) Create desktop shortcuts for the plugins and scripts folders. Run the following commands in terminal:
Code:
mkdir $HOME/Desktop/VapourSynth
ln -s /usr/local/lib/vapoursynth $HOME/Desktop/VapourSynth/Plugins
ln -s /usr/local/lib/python3.9/site-packages $HOME/Desktop/VapourSynth/Scripts
Use brew command:
Code:
brew install vapoursynth

Applications:
D2V Witch v5
VapourSynth Editor r19 Mod 1
VapourSynth Editor r19 Mod 5.1 (Requires macOS 10.13+)
VapourSynth Editor r19 Mod 6.3 (Requires macOS 10.15+)

Plugins:
Plugin Downloads (Mirror)

Available Plugins:
AdaptiveGrain
AddGrain
Anime4KCPP
AreaResize (**)
ASharp
AutoCrop
Average
aWarpSharp2
BestAudioSource
Bifrost
Bilateral
BM3D
Bwdif
CAS (Requires macOS 10.14+)
CNR2
ColorBars
CombMask
ContinuityFixer
CTMF
D2VSource
Damb
DCTFilter
Deblock
DeblockPP7
DeCross
Dedot
DegrainMedian
DeLogo
DePan (Source)
Descale
DFTTest (r7+ Requires macOS 10.14+)
DotKill
DPID
EdgeFixer
EEDI2
EEDI3
EEDI3m
FFMS2
FFT3DFilter
FFTSpectrum
FieldHint
FillBorders
Fix Telecined Fades
Flash3kyuu Deband
Fluxsmooth
Focus
Format Conversion
GradCurve
Histogram
HQDN3D
ImageMagick
IT (Requires macOS 10.15+)
JincResize (**)
KNLMeansCL
LGhost
LSMASHSource
MiniDeen
MinSharp
MotionMask
MSmoosh
MVTools
NNEDI3
NNEDI3CL
NoiseGenerator (**)
OCR
Placebo (Requires macOS 10.15+)(*)
QRCodeSource
RawSource
ReadMpls
RemoveDirt
RemoveGrain
RemapFrames
RemoveGrain Single Precision
Retinex
SangNom
SangNomMod
SceneChange
SCrawl
SCXvid
SmoothUV
SRMD (Requires macOS 10.15+)(*)
SSIQ
SurfaceBlur
TBilateral
TCanny
TComb
TDeintMod
TempLinearApproximate
TemporalSoften
TemporalSoften2
TimeCube
TIVTC
TNLMeans
ToneMap
TTempSmooth
VagueDenoiser
vcmod
vcmove
vctrans
VFR to CFR
VideoScope
VIVTC
VMAF
W3FDIF
Waifu2x NCNN Vulkan (Requires macOS 10.15+)(*)
Waifu2x-w2xc
Warpsharp Single Precision (Requires macOS 10.14+)
Yadifmod
ZNEDI3

(*) Requires Vulkan SDK to be installed.
(**) Crashes VapourSynth Editor when preview window is closed or refreshed.

Source Code for Applications, Installer, & Plugins:
Source Downloads (Mirror)

Last edited by l33tmeatwad; 4th December 2023 at 18:12. Reason: Updated Information.
l33tmeatwad is offline   Reply With Quote
Old 11th June 2018, 18:35   #2  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 7,255
Okay. Hoping for the installer, since brew isn't an option for me.
May be two installers, or an installer and an plugin-updater?
Out of curiosity: What plugins use C++17?
__________________
Hybrid here in the forum, homepage
Selur is offline   Reply With Quote
Old 11th June 2018, 19:16   #3  |  Link
l33tmeatwad
Registered User
 
l33tmeatwad's Avatar
 
Join Date: Jun 2007
Posts: 414
Setting Up Tools

Note: It is recommended that you either use macOS 10.15 or use the '-mmacosx-version-min=10.15' in "export CPPFLAGS=' for better distribution compatibility. VapourSynth and other tools will not work on 10.14 or older.

Download Command Line Tools for Xcode 12.4 and install it.

The installer is built using the software Packages.

IMPORTANT: Some files may not download correctly with curl and will need to be downloaded manually through your web browser.

Create a working directory:
Code:
cd $HOME
mkdir .installs
cd .installs

Setup Autoconf
Code:
cd $HOME/.installs
curl https://ftp.gnu.org/gnu/autoconf/autoconf-2.71.tar.gz -o autoconf-2.71.tar.gz
tar -xzf autoconf-71.tar.gz
cd autoconf-2.71
./configure
make
sudo make install

Setup Automake
Code:
cd $HOME/.installs
curl https://ftp.gnu.org/gnu/automake/automake-1.16.5.tar.gz -o automake-1.16.5.tar.gz
tar -xzf automake-1.16.5.tar.gz
cd automake-1.16.5
./configure
make
sudo make install

Setup Libtool
Code:
cd $HOME/.installs
curl https://ftp.wayne.edu/gnu/libtool/libtool-2.4.7.tar.gz -o libtool-2.4.7.tar.gz
tar -xzf libtool-2.4.7.tar.gz
cd libtool-2.4.7
./configure
make
sudo make install

Setup pkg-config
Code:
cd $HOME/.installs
curl https://pkg-config.freedesktop.org/releases/pkg-config-0.29.2.tar.gz -o pkg-config-0.29.2.tar.gz
tar -xzf pkg-config-0.29.2.tar.gz
cd pkg-config-0.29.2
./configure --with-internal-glib
make
sudo make install

Setup CMake
Code:
cd $HOME/.installs
git clone https://gitlab.kitware.com/cmake/cmake.git
cd cmake
git checkout v3.27.9
./configure
make
sudo make install

Setup ragel
Code:
cd $HOME/.installs
curl -L http://www.colm.net/files/ragel/ragel-6.10.tar.gz -o ragel-6.10.tar.gz
tar -xzf ragel-6.10.tar.gz
cd ragel-6.10
./configure
make
sudo make install

Setup NASM
Code:
cd $HOME/.installs
git clone https://github.com/netwide-assembler/nasm
cd nasm
git checkout nasm-2.16.01
./autogen.sh
./configure
make
sudo make install

Setup YASM
Code:
cd $HOME/.installs
curl http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz -o yasm-1.3.0.tar.gz
tar -xzf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure
make
sudo make install
Setting Up VapourSynth.framework

Setup OpenSSL
Code:
cd $HOME/.installs
git clone git://git.openssl.org/openssl.git
cd openssl
git checkout openssl-3.2.0
./config --prefix=/Library/Frameworks/VapourSynth.framework -no-shared
make
sudo make install

Setup XZ Utils
Code:
cd $HOME/.installs
curl -L https://tukaani.org/xz/xz-5.4.5.tar.gz -o xz-5.4.5.tar.gz
tar -xzf xz-5.4.5.tar.gz
cd xz-5.4.5
./configure --prefix=/Library/Frameworks/VapourSynth.framework -disable-shared
make
sudo make install

Setup zlib
Code:
cd $HOME/.installs
git clone https://github.com/madler/zlib
cd zlib
git checkout v1.3
./configure --prefix=/Library/Frameworks/VapourSynth.framework --static
make
sudo make install

Setting up Python
Code:
cd $HOME/.installs
curl https://www.python.org/ftp/python/3.11.6/Python-3.11.6.tgz -o Python-3.11.6.tgz
tar xvfj Python-3.11.6.tgz
cd Python-3.11.6
export LDFLAGS='-L/Library/Frameworks/VapourSynth.framework/lib'
export CPPFLAGS='-I/Library/Frameworks/VapourSynth.framework/include'
export PKG_CONFIG_PATH=/Library/Frameworks/VapourSynth.framework/lib/pkgconfig
./configure --prefix=/Library/Frameworks/VapourSynth.framework  --enable-shared
make
sudo make install

Make Python Links
Code:
sudo ln -s /Library/Frameworks/VapourSynth.framework/bin/pip3.11 /usr/local/bin/vspip3
sudo ln -s /Library/Frameworks/VapourSynth.framework/bin/python3.11 /usr/local/bin/vspython

Setup Cython
Code:
sudo vspip3 install cython
sudo ln -s /Library/Frameworks/VapourSynth.framework/bin/cython /usr/local/bin/cython

Setup NumPy
Code:
sudo vspip3 install numpy

Setup LibJPEG Turbo
Code:
cd $HOME/.installs
git clone https://github.com/libjpeg-turbo/libjpeg-turbo
cd libjpeg-turbo
git checkout 2.1.3
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:PATH=/Library/Frameworks/VapourSynth.framework/ -DENABLE_STATIC=ON -DENABLE_SHARED=OFF .
make
sudo make install

Setup libpng
Code:
cd $HOME/.installs
curl -L https://download.sourceforge.net/libpng/libpng-1.6.40.tar.gz -o libpng-1.6.40.tar.gz
tar xvzf libpng-1.6.40.tar.gz
cd libpng-1.6.40
./configure --prefix=/Library/Frameworks/VapourSynth.framework --enable-shared=no
make
sudo make install

Setup libtiff
Code:
cd $HOME/.installs
git clone https://gitlab.com/libtiff/libtiff
cd libtiff
git checkout v4.6.0
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:PATH=/Library/Frameworks/VapourSynth.framework/ -DBUILD_SHARED_LIBS=OFF -Dzstd=OFF -Dlzma=OFF .
make
sudo make install

Setup ImageMagick
Code:
cd $HOME/.installs
unset CPPFLAGS
export CPPFLAGS='-I/Library/Frameworks/VapourSynth.framework/include'
git clone https://github.com/ImageMagick/ImageMagick
cd ImageMagick
git checkout 7.1.1-21
./configure --prefix=/Library/Frameworks/VapourSynth.framework --without-xml --disable-shared --enable-delegate-build
make
sudo make install

Setup FreeType
Code:
cd $HOME/.installs
unset CPPFLAGS
export CPPFLAGS='-I/Library/Frameworks/VapourSynth.framework/include'
curl -L http://download.savannah.gnu.org/releases/freetype/freetype-2.13.2.tar.gz -o freetype-2.13.2.tar.gz
tar xvzf freetype-2.13.2.tar.gz
cd freetype-2.13.2
./configure --prefix=/Library/Frameworks/VapourSynth.framework  --disable-shared
make
sudo make install

Setup Harfbuzz
Code:
cd $HOME/.installs
unset CPPFLAGS
export CPPFLAGS='-I/Library/Frameworks/VapourSynth.framework/include'
git clone https://github.com/harfbuzz/harfbuzz
cd harfbuzz
git checkout 8.3.0
./autogen.sh
./configure --prefix=/Library/Frameworks/VapourSynth.framework --disable-shared
make
sudo make install

Setup FriBidi
Code:
cd $HOME/.installs
unset CPPFLAGS
export CPPFLAGS='-I/Library/Frameworks/VapourSynth.framework/include'
git clone https://github.com/fribidi/fribidi
cd fribidi
git checkout v1.0.13
./autogen.sh
./configure --prefix=/Library/Frameworks/VapourSynth.framework --disable-shared
make
sudo make install

Setup LIBASS
Code:
cd $HOME/.installs
unset CPPFLAGS
export CPPFLAGS='-I/Library/Frameworks/VapourSynth.framework/include/freetype2 -I/Library/Frameworks/VapourSynth.framework/include/harfbuzz'
git clone https://github.com/libass/libass
cd libass
git checkout 0.17.1
./autogen.sh
./configure --prefix=/Library/Frameworks/VapourSynth.framework --disable-shared
make
sudo make install

Setup Leptonica
Code:
cd $HOME/.installs
git clone https://github.com/danbloomberg/leptonica
cd leptonica
git checkout 1.83.0
export LDFLAGS='-L/Library/Frameworks/VapourSynth.framework/lib' CPPFLAGS='-I/Library/Frameworks/VapourSynth.framework/include'
./autogen.sh
./configure --prefix=/Library/Frameworks/VapourSynth.framework --disable-shared
make
sudo make install

Setup Tesseract
Code:
cd $HOME/.installs
unset CPPFLAGS
export CPPFLAGS='-I/Library/Frameworks/VapourSynth.framework/include/leptonica'
export PKG_CONFIG_PATH=/Library/Frameworks/VapourSynth.framework/lib/pkgconfig
git clone https://github.com/tesseract-ocr/tesseract
cd tesseract
git checkout 5.3.3
./autogen.sh
./configure --prefix=/Library/Frameworks/VapourSynth.framework
make
sudo make install

Setup L-SMASH
Code:
cd $HOME/.installs
git clone https://github.com/l-smash/l-smash
cd l-smash
git checkout v2.14.5
./autogen.sh
./configure --prefix=/Library/Frameworks/VapourSynth.framework -disable-shared
make
sudo make install

Setup FFmpeg
Code:
cd $HOME/.installs
git clone https://github.com/ffmpeg/ffmpeg
cd ffmpeg
git checkout n6.1
./configure --prefix=/Library/Frameworks/VapourSynth.framework --enable-gpl --enable-version3 --enable-shared --disable-static --disable-encoders --disable-programs \
 --disable-filters --disable-doc --disable-avdevice --disable-avfilter --disable-network --disable-postproc
make
sudo make install

Setup ZIMG
Code:
cd $HOME/.installs
git clone https://github.com/sekrit-twc/zimg
cd zimg
git checkout release-3.0.3
./autogen.sh
./configure --prefix=/Library/Frameworks/VapourSynth.framework
make
sudo make install

Setup VapourSynth
Code:
cd $HOME/.installs
export PYTHON=/Library/Frameworks/VapourSynth.framework/bin/python3
git clone https://github.com/vapoursynth/vapoursynth
cd vapoursynth
git checkout R58
./autogen.sh
./configure --prefix=/Library/Frameworks/VapourSynth.framework
make
sudo make install
sudo mkdir /Library/Frameworks/VapourSynth.framework/lib/vapoursynth
Make VapourSynth Links
Code:
sudo ln -s /Library/Frameworks/VapourSynth.framework/lib/libvapoursynth.dylib /usr/local/lib/libvapoursynth.dylib
sudo ln -s /Library/Frameworks/VapourSynth.framework/lib/libvapoursynth-script.dylib /usr/local/lib/libvapoursynth-script.dylib
sudo ln -s /Library/Frameworks/VapourSynth.framework/lib/libvapoursynth-script.0.dylib /Library/Frameworks/VapourSynth.framework/lib/libvapoursynth-script.0.dylib
sudo ln -s /Library/Frameworks/VapourSynth.framework/lib/vapoursynth /usr/local/lib/vapoursynth
sudo ln -s /Library/Frameworks/VapourSynth.framework/lib/pkgconfig/vapoursynth.pc /usr/local/lib/pkgconfig/vapoursynth.pc
sudo ln -s /Library/Frameworks/VapourSynth.framework/lib/pkgconfig/vapoursynth-script.pc /usr/local/lib/pkgconfig/vapoursynth-script.pc
sudo ln -s /Library/Frameworks/VapourSynth.framework/bin/vspipe /usr/local/bin/vspipe
sudo ln -s /Library/Frameworks/VapourSynth.framework/include/vapoursynth /usr/local/include/vapoursynth
Make Desktop Shortcuts (Optional)
Code:
sudo mkdir $HOME/Desktop/VapourSynth
sudo ln -s /Library/Frameworks/VapourSynth.framework/bin "$HOME/Desktop/VapourSynth/Add Executables"
sudo ln -s /Library/Frameworks/VapourSynth.framework/lib "$HOME/Desktop/VapourSynth/Add Libraries"
sudo ln -s /Library/Frameworks/VapourSynth.framework/lib/vapoursynth "$HOME/Desktop/VapourSynth/Add Plugins"
sudo ln -s /Library/Frameworks/VapourSynth.framework/lib/python3.10/site-packages "$HOME/Desktop/VapourSynth/Add Scripts"

Details for Plugins

Most plugins will be compiled similarly to the dependencies above, here's an example using FFMS2:
Code:
git clone https://github.com/FFMS/ffms2
cd ffms2
git checkout 2.23
export LDFLAGS='-L/Library/Frameworks/VapourSynth.framework/lib'
export CPPFLAGS='-I/Library/Frameworks/VapourSynth.framework/include'
export PKG_CONFIG_PATH=/Library/Frameworks/VapourSynth.framework/lib/pkgconfig
./autogen.sh
./configure --prefix=/Library/Frameworks/VapourSynth.Framework
make
sudo make install
Plugins will usually have autogen.sh or just a configure file, however a few others will use cmake or waf. With the current setup the autoloading path for VapourSynth is /Library/Frameworks/VapourSynth.framework/lib/vapoursynth, but most plugins will actually install to the /Library/Frameworks/VapourSynth.framework/lib instead. Often this path path will be hard coded into the plugin ID, so it will need to be altered so the plugin can be moved to the correct path for autoloading. Browse to the path the plugin was installed to and use the following command to check the plugin (ex. ffms2):
Code:
otool -L libffms2.4.dylib
You will then see something similar to this:
Code:
/Library/Frameworks/VapourSynth.framework/libffms2.4.dylib (compatibility version 5.0.0, current version 5.0.0)
/Library/Frameworks/VapourSynth.framework/lib/libavformat.58.dylib (compatibility version 58.0.0, current version 58.12.100)
/Library/Frameworks/VapourSynth.framework/lib/libavcodec.58.dylib (compatibility version 58.0.0, current version 58.18.100)
/Library/Frameworks/VapourSynth.framework/lib/libswscale.5.dylib (compatibility version 5.0.0, current version 5.1.100)
/Library/Frameworks/VapourSynth.framework/lib/libavutil.56.dylib (compatibility version 56.0.0, current version 56.14.100)
/Library/Frameworks/VapourSynth.framework/lib/libavresample.4.dylib (compatibility version 4.0.0, current version 4.0.0)
/Library/Frameworks/VapourSynth.framework/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.11)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 120.1.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1)
If the plugin has the full path on the first line containing it's own filename, use the following command to change it:
Code:
sudo install_name_tool -id "libffms2.4.dylib" libffms2.4.dylib
NOTE: You can also use this opportunity to change the name of the plugin itself by changing the id to what you want it to be.


Additionally, the location of dependencies can be changed to be relative to the location of the actual plugin. For example, ffms2 looks for it's dependency zlib in /Library/Frameworks/VapourSynth.framework/lib, that location can be change to look for it one directory above where libffms2.4.dylib is located (assuming you place libffms2.4.dylib in the VapourSynth autoloading folder) by using a variable called @loader_path. Here is an example of how that would work:
Code:
sudo install_name_tool -change /Library/Frameworks/VapourSynth.framework/lib/libz.1.dylib @loader_path/../libz.1.dylib libffms2.4.dylib
Using otool to check files and install_name_tool to change the id and dependency paths to be relative instead of absolute will allow the modified plugins to work no matter what path vapoursynth is installed to as long as the plugin is located in the autoload directory. This same method can be used on the dependencies as well to allow for distribution of those with the plugins.

Last edited by l33tmeatwad; 1st December 2023 at 18:09. Reason: Updated info.
l33tmeatwad is offline   Reply With Quote
Old 13th June 2018, 09:13   #4  |  Link
Mad_Hatter
N00b
 
Join Date: Aug 2011
Location: Loli Island
Posts: 9
SCXvid was removed from mediafire ^^

EDIT: Another question, if I had to compile a few plugins by myself which are not present in the list, what params should I use? Since I get an error about not finding vapoursynth.h.

Last edited by Mad_Hatter; 13th June 2018 at 10:49.
Mad_Hatter is offline   Reply With Quote
Old 13th June 2018, 12:41   #5  |  Link
DJATOM
Registered User
 
DJATOM's Avatar
 
Join Date: Sep 2010
Location: Ukraine, Bohuslav
Posts: 377
It seems your VS headers are not in the include path or so, you can look for them in the most common folders (usually /usr/local/include, etc) and add extra include dir at configure step.
__________________
Me on GitHub
PC Specs: Ryzen 5950X, 64 GB RAM, RTX 2070
DJATOM is offline   Reply With Quote
Old 13th June 2018, 15:26   #6  |  Link
l33tmeatwad
Registered User
 
l33tmeatwad's Avatar
 
Join Date: Jun 2007
Posts: 414
Quote:
Originally Posted by Selur View Post
Out of curiosity: What plugins use C++17?
FFT3DFilter uses C++17 code and EEDI3m would not compile correctly with the macOS 10.11 compiler so I had to use GCC 8.1.0 for that as well.

Quote:
Originally Posted by Mad_Hatter View Post
SCXvid was removed from mediafire ^^

EDIT: Another question, if I had to compile a few plugins by myself which are not present in the list, what params should I use? Since I get an error about not finding vapoursynth.h.
Sorry, having xvid as part of the file name apparently automatically blocks it, but download is fixed now. As for the headers, they are included, but in the /Library/Frameworks/VapourSynth.framework/include/vapoursynth path. As for more information about compiling/building VapourSynth.framework, I started a full post with instructions on how to do so that can be found here.

Last edited by l33tmeatwad; 28th June 2018 at 16:45. Reason: Updated information.
l33tmeatwad is offline   Reply With Quote
Old 13th June 2018, 18:07   #7  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 7,255
Can't test before Sunday, just to get it straight what needs to be done to get a working Vapoursynth with all the plugins:
a. Download http://www.mediafire.com/folder/8xulo6r12tqbv which contains the installer and D2V Source, FFMS2 and LSMASHSource.
b. Go to https://www.mediafire.com/folder/wvdlnjapm1vvw and download the latest 7z from each folder, extract the dylib file and place it into the plugins folder (/usr/local/lib/vapoursynth)
Is that all or do I have to do anything else?
Are the dependencies compiled statically into the dylib files? Do the dependencies come with the installer or is there something else to do?

@Hybrid-users: no panic I'll bundle the plugins with the Hybrid release, so no hours downloading and extracting the files.
@l33tmeatwad: how about adding the .dylib files to a git repository on github or similar, so getting the latest versions could be done with a 'git clone --depth=1 <remote_repo_url>' ?
(always having to check all the folders by hand for updates and extracting the 7z files seem bothersome )

Cu Selur

Ps.: @l33tmeatwad: any change of an uninstaller for the base installer? Something that would remove everything the installer added to the system?
__________________
Hybrid here in the forum, homepage

Last edited by Selur; 13th June 2018 at 18:11.
Selur is offline   Reply With Quote
Old 13th June 2018, 19:34   #8  |  Link
l33tmeatwad
Registered User
 
l33tmeatwad's Avatar
 
Join Date: Jun 2007
Posts: 414
Quote:
Originally Posted by Selur View Post
Can't test before Sunday, just to get it straight what needs to be done to get a working Vapoursynth with all the plugins:
a. Download http://www.mediafire.com/folder/8xulo6r12tqbv which contains the installer and D2V Source, FFMS2 and LSMASHSource.
b. Go to https://www.mediafire.com/folder/wvdlnjapm1vvw and download the latest 7z from each folder, extract the dylib file and place it into the plugins folder (/usr/local/lib/vapoursynth)
Is that all or do I have to do anything else?
That is all that needs to be done.

Quote:
Originally Posted by Selur View Post
Are the dependencies compiled statically into the dylib files? Do the dependencies come with the installer or is there something else to do?
Dependencies are shared libs that will need to be placed in the lib folder. The dependencies for things in the installer are included, but any plugin that lists a needed dependency above will need to be downloaded from the dependencies folder. The installer creates a folder on the desktop with shortcuts to the locations in which dependencies, executables, plugins, and scripts need to be placed.

Quote:
Originally Posted by Selur View Post
@l33tmeatwad: how about adding the .dylib files to a git repository on github or similar, so getting the latest versions could be done with a 'git clone --depth=1 <remote_repo_url>' ?
(always having to check all the folders by hand for updates and extracting the 7z files seem bothersome )
Sorry, for now this is the distribution method, it is just the easiest for me to get things packaged up and distributed. I suppose I could repackage them in another format at a later time with something the native OS supports.

Quote:
Originally Posted by Selur View Post
Ps.: @l33tmeatwad: any change of an uninstaller for the base installer? Something that would remove everything the installer added to the system?
It's on the to-do list. For now the main way to remove it is to delete /Library/Frameworks/VapourSynth.framework. If you want all of it removed you can run the following terminal commands:
Code:
sudo rm -rf /Library/Frameworks/VapourSynth.framework
sudo rm -rf /usr/local/bin/ffmsindex
sudo rm -rf /usr/local/bin/vspipe
sudo rm -rf /usr/local/bin/vspython
sudo rm -rf /usr/local/include/vapoursynth
sudo rm -rf /usr/local/lib/libvapoursynth-script.dylib
sudo rm -rf /usr/local/lib/libvapoursynth.dylib
l33tmeatwad is offline   Reply With Quote
Old 13th June 2018, 20:19   #9  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 7,255
Hope to do some testing on Sunday and report back.
__________________
Hybrid here in the forum, homepage
Selur is offline   Reply With Quote
Old 14th June 2018, 15:25   #10  |  Link
l33tmeatwad
Registered User
 
l33tmeatwad's Avatar
 
Join Date: Jun 2007
Posts: 414
For anyone that is interested in compiling their own plugins that snagged the installer before, I have updated the R43 installer to include the pkgconfig files.
l33tmeatwad is offline   Reply With Quote
Old 15th June 2018, 16:12   #11  |  Link
kolak
Registered User
 
Join Date: Nov 2004
Location: Poland
Posts: 2,843
Traceback (most recent call last):
File "src/cython/vapoursynth.pyx", line 1847, in vapoursynth.vpy_evaluateScript
File "", line 9, in
File "/Library/Frameworks/VapourSynth.framework/lib/python3.6/site-packages/havsfunc.py", line 1222, in QTGMC
dnWindow = core.fft3dfilter.FFT3DFilter(noiseWindow, sigma=Sigma, planes=CNplanes, bt=noiseTD, ncpu=FftThreads)
File "src/cython/vapoursynth.pyx", line 1561, in vapoursynth._CoreProxy.__getattr__
File "src/cython/vapoursynth.pyx", line 1416, in vapoursynth.Core.__getattr__
AttributeError: No attribute with the name fft3dfilter exists. Did you mistype a plugin namespace?


even if libfft3dfilter.dylib is in plugins folder and gcc 8.1.0 is already installed and up-to-date.

Had issues with mvtools (mv.Super) also but installing with brew and overwriting library fixed it.

Last edited by kolak; 15th June 2018 at 16:16.
kolak is offline   Reply With Quote
Old 15th June 2018, 16:25   #12  |  Link
l33tmeatwad
Registered User
 
l33tmeatwad's Avatar
 
Join Date: Jun 2007
Posts: 414
Quote:
Originally Posted by kolak View Post
Traceback (most recent call last):
File "src/cython/vapoursynth.pyx", line 1847, in vapoursynth.vpy_evaluateScript
File "", line 9, in
File "/Library/Frameworks/VapourSynth.framework/lib/python3.6/site-packages/havsfunc.py", line 1222, in QTGMC
dnWindow = core.fft3dfilter.FFT3DFilter(noiseWindow, sigma=Sigma, planes=CNplanes, bt=noiseTD, ncpu=FftThreads)
File "src/cython/vapoursynth.pyx", line 1561, in vapoursynth._CoreProxy.__getattr__
File "src/cython/vapoursynth.pyx", line 1416, in vapoursynth.Core.__getattr__
AttributeError: No attribute with the name fft3dfilter exists. Did you mistype a plugin namespace?


even if libfft3dfilter.dylib is in plugins folder and gcc 8.1.0 is already installed and up-to-date.

Had issues with mvtools (mv.Super) also but installing with brew and overwriting library fixed it.
Did you install GCC 8.1.0 through brew? If so, FFT3DFilter is looking for the LibstdC++ library file the directory above where it is located (in /Library/Frameworks/VapourSynth.framework/libs) and not in /usr/local/lib. You can either create a link or download library file itself. As for the issues with mv.Super, can you provide the error messages so I can investigate?

Side note, if you are already using brew to install some things, I would recommend using it to install vapoursynth as well, this will help to avoid any issues of finding dependencies as they will all be in a single location. The installer is intended to be used if you do not wish to install xcode & brew and creates it's own self contained environment to not conflict with anything already installed. This is to maintain it working and not break things if other updates are done (like if you are using brew and update FFmpeg beyond the version FFMS2 or LSMASHSource was compiled to be compatible with). This means that the location /Library/Frameworks/VapourSynth.framework will need it's own copy of each dependency, or you can create links to them.

Last edited by l33tmeatwad; 15th June 2018 at 16:43.
l33tmeatwad is offline   Reply With Quote
Old 15th June 2018, 16:47   #13  |  Link
kolak
Registered User
 
Join Date: Nov 2004
Location: Poland
Posts: 2,843
Found LibstdC++ library (libstdc++.dylib) which was a link pointing to actual library. Made same link in Vapoursynth/Lib but still no luck (so VS/Lib/libstdc++.dylib is definitely pointing to actual library).

Well- I'm bit lost with it, so some things are done through brew, some not (or even compiled blindly by me). It's most likely mess.

Issue with mv.Super was I think related to some by in mvtools which are in your package. mvtools itself worked I assume, just some part if it (mv.Super) didn't o maybe this is just my understanding. By installing it with brew and then replacing your library all got fixed.

Last edited by kolak; 15th June 2018 at 16:51.
kolak is offline   Reply With Quote
Old 15th June 2018, 16:53   #14  |  Link
l33tmeatwad
Registered User
 
l33tmeatwad's Avatar
 
Join Date: Jun 2007
Posts: 414
Quote:
Originally Posted by kolak View Post
Found LibstdC++ library (libstdc++.dylib) which was a link pointing to actual library. Made same link in Vapoursynth/Lib but still no luck (so VS/Lib/libstdc++.dylib is definitely pointing to actual library).

Well- I'm bit lost with it, so some things are done through brew, some not (or even compiled blindly by me). It's most likely mess.

Issue with mv.Super was I think related to some by in mvtools which are in your package. mvtools itself worked I assume, just some part if it (mv.Super) didn't o maybe this is just my understanding. By installing it with brew and then replacing your library all got fixed.
Would you mind sharing the script you used that cause issues with mv.Super? I'd like to test it out just to troubleshoot. If I need to fix something with the binary that's available I will.
l33tmeatwad is offline   Reply With Quote
Old 15th June 2018, 16:56   #15  |  Link
kolak
Registered User
 
Join Date: Nov 2004
Location: Poland
Posts: 2,843
Code:
import vapoursynth as vs
core = vs.get_core()
import havsfunc as haf

clip = core.ffms2.Source(source="")
clip = core.resize.Bicubic(clip=clip,format=vs.YUV422P8)
deint = haf.QTGMC(clip, Preset='Fast', TFF=True)
deint.set_output()
so just a call of QTGMC.

If you add grain retention:

Code:
deint = haf.QTGMC(clip, Preset='Fast', TFF=True, EZKeepGrain=1)
then issues with FFT3DFilter appears.

Last edited by kolak; 15th June 2018 at 16:59.
kolak is offline   Reply With Quote
Old 15th June 2018, 17:04   #16  |  Link
l33tmeatwad
Registered User
 
l33tmeatwad's Avatar
 
Join Date: Jun 2007
Posts: 414
Quote:
Originally Posted by kolak View Post
Code:
import vapoursynth as vs
core = vs.get_core()
import havsfunc as haf

clip = core.ffms2.Source(source="")
clip = core.resize.Bicubic(clip=clip,format=vs.YUV422P8)
deint = haf.QTGMC(clip, Preset='Fast', TFF=True)
deint.set_output()
so just a call of QTGMC.

If you add grain retention:

Code:
deint = haf.QTGMC(clip, Preset='Fast', TFF=True, EZKeepGrain=1)
then issues with FFT3DFilter appears.
It is working with the provided dependency binaries from the download location with an install using the VapourSynth installer. It's possibly something related to the split location for all the dependencies.

Edit: I just noticed I didn't list MVTools as needing FFTW3, it does require that dependency.

Last edited by l33tmeatwad; 15th June 2018 at 17:11. Reason: Updated information.
l33tmeatwad is offline   Reply With Quote
Old 15th June 2018, 17:40   #17  |  Link
kolak
Registered User
 
Join Date: Nov 2004
Location: Poland
Posts: 2,843
Yes, it was probably failing due to missing dependencies (due to mess on my system).

Hm... still have to fight FFT3DFilter problem.

I did uninstall vs with brew and used installer, so it should work.
Does FFT3DFilter needs some other library (other than. LibstdC++)?
What about FFTW3 itself (I think I actually tried copying all of its libraries into VS/Lib folder)?
kolak is offline   Reply With Quote
Old 15th June 2018, 17:48   #18  |  Link
l33tmeatwad
Registered User
 
l33tmeatwad's Avatar
 
Join Date: Jun 2007
Posts: 414
Quote:
Originally Posted by kolak View Post
Yes, it was probably failing due to missing dependencies (due to mess on my system).
I just checked and it also needs FFTW3 as well, sorry about that, in the process of getting all these up all in one day I missed marking those two. The easy way to fix would be to downloaded the provided dependencies and place them in the libraries folder (either through the shortcuts on the desktop or by browsing to /Library/Frameworks/VapourSynth.framework/lib). Having both of those should fix the issue.

Quote:
Originally Posted by kolak View Post
Hm... still have to fight FFT3DFilter problem.

I did uninstall vs with brew and used installer, so it should work.
Does FFT3DFilter needs some other library (other than. LibstdC++)?
What about FFTW3 itself (I think I actually tried copying all of its libraries into VS/Lib folder)?
It actually requires both libstdc++.6.dylib & libgcc_s.1.dylib. If you ever have issues with plugins/library files you can browse to that directory using terminal and run the command otool -L plugin.dylib to see what dependencies it needs. Here's what it looks like for FFT3Dfilter:
Code:
otool -L libfft3dfilter.dylib
libfft3dfilter.dylib:
	libfft3dfilter.dylib (compatibility version 0.0.0, current version 0.0.0)
	@loader_path/../libfftw3f_threads.3.dylib (compatibility version 9.0.0, current version 9.8.0)
	@loader_path/../libfftw3f.3.dylib (compatibility version 9.0.0, current version 9.8.0)
	@loader_path/../libstdc++.6.dylib (compatibility version 7.0.0, current version 7.25.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1)
	@loader_path/../libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)

Last edited by l33tmeatwad; 15th June 2018 at 18:10.
l33tmeatwad is offline   Reply With Quote
Old 15th June 2018, 18:23   #19  |  Link
kolak
Registered User
 
Join Date: Nov 2004
Location: Poland
Posts: 2,843
Ok- maybe we are getting closer
Yes, with this command I can check things myself.
kolak is offline   Reply With Quote
Old 15th June 2018, 18:27   #20  |  Link
l33tmeatwad
Registered User
 
l33tmeatwad's Avatar
 
Join Date: Jun 2007
Posts: 414
Quote:
Originally Posted by kolak View Post
Ok- maybe we are getting closer
Yes, with this command I can check things myself.
Instead of using the brew copies, try using the ones I provided in the download location above to see if that resolves your issues.
l33tmeatwad is offline   Reply With Quote
Reply

Tags
meatwadismagical, meatwadthegreat

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 03:20.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.