[sdiy] [synth-diy] numerically controlled superoscillator without hard sync

rsdio at sounds.wa.com rsdio at sounds.wa.com
Thu Feb 13 03:36:42 CET 2014


On Feb 9, 2014, at 13:55, Tom Wiltshire wrote:
>> The problem with PWM is that it's even worse than a square wave.
>
> For the purposes of what Damian is talking about, it doesn't make  
> any difference. He's got a waveform look-up table into which you  
> can put an arbitrary waveform.
My point was that arbitrary waveforms can produce aliasing, and PWM  
creates more varying aliases that I consider worse than the fixed  
aliases of a static square wave.


>> The problem I describe assumes you're generating samples and  
>> sending them to a DAC at some sample rate (it doesn't really  
>> matter whether the sample rate is fixed or variable).
>
> Not true. It matters a good deal.
That was poorly worded on my part. When I said that it doesn't  
matter, I meant that sampled audio can produce aliases if you're not  
careful, whereas the PWM output of a CPU is not sampled, and thus  
wouldn't really have aliasing (discrete frequency availability, but  
not aliasing).


> If the sample rate is a multiple of the output frequency, then any  
> aliasing *has to* be harmonically related to the output frequency.  
> To alter the output frequency, you alter the sample rate, not the  
> number of samples you read out - your waveform starts of with   
> (say) 256 samples, and it still has 256 samples when it's up at  
> 10KHz, not the dozen samples (if we're lucky) we usually get if  
> we've got a fixed sample rate.
I suppose that if you don't want perfect, then these harmonically- 
related aliases are not as bad as inharmonic aliases. But neither is  
as good as no aliasing at all, right?


> Obviously it is possible to put non-bandlimited data into the  
> waveform table (a simple incrementing count as a ramp wave will do  
> it..) and this *will* produce aliasing - but that aliasing will all  
> be harmonically related, so the effect is of waveform distortion  
> rather than "aliasing" as usually understood. It's simply as if you  
> put a slightly different set of data into the table from what's  
> really there. Te important bit is you *don't* get the "unrelated  
> frequencies coming down as pitch slides up" effect which is so  
> obvious with digital aliasing.

I've been too focused on analysis of A/D data, where I need to  
distinguish between a fundamental frequency that I've generated on  
purpose, versus an alias of some other harmonically-related frequency  
that might give a false indication. Even when all of the generated  
frequencies are multiples of the sample rate, it still presents a  
problem if you don't know signal from alias/noise. In this thread, of  
course, we're talking only of synthesis, but there is still some  
analysis done by the human ear. I guess it depends upon whether the  
aliasing is objectionable or usefully interesting.

Brian Willoughby
Sound Consulting




More information about the Synth-diy mailing list