;;; ;;; Chord templates in the second algorithm are linked to a bass line two ;;; octaves lower in the first algorithm using the linked-to option for ;;; interval streams. Written by Klaus Kessner. ;;; (in-package :cm) (in-syntax :midi) (merge mode () (algorithm bass midi-note (end 30 amplitude 0.8) (setf note (item (notes e1 f g a b c2 d in random named 'bass-line))) (setf rhythm (item (rhythms h.. h e in random))) (setf duration rhythm)) (algorithm chords midi-note (start 3 end 30 amplitude 0.4) (setf note (item (intervals [28 31 35 36] [29 33 36 38] [28 31 35 38] [29 33 36 40] [29 31 35 38] [31 33 36 40] [29 33 35 38] in heap linked-to #@bass-line))) (setf rhythm (item (rhythms (q max 3) (e max 2) (s max 1) (32 weight .5 max 1) in random))) (setf duration rhythm)))