Interesting Paper available on Moog VCF
Don Tillman
don at till.com
Sat Sep 21 09:01:55 CEST 1996
Date: Thu, 19 Sep 1996 13:34:30 -0700
From: Tom May <ftom at netcom.com>
Any polynomial with a finite number of terms will produce a band
limited output when used as a transfer function. But the bandwidth of
the output will be N times the bandwidth of the input, where N is the
degree of the polynomial. That pretty much falls out of the sin^2(x)
= (1 - cos(2x))/2 type of identity when you keep applying it for each
degree of the polynomial. (Or am I making an analog gut feeling
mistake?)
Woah... I hadn't thought about this before, but yeah, this is
absolutely right. The exponential transfer function I proposed that
rendered an infinite number of harmonics was an example of an
*arbitrary* distortion curve. But if the curve is limited to an Nth
order polynomial, then yes, the aliasing will be limited to N times
the original signal's maximum frequency.
Date: Fri, 20 Sep 1996 10:38:39 +0300 (EET-DST)
From: Mikko Helin <MHELIN at tne01.tele.nokia.fi>
I think that this kind of aliasing distortion can be avoided by using
oversampling, which means that sampling rate is increased so that
aliasing occurs at higher frequencies, which are then filtered out
before D/A conversion or resampling to lower (original) sample rate.
Yes, this is standard way to implement it.
Date: Thu, 19 Sep 1996 15:01:27 -0400 (EDT)
From: Eli Brandt <eli at ux3.sp.cs.cmu.edu>
If we're stuck with infinite harmonics coming out of our waveshaping,
the conceptually simplest solution would be to supersample, waveshape,
lowpass, and subsample.
Just as above, yes. And yeah, it'll reduce the aliasing, but with
infinite harmonics you still have a good chance of the aliasing effect
being annoying.
This chain of operations might simplify, but probably not. I've
considered just doing all digital work at a multiple of audio rate,
and lowpassing whenever spurious harmonics are generated. This costs
you a constant factor everywhere, but avoids the expense of resampling
up and down all over the place.
Not really an issue; the resampling isn't especially costly.
Date: Fri, 20 Sep 1996 12:22:20 +0100 (CET)
From: "Erik Schuijers" <E.G.P.Schuijers at stud.tue.nl>
What technique many companies use these days is called sigma-delta
conversion.
I can't see how sigma-delta conversion would help here.
Date: Fri, 20 Sep 1996 13:15:51 -0400 (EDT)
From: Eli Brandt <eli at ux3.sp.cs.cmu.edu>
Take the case where we've got harmonic partials and they're all in
phase. So the input signal x(t) is a sum of cos(kt) terms, out to K.
Each term a_k cos(kt) can be expanded, using the Chebychev* T_n, to a
degree-k polynomial in cos(t). Waveshaping their sum with a degree-D
polynomial gives one of degree-KD. Then translate each cos^n(t) back
to a sum of cos(kt) terms, k<=n. So we have a sum of cos(kt) terms,
k<=KD.
Wow, I have no idea what you're talking about!
-- Don
More information about the Synth-diy
mailing list