July 2Jul 2 A sketch: I generate noise and define a list of intervals (or pitches) that is applied to the noise pitches. Whenever one of these intervals (or pitches) is detected, its dynamic is changed to fff. This creates a form of articulation that is determined by the intervallic structure.(setf intervals '(-2 -1 1 2 5 -5)) (setf seq (loop repeat 200 with alist = (filter-repeat 1 (vector-to-pitch '(a3 g5) (gen-noise 300))) with cnt = 0 when (memberp (car (pitch-to-interval (list (nth cnt alist) (nth (1+ cnt) alist)))) intervals) append (make-omn :pitch (list (nth cnt alist) (nth (1+ cnt) alist)) :length '(1/16 1/16) :velocity '(fff fff)) and do (incf cnt 1) else append (make-omn :pitch (list (nth cnt alist)) :length '(1/16) :velocity '(ppp)) do (incf cnt))) (omn-list-plot seq :join-points t)Bildschirmaufnahme 2026-07-02 um 21.06.57.mov
July 3Jul 3 Author Example with pitches (not intervals) (progn (setf pitches (make-scale 'c4 12)) (setf seq (loop repeat 300 with alist = (filter-repeat 1 (vector-to-pitch '(c4 c5) (gen-noise 400))) for cnt = 0 then (incf cnt) with cnt2 = 0 when (= (pitch-to-midi (nth cnt alist)) (pitch-to-midi (nth cnt2 pitches))) append (make-omn :pitch (list (nth cnt alist)) :length '(1/16) :velocity '(fff)) and do (incf cnt2) when (= cnt2 (length pitches)) do (setf cnt2 0) else append (make-omn :pitch (list (nth cnt alist)) :length '(1/16) :velocity '(p))))) (omn-list-plot seq :join-points t) Bildschirmaufnahme 2026-07-03 um 19.17.03.mov
Create an account or sign in to comment