this is a fork of ezra's softcut JACK client which allows manipulating audio buffers in real time, developed at the behest of monome, originally for use with the norns sound computer. I've forked it to port a norns script I wrote, oooooo, to be available as a standalone cross-platform application.
This program requires JACK to be running. Make sure to first download and install JACK. Then you can use the qjackctl
GUI to start JACK, or you can start it from the command line.
Download oooooooo_v0.1.3.zip. Unzip it and then run the oooooooo.exe
program in the resulting directory.
Download oooooooo_v0.1.3.AppImage and then run the following commands:
chmod +x oooooooo_v0.1.3.AppImage
./oooooooo_v0.1.3.AppImage
Download oooooooo_v0.1.3.dmg. Make sure to allow the app to run in System Preferences > Security & Privacy > General. Then run the oooooooo
program in the resulting directory.
The following keys are available to control the program:
- pressing
h
will toggle help - pressing
1-7
will select loop 1-7 - pressing
up/down
will navigate parameters - pressing
left/right
will adjust parameter
- pressing
p
will toggle play - pressing
r
will toggle recording - pressing
ctl + r
will toggle record once
- pressing
l
will toggle lfo - pressing
:
or,
will adjust lfo period - pressing
-
or+
will increase lfo depth - pressing
[
or]
will decrease lfo depth
- drag-and-drop an audio file to load it
- pressing
s
will save tape loops parameters. saving creates a filetape_loops.json
in the directory where the program is running. it will also createtape_loop_x.wav
files for each tape loop. if you drag-and-drop thetape_loops.json
file, it will load the parameters and the audio files automatically.
This project is dynamically linked against several other libraries. You will need to install the depenndencies before you can build this project.
First install Jack.
Then install the dependencies:
sudo apt-get install libjack-jackd2-0 liblo7 libsdl2-2.0-0 libsdl2-ttf-2.0-0 librtmidi6 libsndfile1 flac
First install Jack.
Then install the dependencies:
brew install jack liblo sdl2 sdl2_ttf rtmidi libsndfile flac
First install Jack.
Then install the dependencies by first downloading and installing MSYS2.
pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-pkg-config mingw-w64-x86_64-python mingw-w64-x86_64-jack2 mingw-w64-x86_64-liblo mingw-w64-x86_64-SDL2 mingw-w64-x86_64-SDL2_ttf mingw-w64-x86_64-rtmidi mingw-w64-x86_64-libsndfile
Then, before building, you need to set the environment variables for the MSYS2 shell. You can do this by running the following command in the MSYS2 shell:
$env:PATH += ";C:\msys64\mingw64\bin"
or if your in MSYS2:
export PATH=/mingw64/bin:$PATH
export PKG_CONFIG_PATH="/mingw64/lib/pkgconfig:$PKG_CONFIG_PATH"
export MINGW_PREFIX="/mingw64"
rm -rf build && mkdir build && cd build && cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=/mingw64 -G "Unix Makefiles" .. && cmake --build . --config Release -- -j$(nproc)
Once the dependencies are installed, you can build the project.
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
cmake --build . --config Release -- -j$(nproc)
softcut is licensed under the GPLv3 license, Copyright (c) monome.
Compressor code is licensed under the LGPL V2.1, Copyright (c) 2023 Electrosmith, Corp, GRAME, Centre National de Creation Musicale.
Reverb code is licensed under BSD-2-Clause, Copyright (c) Jean Pierre Cimalando.
Monaspace Argon font is licensed under the SIL Open Font License, Version 1.1, Copyright (c) 2023, GitHub.