Main Changes
- For license reasons, all LGPL licensed modules were split into a separate library, DaisySP-LGPL which will be under the LGPL license.
- DaisySP will remain under the MIT License.
- If you want to continue using the LGPL modules in your user app, you must add
USE_DAISYSP_LGPL=1to your Makefile. - The build process was not modified at all from a user perspective, when you build DaisySP, make will automatically build DaisySP-LGPL if it is present. This also applies to the use of the VS Code tasks.
- The process for using modules has not changed either, simply
#include "daisysp.h"as before and use the modules across both repos seamlessly. - Also created a new module called OnePole ported from pichenettes' stmlib/dsp/filter.h.
- This was necessary in order to replace the Tone filter in KarplusString without using LGPL code in the MIT codebase. Plus it's a nice module to have around.
- We've gone through and upated DaisyExamples as well to reflect these changes
Tech Details
- DaisySP-LGPL is compiled to its own .a file, so it can be statically linked later alongside DaisySP.
- In keeping with LGPL practice, DaisySP-LGPL includes a script with instructions to create a folder with everything users need to re-link their firmware with a modified version of DaisySP-LGPL.
- All modules in each repo gained a license header, which we will continue to use going forward.
The Modules
- Control/line
- Dynamics/balance
- Dynamics/Compressor
- Effects/bitcrush
- Effects/fold
- Filters/Allpass
- Filters/Atone
- Filters/Biquad
- Filters/Comb
- Filters/Mode
- Filters/moogladder
- Filters/NlFilt
- Filters/Tone
- PhysicalModelingpluck
- PhysicalModelingpolypluck
- Synthesis/blosc
- Utility/jitter
- Utility/port