[LAD] Harmonic generator and transfer function

Erik de Castro Lopo mle+la at mega-nerd.com
Tue Nov 30 23:33:17 UTC 2010

Andrew Gaydenko wrote:

> How does Steve Harris' Harmonic generator LADSPA plugin work? I mean relation 
> between controls (concrete harmonics levels) and transfer function
> Vout = Vin(1 + a*Vin + b*Vin^2 + ...)

This can be done with waveshaping.

If your source is a sinewave you can run it's samples, x [n],
through a polynomial function:

     y [n] = P (x [n])

and there is a way to calculate the required polynomial P
using Chebyshev polynomials.

I suspect that if you google for "waveshaping chebyshev" you
will find a more complete exposition than what I can drag up
from the depths of my memory.

Erik de Castro Lopo

More information about the Linux-audio-dev mailing list