Jump to content

conforming algortihmically-generated pitches to a harmonic progression

Recommended Posts

I'm wondering if a series of pitches generated by white noise could be made to conform to a scale or harmonic progression in a scale such as (setf chords (harmonic-progression prog.prep '(d4 messiaen-mode5))). 


That is - if I have several parts generated algortihmically, can I conform those notes using a second function that will conform them to a harmonic progression?






Link to comment
Share on other sites

Hi Tom,


you need to use tonality-map for that, one example:


;; first, generationg the white noise

(setf noise (gen-white-noise 256))
(setf pitches (vector-to-pitch '(c3 c5) noise))

;; now dividing the pitch list into some sublist
;; for applying the tonality mapping

(setf pitches-div (gen-divide '(16 8 12 24) pitches))

;; generating the harmonic progression
;; but for be able to map on pitch lists, you need to put
;; every chords into a list using mclist function (mapcar list)
(setf hprog (mclist
              (rnd 24 :low 6 :high 12)
              '(d4 messiaen-mode5)
              :size 4

;; apply (map) the harmonic-progression to the lists of pitches

(setf mapped-pitches (tonality-map hprog pitches-div))


Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...

Important Information

Terms of Use Privacy Policy