XO Wave
Editions (Why Buy?)
Songs 4 Bugs
  XO Wave Tutorials
  Recording Basics
    Envelope Generator
  Tech Notes
  README files
  Search Documentation
Contacting Us
  Mailing Lists
format for printing

Important Notice: XO Wave is now discontinued as we prepare to bring you the next generation Digital Audio Workstation called Xonami. This site remains available for anyone who purchased XO Wave in the past. However, please keep in mind that as discontinued software:

  • This site may not contain up-to-date information.
  • Technical support is discontinued, though we will do our best to continue to provide email support, especially to anyone who purchased recently.

XO Wave: Envelope Generator

The Envelope Generator is one of the most powerful effects in XO Wave. Though it does nothing by itself, it can be used in conjunction with other effects to create a dizzying array of dynamically controlled effects, such as compression, ducking, noise-gating, auto-wah, and virtually anything else your imagination can come up with.

The Envelope Generator works in three steps: first, it creates an 'envelope', which is a signal that follows the dynamics of the audio; second, it scales the envelope to a range appropriate for a parameter in another effect (the "target" parameter); and, finally, it assigns the scaled envelope to the target parameter. The target parameter can be virtually any automated parameter from any of XO Wave's built-in effects. For example, you may assign the target parameter to a volume control on another track for "ducking", or you might assign it to the frequency control of an EQ for a cool auto-wah effect. Since the Envelope Generator can target so many different parameters, its potential is almost unlimited. For example, you can use it in conjunction with the noise generator to create randomized effects, or with the pitch shifter to create a dynamic chorus effect.

We'll start by explaining what an envelope is, and then jump right into the most common application of the Envelope Generator: ducking. After that we'll describe the details of how the Envelope Generator works and, finally, give some suggestions for other applications.


An audio signal (a sampled kick drum) in blue and one possible envelope for that signal in magenta.

An envelope is a signal representing the dynamics of another signal. That is, the envelope gets larger when the original signal gets louder, and smaller when the original signal gets quieter. While an envelope does capture the dynamics of the original signal, it changes too slowly to to capture the nuance. For example, an envelope generally lacks the frequency and harmonic content of the original signal.

One way to think of an envelope is to think of the shape of a carpet, if it were thrown over the audio waveform -- the shape is captured, but the detail is lost.



The classic example of ducking is a wedding DJ who plays music and makes announcements, but wants the announcements to be very clear without having to stop the music. The DJ could manually turn down the volume of the music, or wait for lulls in the music, but even for the best DJ this can be a challenge -- especially if they're not at their mixer when they are making announcements. The solution is to automatically reduce the music volume whenever the DJ is speaking. To do so, the DJ might use an automatic ducking feature on the mixer or another piece of gear, or they might use the side-chain of their compressor. Similarly, a podcaster using XO Wave could program the automation to reduce the volume of the music whenever they speak, but it's much easier to use the Envelope Generator. Here's how (we'll explain how it works in the next section):

  • Create a new session and create two tracks, one for music and one for speech. Import some music and put it on the music track. Record some speech onto the speech track.
  • Add an Envelope Generator effect to the speech track. Adjust the input threshold while playing back until the yellow signal detection LEDs start to flicker whenever there is speech. For the most effective ducking, there shouldn't be any yellow LEDs lit when there is no speech. You'll also want the red LED to be illuminated fairly often, but not all the time. This can be done by adjusting the Input Window Size parameter.
  • Now, click on Select Target Effect and Parameter and, in the pop-up menu, select the Volume control on the music track. (The menu shows all tracks, then all effects, then all available parameters)
  • Finally, bring the Output Maximum control down. As you do so, you will notice that the volume of music goes down when there is speech, but remains unaffected when there is no speech.
Envelope Generator Signal Path

So What's Going on?

In a nutshell, you are using the Envelope Generator to create a control signal and applying that signal to a parameter. The diagram at the right shows this process in some detail. At each step, you can control the process with the controls on the Envelope Generator.

  • Envelope Generator: First, an envelope is generated from the audio waveform. The shape of the envelope can be fine-tuned using the channel source, attack, and release settings.
    • Channel Source: The Channel Source allows you to select which channel the envelope is generated from. For example, you can have the Envelope Generator ignore the left signal and only use the right. You can also have it use the average of the signals, or the peak signal (the default).
    • Attack and Release: The Attack and Release controls determine how quickly the Envelope Generator responds to changes in the signal. For example, if you want the Envelope Generator to respond to short bursts of sound, use a fast attack; if not, use a slow attack. If you want the envelope to drop shortly after the signal drops, use a fast release; otherwise, use a slow release.
  • Signal Detection: Once the envelope is generated, the Envelope Generator needs to be able to distinguish between signal and silence.
    • Input Threshold determines the minimum signal level that will affect the target parameter. Signal levels below the minimum will be treated as if they were at the minimum.
    • Input Window Size determines the range of signal that will be translated into changes in the target parameter. Signal levels above the window will all be treated as if they were at the top of the window.
    • Signal Detection LEDs help you adjust the other settings to produce the desired envelope. When only the red LED is lit, The signal is below the threshold. When the green LED is lit, the signal is above the window. Yellow LEDs indicate that the signal is inside the window.
  • Scaling: The scaling controls allow you to set the range of values for the target parameter to take on.
    • Output Minimum: This is the value of the target parameter when the signal is below the threshold.
    • Output Maximum: This is the value of the target parameter when the signal is above the window.
    While the signal is above the threshold, but below the top of the window, it will vary continuously between the output minimum and the output maximum. Note that the output maximum may be less than the output minimum -- that just means the parameter values will go down instead of up when the signal gets stronger.

Auto-Wah and Other Custom, Dynamically Controlled Effects

The key to the Envelope Generator's power and flexibility is the fact that it can control so many different parameters. For example, you could control the 'wet' or 'dry' level on a reverb of one track using an Envelope Generator on another track. This setup could be used to add a little wash of reverb to the vocals every time the snare drum hits, or to increase the compression level of the vocals when the guitar is playing, to help it cut through the mix. The possibilities are endless, but we'll just give one more example: creating an auto-wah. An "auto-wah" is like a wah-wah pedal except it automatically responds to your playing.

To create an auto-wah in XO Wave, you'll need a track with a bass, guitar or similar instrument recorded on it. Add an Envelope Generator followed by a Butterworth Filter effect, as shown on the right. Set the filter type to Boost/Cut, and set the level very high. Then, assign the Envelope Generator's target to the frequency parameter of the filter. The center frequency is now controlled by the dynamics of the instruments. After a little tweaking, you'll have a great sounding auto-wah.


One thing you might notice if you are playing around with the Envelope Generator is that sometimes there is a delay getting the signal to the target parameter. Depending on where the effects are in the tracks, the delay is either zero, or equal to the current Samples Per Buffer setting in the Hardware Settings window. For example, if you set Samples Per Buffer to 256, there may be a delay of 256 samples (about 6ms at 44.1kHz) between your Envelope Generator and the effect you are trying to alter. Unless your attack and release settings are very fast, you will probably not notice this delay, even at relatively large Samples Per Buffer settings.

Legal & Copyright This page was last modified November 2006.
© XO Audio 2005-2008.
All rights reserved.