lpshold
Generate control signal consisting of held segments.
The segments are delimited by two or more specified points. The entire envelope is looped at kfreq rate. Each parameter can be varied at k-rate.
Syntax
ksig lpshold kfreq, ktrig, iphase, kvalue0, ktime0 [, kvalue1] [, ktime1] \
[, kvalue2] [, ktime2] [...]
Performance
ksig -- Output signal
kfreq -- Repeat rate in Hz or fraction of Hz
ktrig -- If non-zero, retriggers the envelope from start (see trigger opcode), before the envelope cycle is completed.
iphase -- A vaue between 0 and 1 to say where to start the loop. Zero, the commonest value, indicates the beginning.
kvalue0...kvalueN -- Values of points
ktime0...ktimeN -- Times between points; expressed in fractions of a cycle (see below). The final time designates a ramp between the final value and the first value.
lpshold is similar to loopseg, but can generate only horizontal segments, i.e. holds values for each time interval placed between ktimeN and ktimeN+1. It can be useful, among other things, for melodic control, like old analog sequencers.
Examples
Here is an example of the lpshold opcode. It uses the file lpshold.csd.
See also
Linear and Exponential Generators
Credits
Author: Gabriel Maldonado
New in Version 4.13