A Subtractive and Additive Synthesizer, Sampler, and Granulizer built in Rust + Nih-Plug Written by Ardura
Please note this project is still a work in progress/alpha - I got a lot of traction once I posted on KVR and wanted to clarify that!
Join the discord! https://discord.com/invite/hscQXkTdfz Check out the KVR Page: https://www.kvraudio.com/product/actuate-by-ardura
Shortcut to troubleshooting section
Hover over any knob (or some labels) for an explanation!
- Two SVF Filters, a VCF inspired filter, Tilt inspired filters, and two other analog-inspired filters that can be parallel, serial, or bypassed with ADSR Envelopes
- Pitch modulation with ASDR
- 12 Subtractive Oscillator shapes:
- The standard: Sine, Triangle, Saw, Ramp, Square, Pulse, Noise
- WSaw - Saw with noise variance to create crispyness
- SSaw - Saw with small variance to create shimmer
- RSaw - Rounded saw wave
- RASaw - Rounded saw wave with random variances
- RSquare - Rounded square wave
- Additive Oscillators with up to 16 harmonics
- FM Supported between Oscillators/samples/granulizer
- 5 Main Filter Algorithms
- SVF - 7 Filter resonance approximations for different sweeps in SVF filters
- Default - Allegedly the "ideal" response when tying Q to angular sin response
- Moog - Allegedly a Moog Ladder Q approximation further modified
- TB - Allegedly an approximation of a TB-303 LP further modified
- Arp - Allegedly an approximation of an Arp 2600 further modified
- Res - I made this up - kind of a hyper resonance while still being gentle
- Bump - I made this up - a gentle bump resonance different from the others
- Powf - I made this up - Curves based on Powf math function as it scales
- Tilt Filter
- VCF Filter
- Analog inspired filter idea (Ardura's V4)
- Analog inspired filter idea (Ardura's A4I)
- SVF - 7 Filter resonance approximations for different sweeps in SVF filters
- 11 Different FX for post processing
- 3 LFO controllers
- 4 Modulators that can be linked to multiple things
- Sampler with pitch shifting or resample stretching
- Sampler supports single cycle waveforms for wavetable-like functions
- Granulizer with ADSR and crossfading between grains
- Any generator can go to any filter
- Samples can be saved into presets
- Stereo width and ultra wide controls
Since Actuate 1.2.8 the new file browser and UI use native text editing. This created some issues in some DAWs outlined here:
- FL Studio: No issues!
- Ardour: No issues!
- Bitwig: When using text input you need to use <shift + spacebar> for space key input
- Reaper: VST3 and CLAP text input works if you use "send all keyboard input to plugin" in the FX menu
- Ableton:
- Text input works if you add "-_EnsureKeyMessagesForPlugins" to Options.txt in preferences. See https://forum.ableton.com/viewtopic.php?t=97318
- Unfortunately I don't know where this would be on Linux or Mac so I'm open to help from Ableton users!
- Compatible with Windows 10 and up
- Compatible with Linux
- Compatible with Mac
- DAWS
- FL Studio tested compatible
- Ableton tested compatible
- Reaper tested compatible
- Ardour tested compatible with some reported performance issues
- Bitwig tested compatible
- Cantibile tested uncompatible and has issues
- VSTHost tested compatible but has gui issues
- You should do this if the precompiled binary fails or you have a unique system configuration (like linux)
After installing Rust on your system (and possibly restarting your terminal session), you can compile Actuate as follows:
- Make sure your dependencies are installed. These are the packages you will need at minimum:
libgl1-mesa-dev libglu1-mesa-dev libxcursor-dev libxkbcommon-x11-dev libatk1.0-dev build-essential libgtk-3-dev libxcb-dri2-0-dev libxcb-icccm4-dev libx11-xcb-dev
- Note I have also found on some systems
libc6
orglibc
needs to be installed depending on your configuration
- Note I have also found on some systems
- Run the build process in a terminal from the Actuate root directory
cargo xtask bundle Actuate --profile release
Or use the following for debugging:
cargo xtask bundle Actuate --profile profiling
- Your outputs will be in the Actuate/target/bundled directory.
- the
*.clap
you can copy to your clap directory/path, the vst3 one needs the folder structure copied on linux
The builds on GitHub and KVR are VST3 and CLAP format, and are compiled on the following machine types:
- Ubuntu 22.04
- Windows' 2022 build (Win10? The Github runner just lists "Windows-2022")
- MacOS 12
- The MacOS M1 build is on OS 14
- Naming presets and info may be unstable in non-windows environments as I have not tested those sorry