expsegb
Trace a series of exponential segments between specified absolute points.
Syntax
Initialization
ia -- starting value. Zero is illegal for exponentials.
ib, ic, etc. -- value at tim1 seconds, etc. For exponentials, must be non-zero and must agree in sign with ia.
itim1 -- time in seconds at the end of the first segment. A zero or negative value skips initialization, preserving the current curve during reinitialization.
itim2, itim3, etc. -- times in seconds at the ends of later segments. Times must not decrease.
Performance
Each time gives an endpoint's position in seconds from the start of the envelope. Each time rounds to the nearest control period for kres and the nearest sample for ares. The magnitude changes by a constant factor between points. All points must be non-zero and have the same sign; negative points are allowed.
If several points round to the same update, the output jumps to the last value at that update. If the note continues past the final time, the final segment keeps the same exponential rate. When the final two points share an update, the output holds the final value.
Examples
Here is an example of the expsegb opcode. It uses the file expsegb.csd.
See also
Linear and Exponential Generators
Credits
Author: Victor Lazzarini
June 2011
New in version 5.14