[sdiy] Screwing with Square Waves

Tom Wiltshire tom at electricdruid.net
Mon Nov 4 00:10:12 CET 2013


On 3 Nov 2013, at 22:14, Mattias Rickardsson <mr at analogue.org> wrote:

> On 3 November 2013 11:12, cheater00 . <cheater00 at gmail.com> wrote:
>> On 3 Nov 2013 00:21, "Mattias Rickardsson" <mr at analogue.org> wrote:
>> 
>>> detuning two of them wouldn't give the flanging effect that we're used to,
>>> since the overtones aren't faded in/out in a specific order.
>> 
>> Why wouldn't they be? Flanging is perfectly well explained in the time
>> domain. It has a specific transfer function given by the amount of delay and
>> the feedback, and nothing more. The transfer function does not depend AT ALL
>> on the program pushed through it. A perfect flanger sounds the same on two
>> waveforms that sound the same. An analog flanger might sound very different.
> 
> I'm sorry - I wrote flanging, but was referring to adding two
> *differently* random-phased signals. Two signals with square-wave
> spectra, but with random phases on all the partials. And then flanging
> (in the most original meaning of the word) them against each other.
> That should sound quite different, right?
> It was after midnight and I should have gone to bed instead... :-)
> 
>>> Often it feels like we use synth waveforms near the limit where our
>>> hearing starts to sense the separate edges of the waveforms. In bass
>>> frequencies very much so. And I get the feeling that it can give a
>>> kind of listening fatigue, especially when hearing very dry synth
>>> sounds. Maybe the random-phase variants are the solution?
>> 
>> I think this is a great idea.
> 
> Does any synth use it?

There may be others, but I used it on my PIC VCDO, which appears in the Frequency Central Waverider module:

http://www.electricdruid.net/index.php?page=projects.vcdo
http://www.frequencycentral.co.uk/?page_id=845

<End of shameless plug>
This is basically a wavetable oscillator.
If you crossfade between waveforms where all the harmonics have the same phase, you get a linear result - a smooth crossfade. The typical wavetable oscillator has all the harmonic phases starting from zero, since it makes everything nice and predictable.
But that's a bit boring, or at least not as interesting as it could be. So before putting the waveforms into the data tables, I made sure to randomise their phases. This means that when you move through the wavetable, you get nonlinear results, where the amounts of each harmonic are *not* simply linearly interpolated from one waveform to the other. It's pretty subtle, but it's there. There are combinations between one and another waveform which are not a simple blend of the two endpoints - they might have all the third harmonic of the second waveform, but all the fourth of the first waveform, and a combination of the 7th of both, for example. Hiding stuff like that in my code is what I live for! One day I'll get a life, but for now, code will do.

Tom





More information about the Synth-diy mailing list