;;; Continuing from my digest of my synth yesterday (check my phlog ..)
(setq *notes*
(loop for f in '(50 320 190 460)
for lf = (let ((n 0)) (lambda () (+ f (* 30 (sin (incf n 0.001))))))
for n = (synote (lambda () 1.5d0) lf (lambda () 0.2d0))
collect n))
(mp:process-run-function 'beeps-1
(lambda () (mapc 'funcall *notes*)))
(setq *notes-2*
(loop for f in '(50 320 190 460)
for lf = (let ((n 0)) (lambda () (+ f (incf n 0.001))))
for n = (synote (lambda () 1.5d0) lf (lambda () 0.2))
collect n))
(mp:process-run-function 'beeps-2
(lambda () (mapc 'funcall *notes-2*)))
(setq *granul*
(loop for x from -12 to 12
for f = (* 440 (expt 2 (/ x -12.0)))
for n = (note f f 0.1 0.1)
collect n))
(mp:process-run-function 'beeps-3
(lambda () (mapc 'funcall *granul*)
(mapc 'funcall (reverse *granul*))))
;; Something like this.
Response:
text/plain