Ceres DSP
At Ceres DSP, we believe in making the impossible fun. Ceres DSP is an ergonomics-first, component based digital signal processing framework. Using the Ceres Runtime lets you focus on what matters: writing digital signal processors.
Core Features:
use_state<T>()hook enables Ceres Runtime to manage processor state- Component based processors are composable with
serial!()andparallel!()macros ceres::new<E>()provides channel based api to send events to audio runtime- Synth Engine provides cpal integration
- Modulators (event handlers, think envelopes if you speak synthesizer)
use_parameters<T>()hook +#[parameters]proc macro
The Future:
Currently, we are working on redoing our routing API to support fluent rerouting between components at runtime. We are also working on a feedback based drum synthesizer VST, inspired by SOPHIE. For updates, to contribute, or just to make cool projects and share your work, please join the official Ceres Discord
Example:
You can find the example code's repo here. Alternatively:
Here, we use Ceres' Synth Engine to set up a basic synthesizer:
// main.rs
Here is how our sawtooth oscillator is defined:
// this struct holds our oscillator's internal state