Skip to content

Instantly share code, notes, and snippets.

@daveray
Created November 24, 2011 04:52
Show Gist options
  • Star 4 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save daveray/1390650 to your computer and use it in GitHub Desktop.
Save daveray/1390650 to your computer and use it in GitHub Desktop.
First chorus of Giant Steps solo by Overtone
; Final pre-processed "transcriptions" of several Coltrane "Giant Steps" solos
; are here: https://github.com/daveray/yardbird
; Please take the data and do something fun with it!
; TODO
; Incorporate changes
; Convert to concert pitch
; Convert to correct octave
(use 'overtone.live)
(definst beep [note 60 vol 0.5]
(let [freq (midicps note)
src (sin-osc freq)
env (env-gen (perc ) :action FREE)]
(* vol src env)))
(def first-chorus
["Ab2" "F2" "Db2" "Bb1" "E2" "F#2" "G#2" "B2"
"A2" "E2" "C#2" "G1" "D2" "Bb1" "Ab1" "G1" "F1"
"G1" "A1" "Bb1" "C2" "D2" "E2" "G2" "F#2" "D2"
"B1" "A1" "G#1" "F2" "E2" "D2" "C#2" "E2" "A2"
"C#3" "E2" "G2" "Bb2" "D3" "F2" "G2" "A2" "C3"
"Gb2" "Bb2" "C3" "Eb3" "C3" nil "Bb2" "Ab2"
nil nil nil nil "C3" "B2" "Bb2" "A2" "G2" "F2"
"E2" "D2" "C2" "Bb2" "A2" "E2" "G2" "F2" "E2"
"G2" "F#2" "D2" "B1" "F#1" "A1" "F#1" "G#1"
"F2" "E2" "D2" "C#2" "B1" "A1" "B1" "C#2"
"E2" "F2" "Eb2" "Db2" "C2" nil "Ab1" "Bb1"
"C2" "Db2" "Eb2" "F2" "Ab2" "C3" "B2" "Bb2"
"A2" "G2" nil nil nil "Bb2" "A2" "G2" "E2" "F2"
"G2" nil "C3" "F3" "C3" nil nil nil nil "C3" "Db3"
"C3" nil nil "Ab2"])
(let [t (+ 1000 (now))]
(doseq [[i n] (map-indexed vector (map note first-chorus))]
(when n (at (+ t (* 100 i)) (beep (+ 36 n))))))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment