Well, I suggest familiarizing yourself with the language first to decide if you like it and it might seem a bit alien initially.
Adding all the extension features that the C++ integration has would take a bit longer of course.
There’s not that much extensions. We can consider a minimal implementation something that just connects patch-defined parameters to OWL controls and runs generated DSP code. Then all optional extras would be:
- V/Oct conversion using calibration data (exposed as FFI functions in
owl.lib
for C++ integration, this should be fairly simple if FFI works with their Rust backend) - Optional MIDI control (maps parameters with names like “freq”/“bend”/“gain” to MIDI input)
- Soundfile support for loading sample buffers from flash storage - you’ll need an actual WAV parser to be compliant with how FAUST works
We have one of FAUST core devs here, so you can ping Stephane (his username is sletz
) if necessary. They also have a Rust specific channel on FAUST discord too.
If you’ll need some patches to experiment, this covers all OWL specific features except loading soundfiles. The latter is still not enabled in Rebeltech library and requires compiling offline to enable it via env var, but I have an example for testing here