Frequency Modulator Tool
Two-operator FM synthesis with a sine modulator driving the carrier's frequency. Adjust carrier frequency, the modulator/carrier ratio, and the modulation index to shape spectra ranging from pure tone through harmonic to inharmonic and metallic. Live combined waveform plot plus a log-frequency spectrum with markers for the carrier, modulator, and Carson-rule bandwidth edges. 10 preset patches cover the classic FM timbres — bell, electric piano, bass, metallic, wood drum, and more.
Carrier
Modulator
modGain.gain.value is set to internally.Master
Presets
Live readouts
FM Synthesis — Concepts and Patches
Frequency modulation synthesis — FM for short — is the technique John Chowning patented in 1973 and Yamaha turned into the DX7 a decade later. It's a remarkably compact way to generate musically-rich timbres from very few oscillators: a single sine carrier whose frequency is modulated by a single sine modulator can produce thousands of distinct spectra ranging from pure tone to clanging metal, just by varying three numbers.
The FM equation
For a sine carrier modulated by a sine modulator, the output is:
y(t) = sin(2πfct + I · sin(2πfmt))
Three parameters control everything:
- fc — carrier frequency. Determines the perceived pitch when the modulation index is small.
- fm — modulator frequency. Together with fc determines the spectrum shape. We expose this as a ratio (fm / fc) because that's the parameter that stays invariant under transposition.
- I — modulation index. Determines the spectral width — how many sidebands have significant amplitude.
Why sidebands appear at fc ± n·fm
FM is equivalent to additive synthesis of an infinite series of sinusoids. The closed-form identity gives the sideband amplitudes as Bessel functions of the first kind:
y(t) = Σn=−∞+∞ Jn(I) · sin(2π(fc + n·fm)·t)
So each sideband at fc ± n·fm has amplitude Jn(I). For small I most energy stays in the central peak (J0 dominates); as I grows the energy spreads out into higher-order sidebands. At I ≈ 2.40 (the first zero of J0) the carrier amplitude becomes zero — all energy lives in the sidebands. The "Square-like" preset is parked there for exactly this reason.
Integer vs non-integer ratios
- Integer ratio (1:1, 2:1, 3:1, etc.) — all sidebands land on harmonic positions of a common fundamental. The result is a harmonic spectrum that the ear hears as a single pitched tone. The "Sawtooth-like", "Square-like", and "Organ-ish" presets are integer-ratio examples.
- Non-integer ratio (1.4:1, 3.47:1, 7:1, etc.) — sidebands land at frequencies that aren't integer multiples of any common fundamental, producing inharmonic spectra. These sound like bells, metal bars, and percussion instruments. Bell, Metallic, and Wood drum are the inharmonic presets here.
Carson's rule and bandwidth
The total bandwidth occupied by the FM signal is well approximated by Carson's rule: BW ≈ 2·(Δf + fm) = 2·fm·(I + 1). The gold dashed markers on the spectrum plot show the BW boundaries; bars outside that range should be barely-visible noise. Carson's rule isn't exact — sidebands extend infinitely in theory — but it captures ~98% of the energy and is what radio engineers use to allocate FM transmitter channels.
About the "phase control" the category page mentions
Phase between the carrier and modulator does affect the shape of the output waveform but doesn't affect the audible spectrum (the FFT is invariant under sample-time shifts). For static pure-FM patches you can ignore it. For animated patches where the modulator's phase relative to the carrier changes over time, you'd need a more elaborate setup — outside the scope of this 2-operator demonstration.