This version (20 Jun 2012 16:22) was approved by William Jahn.

Generic Gain Envelope

Click here to return to the ADI Algorithms page

The Generic Gain Envelope generates a fully-programmable envelope and applies it to an input signal.\\
There are two versions of the algorithm available:
Generic Gain Envelope Alg\\Generic Gain Envelope Alg EndlessLoop
GUI Control Icon

Input Pins

NameFormatFunction Description
Pin 0: Control Outputint-ControlSwitch used to activate envelope
Pin 1: Audio Inputdecimal-audioInput audio signal


NameFormatFunction Description
Pin 0: Control Inputdecimal-audioAudio output signal with gain envelope applied

GUI Controls

GUI Control Name Default Value Range Function Description
Maximum Time (ms) 1104 240 to 440 Controls the length of the gain envelope
Gain (dB)n/a-120 to 24Controls the gain of the corresponding point on the envelope
Time (ms)n/a0 to maxControls the time of the corresponding point on the envelope

DSP Parameter Information

GUI Name Compiler Name Function Description
n/aGenericGainEnvelopegainincrementtableControls the way that the output gain changes from point to point on the envelope
n/aGenericGainEnvelopestartgainControls the starting gain of the envelope
n/aGenericGainEnvelopegaintableStores the values that control the output gain of the algorithm

Algorithm Description

The Generic Gain Envelope algorithm has a fully programmable gain envelope. The envelope is accessible by clicking the cell’s icon.

The length of the envelope is controlled by the Maximum Time control, which is set in milliseconds.

Points on the curve can be moved by click-dragging. New points can be added by double-clicking. Points can be removed by right-clicking and selecting “remove point.” In this case, the point closest to the mouse cursor will be removed. The envelope must have at least 3 points. Point values can be fine-tuned using the text input boxes on the right side of the envelope control window.

When the control input goes to 1, the gain envelope begins. When the control input goes to 0, the gain envelope stops, regardless of whether the envelope has completed or not.

In the case of the Generic Gain Envelope Alg EndlessLoop algorithm, the envelope will loop continuously until the control input goes to 0.

The example below shows the algorithm’s input and output signals using the gain envelope shown above.


The following schematic image shows the Generic Gain Envelope cell being controlled by a 28.0 On/Off Switch and applied to a Sine Tone. The processed audio is output to a DAC. The schematic below uses the Switch, Generic Gain Envelope, Sine Tone, and Output cells.

Algorithm Details

Toolbox PathSources – Chime – Modulated Frequency and Gain
Cores Supported ADAU144x
“Grow Algorithm” Supportedyes - see Algorithm Growth Information
“Add Algorithm” Supportedno
Subroutine/Loop Basedno
Program RAM44*
Data RAM9*
Parameter RAM15*

*Numbers are based on one instance of the algorithm with no additional “add” or “grow”

Algorithm Growth Information

DescriptionAdds a new input pin and a new output pin
Program RAM Repetition2 per growth
Data RAM Repetition1 per growth
Parameter RAM Repetitionnone
resources/tools-software/sigmastudio/toolbox/adialgorithms/genericgainenvelope.txt · Last modified: 20 Jun 2012 16:22 by William Jahn