Playing with Phase Modulation
• This is great!
• What a coincidence, I have been having fun with phase modulation all day as well :) This reminds me of how the Intellijel Shape Shifter is designed. Which makes sense as it is basically a phase modulation dual oscillator.

Edit: Isn't Φ the mathematical symbol for phase? I thought alpha was 0-1 scaling on an input like frequency cut off on a filter.

Edit 2: Ok, I picked apart the patch a bit more and I think I understand why you labeled things the way you did. I think this is really GREAT! I think it might be more like casio phase distortion more than phase modulation, but it is wonderful sounding and I'm adding it to the other thing I was working on.
• In my case, alpha came from animation parlance. Or at least my layman's understanding of it. I guess that's the key.. I'm a layman at everything but programming and guitar.. :)

Glad you like it! If you're interested I can modify my wavetable building code to build the nodes with the alpha hooks. Let me know.

In reading the Wikipedia article on Phase Distortion, I understood it as more of a smoothed out oscillator sync hack of some kind, but I suppose it could work out to the same thing.

As an aside, it occurred to me in building my alpha hooks that I didn't have a way to make "normally closed" input jacks.. I.e. if the alphas aren't hooked to anything, use some sort of default, like in your typical semi-modular synths. Has anybody figured out a way to do that?
• You have to make a toggle to an internally normalized source for things to work reliably. @stschoen figured out a way to normalize a constant, but it glitchs out if you send it a signal. Basically you have a knob with it's built-in range be set to some high range like 1000-1001 and have it connected to an expr that reads something like knob>=1000?InternalSource:knob. That way when you connect a value it overrides the knob's minimum value and breaks the normaling.

You are right about the terminology of phase distortion, having looked at the wiki also. I must be thinking of something else, although it's definitely the same territory.

edit: Actually, the Casio PD in the wiki is so close to your trick I think I might have a go at adapting it.
• So I has a good bit of fun making a complex oscillator out of the rectified sine wave oscillator I was working on in the EMS thread. I put the alpha distortion module in there with a little tweaking so that 0 was a regular ramp and 1 was the full blown sine/ramp thingy that the alpha module turns into.

What I found interesting is that one oscillator making a noise is like 2% CPU, but two of these cross modulating with a z-1 unit delay node is about 32% CPU. I'm so glad I live in the 21st century!
• @RobertSyrett That's pretty nice. Seems like it would make a nice drone component. It's fun that pretty much all the motion is coming from noisy sound.

For what it's worth, it's running at 51% on my iPad Air.
• So I made a patch based on the Phase Distortion wikipedia article and indeed it did sound like a resonant lowpass filter. Then I added @jjthrash phasor alpha distortion and it sounded like a filter with the resonance wonderfully distorting. Thought I would share.
• @RobertSyrett That sounds amazing.
• That's outstanding! I'll have to read the article.
• Thanks!

@stschoen, There is also a Phase Distortion "Insider's Guide" at http://thesnowfields.com/manuals/An Insider's Guide to Casio CZ Synthesizers.pdf

@jjthrash, I increasingly appreciate that the alpha distortion module has slope continuity, it really preserves the bessel functions without adding peaks or edges.
• @RobertSyrett Glad it's useful! I think I've come up with another one, though it probably needs some tweaking. The cubic emphasizes the middle of the waveform. The attached trigonometric one is like a parameterized smoothstep. Because of the fractional-roots-of-negative-numbers issue I had to hack it to crossfade between two functions, mirrors of each other.

I determined with some confidence that crossfading between two functions with slope continuity on the range [0,1] leads to a function that also has slope continuity.

However, that doesn't mean the act of crossfading leads to a clean transition (hence the need for tweaks).

Combining the alphas leads to interesting results. :)
• One further comment on the trigonometric alpha function: the knob picks between dual functions, but if the waveform is symmetric and even, there is no difference, and if it is symmetric and odd, there is minimal difference.
• @RobertSyrett, very interesting articles. Actually a Casio VL-tone was my first synth (if you could call it that. At least it also had a calculator). It's kind of a long story, but two of us bought them primarily for their irritation value and they could certainly produce some of the most irritating buzzes you can imagine. BTW I found another CZ phase distortion patch while searching to see if anyone had done a CZ style envelope generator: http://forum.audulus.com/discussion/862

#### Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!