[sdiy] harmonic generator & megaloopers
Grant Richter
grichter at asapnet.net
Thu Feb 28 17:31:10 CET 2002
>
> Now you lost me. What is a windowing function?
Here's how I understand it, maybe some of the math guru's can straighten me
out. A continuous time Fourier transform of a sine wave has a discrete peak
at one point as long a the sine wave goes from negative infinity to positive
infinity. If there is a discontinuity (the sine wave is not infinite in
duration), that discontinuity itself has harmonic content and the transform
is no longer a single discrete peak.
In the digital world, using sampled data, a non-windowed function shows
"bleeding" (rounding at the bottom) between the frequency bins of the
transform. By windowing the function (multiplying by another function that
changes the edges) we reduce bleeding in the frequency bins and make the
transform more "discrete" looking.
It seems something like that should also apply to a continuous time
transform. Changes in the shape of the discontinuity (edges of the window)
should appear in the output of the transform and change the short term
harmonic spectra.
The only time I have seen this mentioned is Electronotes #45 Page 21
"Transform methods in musical engineering" where Bernie talks about how the
Fourier series fails for gated sine waves. But he does not say what does
happens exactly, or why fading in a sine wave vs. gating it removes the
clicks mathematically.
> My new obsession is the Buchla 248. With a bigger one, you could have a
> synth with no other control modules. This one doing ALL the sequencing,
> enveloping (AD,AR,ADSR or multistage), LFOing and combinations of these.
Doctor Mabuse and I have been discussing this as part of the "Envelooper"
research. If you consider a sequencer as triggering an envelope on each
stage, then an envelope becomes a "microsequence" inside of the
"macrosequence" generated by the sequencer.
Up to this point, the envelope generator progression has been functioning
asynchronously with the sequencer. That is the ADSR states proceed as
dictated by the time settings, not the sequencer clock. We have built some
envelopes that use the least significant bits of the sequence counter and
used those to control the ADSR states. So the sequencer is also the envelope
generator for "synchronous" envelopes.
The MARF uses a PWM crossfade function to generate continuous lines from
discrete steps. Taking a very large counter, the LSBs can be used to
generate a ramp for controlling the PWM crossfade between levels. So a large
counter, DAC, comparators and CMOS logic could be used to generate the main
sequence, ADSR, and LFO all synchronously locked together. The ramp times
would adjust them selves automatically with the master clock.
More information about the Synth-diy
mailing list