This repository contains the waveshapers from the Surge Synthesizer as a submodule.
Current waveshapers include:
- Saturators
- Rectifiers
- Wavefolders
- Additive
- Fuzzes
- Trigonometric
For more information, see the API documentation.
sst-waveshapers
is a header-only library, so it is possible to use the library
simply by adding include/
to your header search paths, and writing
#include <sst/waveshapers.h>
somewhere in your source code. However, it is
recommended to use the provided CMake configuration.
add_subdirectory(path/to/sst-waveshapers)
target_link_libraries(My-Killer-App PUBLIC sst-waveshapers)
Note: the sst-waveshapers library uses raw SSE SIMD intrinsics. If you are planning to use this library in a context that may not support SSE intrinsics, it is recommended to also link with simde.
To build and run the sst-waveshapers unit tests:
cmake -Bbuild
cmake --build build
./build/test-binary/sst-waveshapers-tests
To build the sst-waveshapers examples:
cmake -Bbuild -DSST_WAVESHAPERS_BUILD_EXAMPLES=ON
cmake --build build
Example binaries will be located in build/example-binaries/
.
The code in this repository is licensed under the General Public License v3.