[linux-audio-dev] Rectifier algorithm and Exponential FM question

Mike Rawes mike_rawes at yahoo.co.uk
Tue May 6 06:34:01 UTC 2003

 --- nickt <nicktsocanos at charter.net> wrote: > Hi,
> Sorry if this is the wrong list. I have never found a list with people
> who can help me with these kind of questions.
> I am trying to figure out how a rectifier works in code. I have created
> something like it using tanh() distribution ( which will turn a sine
> wave into a sort-of-square wave). I can also achieve it with hard
> clipping/saturation. In the same sense I'd also like to know how a
> smooth operation works as well. I can not find any source code or
> explanations to help me figure out the algorithm yet.
> My other question is how are exponential signals generated? I want to
> experiment with exponential FM. My only understanding of Exp. Fm is that
> it sweeps half down and full up ( at 440hz, it would sweep 220hz down
> and 880 hz up). I haven't much of an idea how this is achieved. How do I
> convert a sine wave into an exponential signal for Exp FM?

freq * pow(2.0, sin(x)) 
will modulate a frequency in this way.

e.g. 440 * pow(2.0,  1.0) will raise by 1 octave (880Hz)
     440 * pow(2.0, -1.0) will lower by 1 octave (220Hz)

So an unscaled sine wave will do a 2 octave sweep.


Yahoo! Plus
For a better Internet experience

More information about the Linux-audio-dev mailing list