ADSR envelope generator
Name | Type | Opt | Description |
---|---|---|---|
ADSR-parameters (4 floats) | list | opt | Four float arguments specify the initial values for the attack, decay, sustain and release parameters. |
int | trigger/ADSR-parameters [int] |
Performs the same functions as | but with integer input.
float | trigger/ADSR-parameters [float] |
In left inlet: Like an adsr~ object triggered by a signal input, an int or float value triggers an envelope with the given amplitude. The envelope will sustain until a zero is input to trigger the release stage, or until another non-zero float retriggers the envelope. In second inlet: sets the envelope's attack time, in milliseconds. In third inlet: sets the envelope's decay time, in milliseconds. In fourth inlet: sets the envelope's sustain level, as a factor of the amplitude. For example, a value of 0.5 means the sustain level will be half of the amplitude height. In fifth inlet: sets the envelope's release time, in milliseconds. |
list | ADSR-parameters (4 floats) [list] |
In left inlet: A list of 4 floating-point numbers will assign the values for the attack, decay, sustain and release portions of the ADSR-envelope consecutively. |
anything | ADSR-parameters (4 floats) [list] |
In left inlet: Performs the same function as Any other inlet: A list may be used to specify time in one of the Max time formats. |
.
signal | In left inlet: Any non-zero value x will trigger an envelope with amplitude x. Like an adsr~ triggered by an input float, a zero value represents "note-off" and will begin the release stage. Unlike the event-triggered model, a signal-triggered adsr~ must receive a zero before it will retrigger. In second inlet: sets the envelope's attack time, in milliseconds. In third inlet: sets the envelope's decay time, in milliseconds. In fourth inlet: sets the envelope's sustain level, as a factor of the amplitude. For example, a value of 0.5 means the sustain level will be half of the amplitude height. In fifth inlet: sets the envelope's release time, in milliseconds. |
Name | Type | g/s | Description |
---|---|---|---|
attack | atom | Sets the attack of the ADSR-envelope in milliseconds. | |
decay | atom | Sets the decay of the ADSR-envelope in milliseconds. | |
legato | int | Given as input, the word | , followed by a 0 or a non-zero number, disables or enables legato mode. If legato mode is enabled, the envelope will not drop to zero in the event of a retrigger while the envelope is active - instead, the envelope ramps to the new amplitude over the attack period.|
maxsustain | float | Given as input, the word | , followed by a float, sets the maximum amount of time that the envelope will remain in the sustain stage. A negative number sets no maximum; the envelope will remain forever in the sustain stage until a note-off is received. To create a simple three-stage sustainless envelope (an ADR), you can use the message maxsustain 0.0.|
release | atom | Sets the release of the ADSR-envelope in milliseconds. | |
retrigger | float | Given as input, the word | , followed by a float, sets the amount of time taken to ramp down to zero in the event of a retrigger while the envelope is active (the default is 10 milliseconds). This ramping prevents clicking.|
sustain | float | Sets the sustain of the ADSR-envelope in milliseconds. |