the description of the envelope break-points. Typically
you pass an instance of Env
which will then
automatically expand to the correct format.
triggers the envelope and holds it open while greater
than zero. If the envelope is of fixed duration (e.g.
Env.linen
, Env.perc
), the gate
argument is used
as a simple trigger. If it contains a sustained segment
(e.g. Env.adsr
, Env.asr
), the envelope is held
open until the gate becomes 0, at which point is
released. If gate
is less than zero, a release is
enforced with duration -1.0 - gate
.
amplitude factor with which the nominal envelope is multiplied.
amplitude offset which is added to the nominal envelope.
time scale factor with which the envelope segment durations are multiplied.
action to be performed when the envelope reaches its end point.
action to be performed when the envelope reaches its end point.
the description of the envelope break-points.
the description of the envelope break-points. Typically
you pass an instance of Env
which will then
automatically expand to the correct format.
triggers the envelope and holds it open while greater than zero.
triggers the envelope and holds it open while greater
than zero. If the envelope is of fixed duration (e.g.
Env.linen
, Env.perc
), the gate
argument is used
as a simple trigger. If it contains a sustained segment
(e.g. Env.adsr
, Env.asr
), the envelope is held
open until the gate becomes 0, at which point is
released. If gate
is less than zero, a release is
enforced with duration -1.0 - gate
.
amplitude offset which is added to the nominal envelope.
amplitude factor with which the nominal envelope is multiplied.
Abstract method which must be implemented by creating the actual UGen
s
during expansion.
time scale factor with which the envelope segment durations are multiplied.
An envelope generator UGen. It uses a break point description in its
envelope
input, typically coming from anEnv
object. The envelope may be re-triggered using thegate
input. Upon start and upon re-triggering, theenvelope
,levelScale
,levelBias
andtimeScale
parameters are polled and remain constant for the duration of the envelope.To construct a manual envelope without the use of the
Env
class, the format should be as follows:Where the curve-type is one of
Curve.step.id
,Curve.lin.id
,Curve.exp.id
, etc. The curvature values are only relevant for the parametric curve type. ThereleaseNode
andloopNode
parameters are segment indices or the special value-99
indicating that there are no release or loop segments.Note: The actual minimum duration of a segment is not zero, but one sample step for audio rate and one block for control rate. This may result in asynchronicity when in two envelopes of different number of levels, the envelope times add up to the same total duration. Similarly, when modulating times, the new time is only updated at the end of the current segment; this may lead to asynchronicity of two envelopes with modulated times.
the description of the envelope break-points. Typically you pass an instance of
Env
which will then automatically expand to the correct format.triggers the envelope and holds it open while greater than zero. If the envelope is of fixed duration (e.g.
Env.linen
,Env.perc
), thegate
argument is used as a simple trigger. If it contains a sustained segment (e.g.Env.adsr
,Env.asr
), the envelope is held open until the gate becomes 0, at which point is released. Ifgate
is less than zero, a release is enforced with duration-1.0 - gate
.amplitude factor with which the nominal envelope is multiplied.
amplitude offset which is added to the nominal envelope.
time scale factor with which the envelope segment durations are multiplied.
action to be performed when the envelope reaches its end point.
Decay
Linen
XLine
Line
IEnvGen
Env