21 lines
858 B
Scheme
21 lines
858 B
Scheme
|
;; (phasor trig rate start end resetpos)
|
||
|
|
||
|
;; triggered linear ramp between two levels. Starts a linear ramp
|
||
|
;; when trig input crosses from non-positive to positive.
|
||
|
|
||
|
;; trig - sets phase to resetPos (default: 0, equivalent to start)
|
||
|
;; rate - rate value in 1 / frameDur (at 44.1 kHz sample rate: rate
|
||
|
;; 1 is eqivalent to 44100/sec)
|
||
|
;; start, end - start and end points of ramp
|
||
|
;; resetPos - determines where to jump to on recieving a trigger. the
|
||
|
;; value at that position can be calculated as follows:
|
||
|
;; (end - start) * resetPos
|
||
|
|
||
|
;; phasor controls sine frequency: end frequency matches a second sine wave.
|
||
|
|
||
|
(let* ((r (mouse-x kr 0.2 2 1 0.1))
|
||
|
(t (impulse ar r 0))
|
||
|
(x (phasor ar t (fdiv r sample-rate) 0 1 0))
|
||
|
(f (mce2 (lin-lin x 0 1 600 1000) 1000)))
|
||
|
(audition (out 0 (mul (sin-osc ar f 0) 0.2))))
|