Jump to content

Recommended Posts

I can't seem to get do-timeline2 function to work. I include an abridged example below; happy to share more code details if necessary. I'd like to filter 64 measures of 4/4 as defined in the timeline.

 

Would anyone be able to offer some feedback? I tried adjusting different 'list' levels, etc. but with no avail. Thank you!

 

(setf chords1 '(e2b2g3d4 e2cs3a3e4 e2d3b3fs4))
(setf chords2 (pitch-transpose 3 chords1))

(setf chorale1-chords (span '(1 1 1 1 1 1 1 1) chords1))
(setf chorale2-chords (span '(1 1 1 1 1 1 1 1) chords2))

                       
;; OMNS
(setf chorale1 (make-omn
                :length (length-span '(1 1 1 1 1 1 1 1) '(w) :omn t)
                :pitch chorale1-chords))

(setf chorale2 (make-omn
                :length (length-span '(1 1 1 1 1 1 1 1) '(w) :omn t)
                :pitch chorale2-chords))


;; CHORALE RESERVOIRES
(setf chorales-reservoir (list chorale1 chorale2))
(setf chorales-map (vector-map chorales-reservoir '(0 4 7 12 16 7 12 16)))


;; TIMELINE
(setf chorales-timeline '((1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0)))

(do-timeline2
 '(chorales-map)
 chorales-timeline
 '(gen-pause x))

 

 

Link to comment
Share on other sites

Check the examples in the doc.

 

(do-timeline2
'(afl cl bcl hn vn vc)
'((1 0 1 0 1 1 0 0 1 0 1 0 1 0 1 0 1 1 0 0 1 0 1 0)
   (0 1 0 1 1 0 1 0 0 1 0 1 0 1 0 1 1 0 1 0 0 1 0 1)
   (1 1 0 1 1 0 1 0 0 1 0 1 1 1 0 1 1 0 1 0 0 1 0 1)
   (1 0 1 1 0 1 0 1 1 0 1 0 1 0 1 1 0 1 0 1 1 0 1 0)
   (0 1 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1)
   (0 1 1 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1))
'(gen-pause x) :time '(q h) :loop t)

 

For one voice I would simply use gen-pause function.

Link to comment
Share on other sites

list of lists:

(setf chorales-reservoir (list chorale1 chorale2))

 

solution:

(setf chorales-reservoir (append chorale1 chorale2))

 

or:

(setf chorales-reservoir (list chorale1 chorale2))
(setf chorales-map (assemble-seq (vector-map chorales-reservoir '(0 4 7 12 16 7 12 16))))

 

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.

Guest
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