2022-08-24 13:53:18 +00:00
|
|
|
#lang scribble/manual
|
|
|
|
@(require (for-label racket))
|
|
|
|
|
|
|
|
@title{(pv-rand-comb buffer wipe trig)}
|
|
|
|
|
2022-08-28 10:27:01 +00:00
|
|
|
|
2022-08-24 13:53:18 +00:00
|
|
|
randomly clear bins.
|
|
|
|
|
|
|
|
buffer = fft buffer. wipe = clear bins from input in a random
|
|
|
|
order (0, 1). trig = select new random ordering.
|
|
|
|
|
2022-08-28 10:27:01 +00:00
|
|
|
|
|
|
|
@racketblock[
|
2022-08-24 13:53:18 +00:00
|
|
|
(with-sc3
|
|
|
|
(lambda (fd)
|
|
|
|
(async fd (b-alloc 10 2048 1))))
|
2022-08-28 10:27:01 +00:00
|
|
|
]
|
2022-08-24 13:53:18 +00:00
|
|
|
|
2022-08-28 10:27:01 +00:00
|
|
|
|
|
|
|
@racketblock[
|
2022-08-24 13:53:18 +00:00
|
|
|
(let ((dup (lambda (a) (mce2 a a)))
|
|
|
|
(n (mul (white-noise ar) 0.5))
|
|
|
|
(x (mouse-x kr 0.6 0.95 0 0.1))
|
|
|
|
(t (impulse kr 0.4 0)))
|
|
|
|
(audition (out 0 (dup (ifft* (pv-rand-comb (fft* 10 n) x t))))))
|
2022-08-28 10:27:01 +00:00
|
|
|
]
|
|
|
|
|
2022-08-24 13:53:18 +00:00
|
|
|
|