OctaSine
VST2 frequency modulation synthesizer written in Rust.
Official website with downloads
OctaSine.com
Audio examples
SoundCloud
Screenshots
Light mode
Dark mode
About
- Four FM operators with parameters for volume, panning, modulation index, feedback, frequency modifiers (ratio, free and fine), envelope values (attack, decay, release) and toggling of white noise mode.
- Flexible routing allows setting the operator modulation target (with some limitations) as well as the percentage of signal that is simply added to the final output, enabling additive synthesis.
- Four LFOs with multiple waveforms, oneshot and loop modes and optional DAW BPM sync. They can target most operator parameters and most parameters of lower-index LFOs.
- Each operator is connected to an attack-decay-sustain-release volume envelope with logarithmic slopes.
- Per-operator white noise mode makes it easy to create percussive sounds such as hi-hats and cymbals.
- Runs on macOS, Windows 10 and Linux in VST2-compatible DAWs. Synthesis is SIMD-accelerated where possible.
- Master volume and master frequency parameters
- 128 voices (using them all simultaneously might consume quite a bit of CPU time though)
- Fully automatable
Installation
Please refer to OctaSine.com.
Installation from source code
macOS
If you already have any of the software mentioned below, that step can be skipped.
-
Install the Rust compiler. Choose the nightly toolchain when prompted. Requires the XCode build tools from Apple, you will probably be prompted to install those.
-
Install git and cmake with homebrew:
brew install git cmake
- Clone this repository to a folder on your computer:
mkdir -p "$HOME/Downloads"
cd "$HOME/Downloads"
git clone https://github.com/greatest-ape/OctaSine.git
cd OctaSine
- Build and install:
./scripts/macos/build-simd-and-install.sh
Windows
If you already have any of the software mentioned below, that step can be skipped.
- Install Microsoft C++ Build Tools. Make sure that the Windows 10 SDK and the English language pack components are included during installation.
- Install the Rust compiler. When prompted, choose the nightly toolchain and to modify the path variable.
- Install cmake. When prompted, choose the option to add cmake to the system executable path.
- Install git.
- Clone this repository to a folder on your computer.
- Build OctaSine:
cargo +nightly build --release --features "simd" -p octasine_vst2_plugin
- Copy
target\release\octasine.dll
to your VST plugin folder.
Linux
If you already have any of the software mentioned below, that step can be skipped.
- Install the Rust compiler. Choose the nightly toolchain when prompted.
- Install dependencies, e.g.,
sudo apt-get install cmake git build-essential libx11-dev libxcursor-dev libxcb-dri2-0-dev libxcb-icccm4-dev libx11-xcb-dev
You might need to install llvm/clang dependencies too, e.g.,
sudo apt-get install llvm clang
On Debian 10, you might need to install some more dependencies:
sudo apt-get install pkg-config libfreetype6-dev libexpat1-dev
- Clone this repository to a folder on your computer, e.g.,
mkdir -p "$HOME/Downloads"
cd "$HOME/Downloads"
git clone https://github.com/greatest-ape/OctaSine.git
cd OctaSine
- Build the OctaSine plugin:
cargo +nightly build --release --features "simd" -p octasine_vst2_plugin
If build fails, please try building without sleef SIMD acceleration:
cargo +nightly build --release -p octasine_vst2_plugin
-
Copy
target/release/liboctasine.so
to your VST plugin folder -
You might need to install Vulkan graphics drivers too. More info here.
Architecture
See ARCHITECTURE.md.
Copyright and license
Copyright (C) 2019-2021 Joakim Frostegård
OctaSine is licensed under the GNU Affero General Public License, Version 3, as published by the Free Software Foundation. See LICENSE for details.
Contents of the contrib
directory are licensed under other terms. Please refer to the contained directories and/or files for details.
Trivia
- The name OctaSine comes from the four stereo sine-wave operators