adsr and lfo abolish

Sean Costello costello at seanet.com
Thu Apr 8 08:49:04 CEST 1999


Martin Czech wrote:

> Modulation modules like adsr and lfo etc. tend to make our music
> boring, because of the simplicty and robotic behaviour of these
> modules, compared to a 12 violin string section eg.
> They can do slow/fast attack all kinds pf vibrato etc. etc.

Well, a 12 violin section sounds the way it does because there are 12
violins, and 12 violinists.  Each violin will have its own tuning and
phase characteristics; each violinist will have their own distinctive
vibrato style, and their own preferred vibrato rate.  Even if you could
synthesize the combined modulation signal of 12 violinists - and you
can't - applying this signal to any single source will not produce the
sound of 12 instrumentalists playing at once. It will sound like a
single source being modulated by some weird noise source, and will just
sound noisy.  To get the sound of multiple instruments, you really need
multiple sound sources (oscillators, phase shift lines, delay lines,
filters, etc.) each being modulated by an independent modulation source. 
 
> Do I need adsr and lfo modules ?

Not necessarily.
  
> Wouldn't it be better to take these modulation voltages from
> a DAC/computer arrangement. Is Midi ready to handle this
> amount of data? At the requiered speed? 7-bit only?

At this point in time, a full-powered software synthesis language like
Csound is hard pressed to generate such modulation voltages, let alone
transfering them via MIDI.  

The processes that generate "human" sounds are not terribly well
understood, or modelled, at this point. Early attempts used various
random number generators (i.e. white noise, pink noise, red noise, black
noise or whatever low frequency random processes are called) to try to
simulate vibratos, breath sounds, etc. They don't work that well.
Randomness doesn't sound particularly human, it just sounds kinda weird.
Combining randomness at a few different rates with a periodic source
produces better effects, but it is still not very "human" sounding.

The more successful attempts at modelling "human" sounds seem to be
using various non-linear processes: chaotic equations, nonlinear
feedback, strange attractors, other various buzzwords. Some of these,
like chaotic equations, lend themselves well to digital implementation;
however, most nonlinearities are difficult to implement in the digital
realm, due to various digital artifacts (coefficient roundoff, aliasing,
clipping, etc.). 

Quite frankly, the best digital music I have heard uses recordings of
real-world sounds as a starting point. Even if the sound being used is
only the frequencies and amplitudes of two bins from a phase vocoder
analysis of a bagpipe recording, transposed down to 1/10th of original
frequency and used to control two sine wave oscillators, the result is a
sound that has a complexity that just can't be reproduced by standard
random processes, or any other current modulation techniques.

Possible solutions:

1) Abandon the ADSR and LFO. Instead, use circuits that generate more
"natural" responses.  For the envelope, try running the trigger pulse
through various ringing filters, that are then smoothed out by an
envelope follower.  For the LFO, come up with a chaotic oscillator
design that works for very low frequencies.  Nonlinearities and feedback
are the key here. It may not sound human, but it will probably sound way
cool. Take the quirkiness of various much loved circuits (the distortion
of the Moog filter, the weird accent of the 303) and amplify them. More
quirks! 

2) Come up with modulation controls that are totally human controlled.
Ribbon controllers, pressure sensors, breath sensors, whatever. The
vibrato generated will sound human, because it will be a human
generating it. Attacks and decays will be totally dependent on the
physical actions applied to the device. The resulting instrument may be
hard to control. Of course, a violin isn't exactly easy to play, either.

A combination of the above two ideas might be nice. For example, the VCA
of a synth (or filter or whatever) is controlled by the following
circuit: a piezo disk, running through several filters in series,
clipping circuits, and finally a rectifier and lowpass filter. By
controlling the gain, resonance, and frequencies of the various filters
and clipping circuits, and by tapping on the piezo disk with various
pressures, a variety of interesting responses could be generated.
Perhaps the piezo element could be under a rectangular ribbon-type
controller, where the left/right dimension controls pitch, the up-down
dimension controls timbre, and pressure controls something else.

Just a few ideas. Hope they are useful.

Sean Costello



More information about the Synth-diy mailing list