vapoursynth classic

setting up the environment

cd ~
git clone https://github.com/AmusementClub/vapoursynth-classic
cd ./vapoursynth-classic
brew update
brew install automake llvm
export CC=/opt/homebrew/opt/llvm/bin/clang
export CXX=/opt/homebrew/opt/llvm/bin/clang++
export LDFLAGS="-fuse-ld=lld -L/opt/homebrew/opt/llvm/lib/c++ -Wl,-rpath,/opt/homebrew/opt/llvm/lib/c++"
export PATH=/opt/homebrew/opt/llvm/bin:$PATH
export CPATH=/usr/local/include:$CPATH
export LIBRARY_PATH=/usr/local/lib:$LIBRARY_PATH
pip install -U cython setuptools wheel
echo 'export PYTHONPATH=/usr/local/lib/python3.12/site-packages'  >> ~/.zshrc
source ~/.zshrc

zimg

git clone https://bitbucket.org/the-sekrit-twc/zimg.git --depth 1 --recurse-submodules --shallow-submodules
pushd zimg
./autogen.sh
./configure
make -j
sudo make install -j
popd
rm -rf zimg

libtool

mv /usr/local/Cellar/libtool /usr/local/Cellar/libtool_1
brew install libtool
nano ~/.zshrc
echo 'PATH="/opt/homebrew/opt/libtool/libexec/gnubin:$PATH"'  >> ~/.zshrc
source ~/.zshrc

compile

./autogen.sh
./configure
CMAKE_ARGS="-DLLAMA_METAL=on -DCMAKE_OSX_ARCHITECTURES=arm64" \\nmake CFLAGS+="$(pkg-config --cflags lqr-1)" \\nLDFLAGS+="$(pkg-config --libs lqr-1) -L/opt/homebrew/Cellar/liblqr/0.4.2_1/lib" -j
sudo make install -j
ARCHFLAGS="-arch arm64" pip install . --compile --no-cache-dir

vspreview-rs

cd ~
git clone https://github.com/quietvoid/vspreview-rs
cd vspreview-rs
cargo build --release
cp target/release/vspreview-rs /usr/local/bin
mv /usr/local/bin/vspreview-rs /usr/local/bin/vse-previewer

plugins

bestsource

cd ~
git clone https://github.com/vapoursynth/bestsource.git --depth 1 
--recurse-submodules --shallow-submodules --remote-submodules
cd bestsource

create native_file.txt,

[binaries]
c = 'clang'
cpp = 'clang++'

[properties]
c_args = ['-arch', 'arm64']
cpp_args = ['-arch', 'arm64']
meson setup build --native-file=native_file.txt
ninja -C build
ninja -C build install

AkarinVS/vapoursynth-plugin

cd ~
git clone https://github.com/AkarinVS/vapoursynth-plugin
cd vapoursynth-plugin
brew install llvm@15
echo 'export PATH="/opt/homebrew/opt/llvm@15/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

create native_file.txt,

[properties]
c_args = ['-arch', 'arm64']
cpp_args = ['-arch', 'arm64']
meson setup build --native-file=native_file.txt
ninja -C build
ninja -C build install

remove export PATH="/opt/homebrew/opt/llvm@15/bin:$PATH" in zshrc

VapourSynth-BM3D

cd ~
git clone https://github.com/HomeOfVapourSynthEvolution/VapourSynth-BM3D
cd VapourSynth-BM3D
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH

create native_file.txt,

[properties]
c_args = ['-arch', 'arm64']
cpp_args = ['-arch', 'arm64']
meson build --native-file=native_file.txt
ninja -C build
ninja -C build install

vsrepo.py

cd ~
git clone https://github.com/Stefan-Olt/vsrepo.git
cd vsrepo
python vsrepo.py update

however, it seldom work, with the following errors

python vsrepo.py install vcm 
Rebuilding dist-info dirs for other python package installers
No binaries available for darwin-aarch64 in package vcm, skipping installation
Updating VapourSynth stubs
Nothing done
1 packages failed

vs-nlm-ispc

cd ~
brew install ispc
git clone https://github.com/AmusementClub/vs-nlm-ispc.git
cd vs-nlm-ispc
cmake -S . -B build -D CMAKE_BUILD_TYPE=Release \
-D CMAKE_ISPC_INSTRUCTION_SETS="neon-i32x4" \
-D CMAKE_ISPC_FLAGS="--opt=fast-math"
cmake --build build
cmake --install build

Neo f3kdb

cd ~
git clone https://github.com/yuygfgg/neo_f3kdb_crossplatform
cd neo_f3kdb_crossplatform
export CC=/opt/homebrew/opt/llvm/bin/clang            
export CXX=/opt/homebrew/opt/llvm/bin/clang++
cmake -B build/gcc -S . -G "Unix Makefiles" -D_DIR=gcc
cmake --build build/gcc
cp ./build/gcc/libneo-f3kdb.dylib /usr/local/lib/vapoursynth/

VapourSynth-EEDI2

cd ~
git clone https://github.com/HomeOfVapourSynthEvolution/VapourSynth-EEDI2
cd VapourSynth-EEDI2
./autogen.sh
./configure
make -j
make install
cp /usr/local/lib/libeedi2.dylib /usr/local/lib/vapoursynth/
cp /usr/local/lib/libeedi2.la /usr/local/lib/vapoursynth/

vapoursynth-sangnom

cd ~
git clone https://github.com/dubhater/vapoursynth-sangnom
cd vapoursynth-sangnom
./autogen.sh
./configure
make -j
make install
cp /usr/local/lib/libsangnom.0.dylib /usr/local/lib/vapoursynth/
cp /usr/local/lib/libsangnom.la /usr/local/lib/vapoursynth/

vapoursynth-nnedi3

cd ~
git clone https://github.com/dubhater/vapoursynth-nnedi3
cd vapoursynth-nnedi3
./autogen.sh
./configure
make -j
make install
sudo cp /usr/local/lib/libnnedi3.dylib /usr/local/lib/vapoursynth/
sudo cp /usr/local/lib/libnnedi3.la /usr/local/lib/vapoursynth/