hsc3-0.21: Help/Graph/jmcc-sample-and-hold-liquidities.hs
-- sample and hold liquidities (jmcc) #4
let r = mouseX kr 1 200 Exponential 0.1
t = recip r
c = impulse kr r 0 * 0.4
cf = mouseY kr 100 8000 Exponential 0.1
f = latch (whiteNoise kr * cf * 0.5 + cf) c
p = latch (whiteNoise kr) c
i = pan2 (sinOsc ar f 0 * decay2 c (t * 0.1) (t * 0.9)) p 1
in combN i 0.3 0.3 2
-- sample and hold liquidities (jmcc) #4 ; id
let r = mouseX kr 1 200 Exponential 0.1
t = recip r
c = impulse kr r 0 * 0.4
cf = mouseY kr 100 8000 Exponential 0.1
f = latch (whiteNoiseId 'α' kr * cf * 0.5 + cf) c
p = latch (whiteNoiseId 'β' kr) c
i = pan2 (sinOsc ar f 0 * decay2 c (t * 0.1) (t * 0.9)) p 1
in combN i 0.3 0.3 2
-- sample and hold liquidities (jmcc) #4 ; event control
let f (_,g,_,y,z,o,_,_,p,px,_) =
let env = decay2 (trig g controlDur * z * 2) (0.01 + y * 0.1) (0.5 + y * 0.4)
sig = pan2 (sinOsc ar (midiCps (p * 127 + px)) 0 * env) (o * 2 - 1) 1
in sig + combN sig 0.3 0.3 2
in mix (voicer 16 f) * control kr "gain" 1