ODP: DCO's, Anti-Aliasing, and Filters
Harvey Devoe Thornburg
harv23 at leland.Stanford.EDU
Fri Dec 4 07:43:29 CET 1998
>
> I didn't express myself clearly.
> By reading sample faster I ment reading not every sample
> at constant sampling frequency, which gives higher pitch.
> It causes aliasing, although not always noticable, but we were
> arguing about it a while ago...
>
> Reading say, 256 sample waveform at variable sampling frequency
> and hooking up 1/50 frequency corner SC filter clocked
> with e.g. 16x wavetable address clock - yes, now I see it.
>
Hmm... There may still be confusion here the way you've stated things,
although it might just be my confusion. Anyway, if you are reading
the wavetable using a true analog variable clock, you will not get
aliasing in the way I had described, and almost never in a way that's
perceptible. Just make sure there are an integer number of samples per
period of the waveform. Then aliases fall upon existing harmonics,
minimizing audible distortion. If you want to maintain an odd
harmonic structure (like a square wave), then the number of
samples/period needs to be even. Otherwise you'd get some even
harmonics. You can think of these as due to aliasing, OR a slight
duty cycle error (both interpretations are correct).
When you run everything at a common sampling rate and change the pitch
continuously using DSP (by this I mean sample rate conversion), there's no
way to maintain integer relationships. Then you need to implement an
antialiasing filter, equivalent to sinc interpolation.
In summary, the effect of aliasing depends on your implementation.
So -- what exactly is your implementation?
--Harvey
More information about the Synth-diy
mailing list