What is phase distortion synthesis?

It sounds for the description like taking a sawtooth and running it through an arbitrary non-linear wave-shaper that changes with time. What am I missing?

Interesting topic. I thought it’s where you modulate the phase at audio rate instead of frequency, then I looked it up and remembered that’s phase modulation (PD) not distortion, and also what Yamaha used on the synths that everyone calls FM, which is slightly confusing! Phase distortion is basically varying the rate of a sine wave using transforms. It uses a lookup table with the value of the sine, then scans through that table at varying rates. This link explains it quite well:


Ah, fascinating. Great article link.

Oh, that is interesting! My misunderstanding was that I thought with “phase distortion” the carrier rate is always zero. Phase modulation with a zero carrier is indeed the same thing as a sawtooth into a wave-shaper (as the article pretty much implies). I think I have seen discussions here of making a phase distortion using an FM/PM VCO with a zero carrier frequency, but I see in the article that is at best a special case.

The article says that carrier frequency == modulator frequency is the most common case, and that in CZ synthesizers the carrier is always an integer multiple of the modulators. (I think is says that)

So I guess any FM/PM setup into wave-shaper is phase distortion synthesis?

Your understanding is close but not quite right, specifically this:

So I guess any FM/PM setup into wave-shaper is phase distortion synthesis?

I suppose technically, yes, but it will be a little harder to control without some constraints, that are difficult to enforce if you are building a PD setup out of general purpose modules.

Phase distortion synthesis in the sense of how the Casio CZ popularized it is as follows:

  • Generate a phasor (unipolar, normalized upward ramp function) at the desired fundamental frequency
  • “Distort” the phasor in a nonlinear way, keeping it unipolar and making sure it’s still periodic at the same fundamental frequency
  • Use the distorted phasor as a lookup for a wavetable (traditionally sine, but can be anything you want really)

I added some animations to the Warp Core manual to help explain the PD algorithms Warp Core is using but there are many other possible phase distortions that produce interesting results.

docB Phs implements many more common ones, in a more modular fashion where you’re meant to feed a phasor into the module and get a phasor out, to use with CSOSC or other modules from that plugin.

Phase Modulation can be considered a subset of Phase Distortion, where you are simply adding a scaled sinusoid (or any signal, really) to the original ramp phasor and wrapping the result to remain within the unit range. This is equivalent to the traditional PM formula, since the phasor represents the phase which will be used for the output waveform and the modulation signal is simply added to that phase before the lookup happens.

For example here is Warp Core’s second output configured to output the raw phasor, with only internal PM applied. As the internal PM amount increases, the summation of the phasor with the internal modulation sine signal eventually exceeds the normalized range and wraps back.


I suppose that’s exactly what the article above says just explained another way :slight_smile:

Ah, ok. I totally got it now.

Who is the subject of that humor?

I’m sorry, I don’t understand. What humor? My intention was to acknowledge (mainly to myself, I suppose) that I had basically just re-explained the concepts in the article @SuperMuppet linked in the first reply.


The humor indicated by the smiley face at the end of the post. Smiley face usually implies humor or something. No problem, though.

But that signal (the modulator) can be tuned differently and this takes the subset out of the set, doesn’t it ? I mean you will never get PD to sound like PM with a ratio of 1 : 1,42

Hey, @InfrasonicAudio, Warp Core was a module I hadn’t tried yet so thanks for that, and also Squinky for starting a great thread. Got to love a complex oscillator! I actually learnt something, and was inspired to make a quick video :slight_smile:


Killer sounds in that patch!


Warp Core has been my favorite oscillator in Rack ever since it came out in October. Capable of so many great waveforms.

I’ve missed the Animated Circuits PD oscillators that never made it to 2.0, but this has filled that void nicely.

1 Like