k y m a • t w e a k y — the kyma collective || view the current website || February 2015 Archive

/ WebHome / KymaManual / Learn.CapyTalkExpressions


Learn Section


All Sections


Login / Register 
Change password
Forgot password?

Symbolic Sound

Kyma Forum
Eighth Nerve

TWiki Links


CapyTalk Expressions

Expressions that have been added to Kyma since the publication of Kyma X Revealed

Access parameter envelopes of PSI files

You can send messages to .psi files to access their frequency, bandwidth, formant, and amplitude envelopes for use in any parameter field. For example:

'houseBass02.psi' amplitudeEnvelopeWithTimeIndex: (1 repeatingFullRamp: 'houseBass02.psi' sampleFileDuration)

'houseBass02.psi' frequencyEnvelopeWithTimeIndex: (1 repeatingFullRamp: 'houseBass02.psi' sampleFileDuration)

'houseBass02.psi' formantEnvelopeWithTimeIndex: (1 repeatingFullRamp: 'houseBass02.psi' sampleFileDuration)

'houseBass02.psi' bandwidthEnvelopeWithTimeIndex: (1 repeatingFullRamp: 'houseBass02.psi' sampleFileDuration)

Random trigger expressions

Random trigger expressions (generate 1 ms positive triggers at random time intervals. First argument is the average or starting time interval between triggers. The receiver can be either a gate (event value) or a constant (1 for always ON). When the gate is turned off and back on again, a trigger is emitted and all argument values are resampled. Minimum time interval is 2 ms. Maximum time interval is twice the average for the symmetric distributions or 24 * natural log of 2 * average for the exponential distribution).
Message Description Example Value
brownianTrigger: Generates triggers at time intervals determined by a random walk starting from the argument !sw01 brownianTrigger: !StartDur s starts at !StartDur and deviates from there
brownianTriggerStart:deviation: Deviation is the maximum change on each step !sw01 brownianTriggerStart: !StartDur s deviation: !Dev s starts at !StartDur with random step size of +/- !Dev s
normalTrigger: Generates triggers at time intervals drawn from a normal distribution centered around the argument !sw01 normalTrigger: !NormDur s !NormDur is the normal duration so most time intervals between triggers will be close to normal
normalTriggerCenter:deviation: Deviation is maximum change on each step !sw01 normalTriggerCenter: !NormDur s deviation: !Dev s time intervals within +/- !Dev s of !NormDur, most of them close to !NormDur
randExpTrigger: Generates triggers at time intervals drawn from an exponential distribution !sw01 randExpTrigger: !AveDur s half of the time intervals are less than !AveDur and half are between !AveDur and (24 * {2 ln} * !AveDur )
randomTrigger: Generates triggers at time intervals drawn from a uniform distribution !sw01 randomTrigger: !AveDur s random deviations around the average time interval !AveDur s
randomTriggerCenter:deviation: Center is the average value, deviation is the maximum change on each step !sw01 randomTriggerCenter: !AveDur s deviation: !Dev s random deviations +/- !Dev s around the average !AveDur s

Other CapyTalk expressions

Message Description Example Value
alignWith: Delays the rcvr trigger to align with the argument trigger !KeyDown alignWith: (1 bpm: !BPM) delays incoming !KeyDown to align with next beat
ceiling the nearest integer that is greater than rcvr 6.1 ceiling, -6.7 ceiling 7, -6
floor the nearest integer that is less than rcvr 3.9 floor, -3.1 floor 3, -4
hasChangedInLast: true when rcvr has changed in the interval of time given by the argument !Fader hasChangedInLast: 5 s true (1) if you have moved !Fader in last 5 s. After that, becomes false
setReset: an SR flipflop is true (1) when rcvr is true and false (0) when argument is true (1) !s setReset: !r true when !s is true, false when !r is true
suffix3: appends a number (the argument) with 3, 4, or more leading zeroes !Fader suffix4: 7 !Fader00007
switchedOn trigger on rising edge of rcvr !Gate switchedOn 1 ms long trigger when !Gate was a 0 and becomes a 1
switchedOff trigger on falling edge of rcvr !Gate switchedOff 1 ms long trigger when !Gate was a 1 and becomes a 0
tick Generates a gate (50% duty cycle) once per time interval given in rcvr 0.1 s tick generates a gate once every 0.1 seconds

© 2003-2014 by the contributing authors. / You are TWikiGuest