Envelope Generator

A circuit which generates a signal, usually meant to control a voltage controlled amplifier for the purpose of giving dynamic contour to a played note (in order words, providing a rise and fall of the volume of the note). A typical envelope generator produces a signal which, as seen on an oscilloscope, appears as a series of line segments. Controls are provided for setting the quickness or slowness of the rise or fall of the segments. The commonly found ADSR is one type of envelope generator. More advanced envelope generators provide more segments, allowing more complicated volume envelopes to be produced; the ultimate in this area can be seen in some of the newer soft synths which provide envelope generators with hundreds of segments. In addition to volume, the output of an envelope generator is often sent to a voltage controlled filter to produce a timbre contour, or mixed with the control voltage input to a voltage controlled oscillator to produce a frequency coutour.


When an acoustic musical instrument produces sound, the loudness and spectral content of the sound change over time in ways that vary from instrument to instrument. The “attack” and “decay” of a sound have a great effect on the instrument’s sonic character. Sound synthesis techniques often employ an envelope generator that controls a sound’s parameters at any point in its duration. Most often this is an “ADSR” (Attack Decay Sustain Release) envelope, which may be applied to overall amplitude control, filter frequency, etc. The envelope may be a discrete circuit or module, or implemented in software. The contour of an ADSR envelope is specified using four parameters:

  • Attack time is the time taken for initial run-up of level from nil to peak, beginning when the key is first pressed.
  • Decay time is the time taken for the subsequent run down from the attack level to the designated sustain level.
  • Sustain level is the level during the main sequence of the sound’s duration, until the key is released.
  • Release time is the time taken for the level to decay from the sustain level to zero after the key is released.

An early implementation of ADSR can be found on the Hammond Novachord in 1938 (which predates the first Moog synthesizer by over 25 years). A seven-position rotary knob set preset ADS parameter for all 72 notes; a footpedal controlled release time. The notion of ADSR was specified by Vladimir Ussachevsky (then head of the Columbia-Princeton Electronic Music Center) in 1965 while suggesting improvements for Bob Moog’s pioneering work on synthesizers, although the earlier notations of parameter were (T1, T2, Esus, T3), then these were simplified to current form (Attack time, Decay time, Sustain level, Release time) by ARP.