Envelope generator UGen with random access index pointer into the break-point function.
'''Warning''': The envelope must be generated using IEnv
not Env
. IEnv
has a completely different format. Using the wrong format ( Env
) may crash
the server.
To construct a manual envelope without the use of the IEnv
class, the format
should be as follows:
val env = Seq[GE](offset, startLevel, numSegments, totalDuration,
duration1, curveType1, curvature1, targetLevel1,
duration2, curveType2, curvature2, targetLevel2
...)
===Examples===
// mouse controls index
play {
import Curve._
val env = IEnv(0, Seq(
(0.10, 0.6, lin),
(0.02, 0.3, exp),
(0.40, 1.0, parametric(-6)),
(1.10, 0.0, sine)))
val dur = Mix(env.segments.map(_.dur))
val gen = IEnvGen.kr(env, MouseX.kr(0, dur))
SinOsc.ar(gen * 500 + 440) * 0.2
}
- See also
- Companion
- class
Type members
Value members
Concrete methods
- Value Params
- envelope
the description of the envelope break-points. Typically you pass an instance of
IEnv
which will then automatically expand to the correct format.- index
index point into the envelope, given as time in seconds