DaisySP is an open source DSP library written in C++ and specifically tailored to embedded audio applications.
It was originally created for use with the Daisy Embedded Audio Platform, however it can easily be used elsewhere.
-
Synthesis blocks such as oscillators, filters, envelopes, etc.
-
DSP helper functions optimized for embedded applications
-
Effects algorithms including reverb, delay, pitch-shift
static void AudioCallback(float *in, float *out, size_t size)
{
float saw, freq, output;
for (size_t i = 0; i < size; i += 2)
{
freq = 2500 + ( lfo.Process()*2500 );
saw = osc.Process();
flt.SetFreq(freq);
output = flt.Process(saw);
// left out
out[i] = output;
// right out
out[i+1] = output;
}
}
- Browse the online reference documentation, or take it with you in PDF form
- Check out our Getting Started Wiki Page
- Make some sound!
Here are some ways that you can get involved:
- Proof read the documentation and suggest improvements
- Test existing functionality and make issues
- Make new DSP modules. See issues labeled "feature"
- Port existing DSP modules from other open source projects (MIT). See issues labeled "port"
- Fix problems with existing modules. See issues labeled "bug" and/or "polish"
Before working on code, please check out our Contribution Guidelines and Style Guide.
Here are some ways to get support and connect with other users and developers:
-
Join the Daisy Forum
-
Make a GitHub Issue
-
Join the Daisy Slack Workspace
DaisySP is licensed with the permissive MIT open source license.
This allows for modification and reuse in both commercial and personal projects. It does not provide a warranty of any kind.
For the full license, read the LICENSE file in the root directory.