Complex Nonlinearities Episode 6: Wavefolding

Standard Digital Wavefolding

The typical method for implementing a digital wavefolding effect is to modulate the input signal by another wave, often a triangle or sine wave. This means that the static curves we’re used to looking at for nonlinear effects will be simple triangle or sine waves.

Modified Wavefolding 1: Saturation

The first modification we’ll make to the traditional digital wavefolder is to sum the outputs of a saturating nonlinearity and a wavefolding nonlinearity. Although I haven’t compared the two on a mathematical level, I’ve found through my own (quite subjective) listening tests that this architecture sounds a little bit more similar to a typical analog wavefolder, especially for large amounts of folding.

Modified Wavefolder 2: Feedback

Next, let’s modify our saturating wavefolder by adding a nonlinear feedback path.


Wavefolders are notorious for having a pretty gnarly harmonic response, which can result in some serious aliasing distortion if not handled properly. First, let’s look at the harmonic response for the traditional digital wavefolder, for both sine and triangle waves.


As usual, I’ve implemented the above wavefolding processors, along with variable feedforward and feedback gains, as an audio plugin (VST, AU). Feel free to checkout the source code on GitHub, and checkout a video demo on YouTube:


Thanks as always for taking the time to check out another episode of complex nonlinear audio signal processing. I hope you’ve been inspired to try our some wavefolding distortion of your own, perhaps experimenting with and improving on some of the architectures we’ve discussed here.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store