gendyx
Variation of the dynamic stochastic approach to waveform synthesis conceived by Iannis Xenakis.
gendyx (gendy eXtended) is an implementation of the Génération Dynamique Stochastique (GENDYN), a dynamic stochastic approach to waveform synthesis conceived by Iannis Xenakis, using curves instead of segments.
Syntax
Initialization
initcps (optional, default=12) -- max number of control points.
Performance
kamp -- amplitude.
kampdist -- choice of probability distribution for the next perturbation of the amplitude of a control point. The valid distributions are:
- 0 - LINEAR
- 1 - CAUCHY
- 2 - LOGIST
- 3 - HYPERBCOS
- 4 - ARCSINE
- 5 - EXPON
- 6 - SINUS (external k-rate signal)
If kampdist=6, the user can use an external k-rate signal through kadpar.
kdurdist -- choice of distribution for the perturbation of the current inter control point duration. See kampdist for the valid distributions. If kdurdist=6, the user can use an external k-rate signal through kddpar.
kadpar -- parameter for the kampdist distribution. Should be in the range of 0.0001 to 1.
kddpar -- parameter for the kdurdist distribution. Should be in the range of 0.0001 to 1.
kminfreq -- minimum allowed frequency of oscillation.
kmaxfreq -- maximum allowed frequency of oscillation.
kampscl -- multiplier for the distribution's delta value for amplitude (1.0 is full range).
kdurscl -- multiplier for the distribution's delta value for duration.
kcurveup -- controls the curve for the increasing amplitudes between two points; it has to be non negative.
- 0: step function (like a sample & hold)
- <1: concave
- 1: linear (like gendy)
- >1: convex
kcurvedown -- controls the curve for the decreasing amplitudes between two points; it has to be non negative.
- 0: step function
- <1: convex
- 1: linear
- >1: concave
knum (optional, default=initcps) -- current number of utilized control points.
The waveform is generated by knum - 1 curves and is repeated in the time. The vertexes (control points) are moved according to a stochastic action and they are limited within the boundaries of a mirror formed by an amplitude barrier and a time barrier.
Examples
Here is an example of the gendyx opcode. It uses the file gendyx.csd.
Here is an example of the gendyx opcode with some modulations. It uses the file gendyx-2.csd.
References
- Formalized Music (1992, Stuyvesant, NY: Pendragon Press), pp. 246 - 254, 289 - 322.
See Also
Models and Emulations, gendyc, gendy
Credits
Variation of the Nick Collins's Gendy1 ugen (SuperCollider)
Author: Tito Latini
January 2012
New in Csound version 5.16