Does FM scale or add to frequency

DSP, Plugin and Host development discussion.
Post Reply New Topic
RELATED
PRODUCTS

Post

Which of the two lines best describes FM?

Code: Select all

modulated= freq * (abs(fm) * sign(fm))
modulated= freq + fm

Post

Isn't their two types? They are both correct but different. One of them is called Chowning FM.

Post

abs(fm) * sign(fm) = fm

So it's between "freq * fm" and "freq + fm". In that case "freq + fm" describes it better.

Post

i'm aware of 3 kinds of "FM"

freq += fm*depth
pitch += fm*depth
phase += fm*depth; // yamaha ;P~
It doesn't matter how it sounds..
..as long as it has BASS and it's LOUD!

irc.libera.chat >>> #kvr

Post

freq += fm*depth AKA Linear FM
pitch += fm*depth AKA Exponential FM
phase += fm*depth AKA Phase Modulation (used by most digital "FM" synths)

Post

Use phase modulation.

Like, there's no contest, it's by far the most workable, useful type. Frequency modulation is basically phase modulation using the integral of the modulator (so for instance, frequency modulation by a square wave is just like phase modulation with a triangle wave) and it has the added defect that it easily goes out of tune (you cannot use 3 modulator stacks or feedback because it goes out of tune). Exponential frequency modulation compounds this problem by putting modulation on an exponential scale, so it's essentially always out of tune.

So the ACTUAL algorithm to "fm" (phase modulation) is:

Code: Select all

output = volume * carrier_wave[carrier_freq * t + modulation * modulator_wave[modulator_freq * t] ]

Post Reply

Return to “DSP and Plugin Development”