real time mixing and syncronization see http://elldev.com/repsyps
repsyps depends on native libraries that must be installed manually for development:
- portaudio 2.0 for realtime audio output
- libtensorflow 1.15.0 for running A.I. source separation
- ffmpeg 4.2.2 for decoding/encoding audio
- fftw 3.8 fast fourier transform
- Xcode, homebrew all of that
- autoconf
brew install autoconf automake
- gfortran
brew cask install gfortran
- unzip
brew install unzip
- nodejs 10+ see installer
- yarn
npm install -g yarn
# clone repsyps to a reasonable place
git clone https://github.com/satchelspencer/repsyps && cd repsyps
# downlad spleeter weights and test audio files
wget http://d1p4j3i2t4q5mq.cloudfront.net/lib.tar
tar xvzf lib.tar lib && rm lib.tar
# open the library dir
cd lib
export REPSYPS_LIBS=$(pwd)
# portaudio indtallation
wget http://files.portaudio.com/archives/pa_stable_v190700_20210406.tgz
tar xvzf pa_stable_v190700_20210406.tgz portaudio
rm pa_stable_v190700_20210406.tgz
cd portaudio
./configure --disable-mac-universal && make
cd ..
# download precompiled tensorflow binaries
mkdir libtensorflow && cd libtensorflow
wget https://github.com/vodianyk/libtensorflow-cpu-darwin-arm64/raw/main/libtensorflow-cpu-darwin-arm64-2.5.0.tar.gz
tar xvzf libtensorflow-cpu-darwin-arm64-2.5.0.tar.gz
rm libtensorflow-cpu-darwin-arm64-2.5.0.tar.gz
cd ..
# install ffmpeg
wget http://ffmpeg.org/releases/ffmpeg-4.2.2.tar.xz
tar xf ffmpeg-4.2.2.tar.xz
rm ffmpeg-4.2.2.tar.xz
cd ffmpeg-4.2.2
./configure --disable-autodetect --disable-x86asm
make
mv VERSION VERSION.txt
cd ..
# install fftw
wget http://www.fftw.org/fftw-3.3.8.tar.gz
tar xf fftw-3.3.8.tar.gz
rm fftw-3.3.8.tar.gz
cd fftw-3.3.8
./configure
make
cd ..
# install rubber-band
wget https://breakfastquay.com/files/releases/rubberband-3.0.0.tar.bz2
tar xf rubberband-3.0.0.tar.bz2
rm rubberband-3.0.0.tar.bz2
cd rubberband-3.0.0
brew install meson
meson build && ninja -C build
cd ..
## install libsamplerate
wget http://www.mega-nerd.com/SRC/libsamplerate-0.1.9.tar.gz
tar xf libsamplerate-0.1.9.tar.gz
rm libsamplerate-0.1.9.tar.gz
cd libsamplerate-0.1.9
./configure --disable-fftw --disable-sndfile --prefix $(pwd)
make
make install
cd ..
#install DSPFilters
git clone https://github.com/vinniefalco/DSPFilters
cd DSPFilters/shared/DSPFilters
cmake .
make
# back to project dir and install node deps
yarn
make sure the lib folder has read/write permissions
- nodejs 10+ see installer
- yarn
npm install -g yarn
- download precompiled libraries http://d1p4j3i2t4q5mq.cloudfront.net/lib-win.zip and extract it into the repsyps directory
/lib
- run
yarn
- tested on debian
- autoconf
sudo apt-get install automake autoconf
- nodejs 10+ see installer
- yarn
sudo npm install -g yarn
- yasm
sudo apt-get install yasm
- alsa
sudo apt-get install libasound2-dev
- gfortran
sudo apt-get install gfortran
clone repsyps to a reasonable place
git clone https://github.com/satchelspencer/repsyps && cd repsyps
# downlad spleeter weights and test audio files
wget http://d1p4j3i2t4q5mq.cloudfront.net/lib.tar
tar -xvf lib.tar lib && rm lib.tar
# open the library dir
cd lib
export REPSYPS_LIBS=$(pwd)
# portaudio indtallation
wget http://portaudio.com/archives/pa_stable_v190600_20161030.tgz
tar xvzf pa_stable_v190600_20161030.tgz portaudio
rm pa_stable_v190600_20161030.tgz
cd portaudio
./configure --with-alsa CFLAGS=-fPIC && make
cd ..
# download precompiled tensorflow binaries
mkdir libtensorflow && cd libtensorflow
wget https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-gpu-linux-x86_64-1.15.0.tar.gz
tar xvzf libtensorflow-gpu-linux-x86_64-1.15.0.tar.gz
rm libtensorflow-gpu-linux-x86_64-1.15.0.tar.gz
cd ..
# install ffmpeg
wget http://ffmpeg.org/releases/ffmpeg-4.2.2.tar.xz
tar xf ffmpeg-4.2.2.tar.xz
rm ffmpeg-4.2.2.tar.xz
cd ffmpeg-4.2.2
./configure --disable-autodetect --enable-pic --enable-shared
make
# install fftw
wget http://www.fftw.org/fftw-3.3.8.tar.gz
tar xf fftw-3.3.8.tar.gz
rm fftw-3.3.8.tar.gz
cd fftw-3.3.8
./configure
make
# back to project dir and install node deps
cd ../..
yarn