BrianCope Posted January 21, 2016 Share Posted January 21, 2016 Hello I'm gradually getting to know the DO-TIMELINE function and wanted to ask about the 3 x DO-TIMELINE scripts inlcuded in the example. Which of the 3 is being read when we evaluate and notate? It's difficult to tell from the notation so is there a particular order that these are read in and what is the best way to switch between them without deleting them? (do-timeline '( afl nil cl (x - x - x - x - x - x -) bcl (- x - x - x - x - x - x) hn t vn (- x - x - x - x - x - x) vc (x - x - x - x - x - x -) ) '(pitch-variant x :variant '?) :time '1/1) (do-timeline '( afl (x - x - x x - - x - x - x - x - x x - - x - x -) cl (- x - x x - x - - x - x - x - x x - x - - x - x) bcl (x x - x x - x - - x - x x x - x x - x - - x - x) hn (x - x x - x - x x - x - x - x x - x - x x - x -) vn (- x x - x - x - - x - x - x x - x - x - - x - x) vc (- x x - x - x - - x - x - x x - x - x - - x - x) ) '(pitch-figurate '(2 3) x) :time '1/2) (do-timeline '( afl (binary-invert (gen-binary-euclidean 1 48 30 48)) cl (binary-invert (gen-binary-euclidean 1 48 30 48)) bcl (binary-invert (gen-binary-euclidean 1 48 30 48)) hn (binary-invert (gen-binary-euclidean 1 48 30 48)) vn (binary-invert (gen-binary-euclidean 1 48 30 48)) vc (binary-invert (gen-binary-euclidean 1 48 30 48)) ) '(gen-pause x) :time (rnd-sample 12 '(1/4 1/2)) :loop t) Many thanks Brian Quote Link to comment Share on other sites More sharing options...
opmo Posted January 21, 2016 Share Posted January 21, 2016 The DO-TIMELINE will read, process and then set back the result to the variable names. The next DO-TIMELINE is using the return of the previous one and so on. If you make any change to any of the sections you will need to evaluate all of them again, starting with the evaluation of the origin variable set you are using in the DO-TIMELINE function. Example After any change (edit) the first thing you need to do is to evaluate the original variable set: (setf afl afl-omn cl cl-omn bcl bcl-omn hn hn-omn vn vn-omn vc vc-omn ) then each of the DO-TIMELINE: (do-timeline '( afl nil cl (x - x - x - x - x - x -) bcl (- x - x - x - x - x - x) hn t vn (- x - x - x - x - x - x) vc (x - x - x - x - x - x -) ) '(pitch-variant x :variant '?) :time '1/1) (do-timeline '( afl (x - x - x x - - x - x - x - x - x x - - x - x -) cl (- x - x x - x - - x - x - x - x x - x - - x - x) bcl (x x - x x - x - - x - x x x - x x - x - - x - x) hn (x - x x - x - x x - x - x - x x - x - x x - x -) vn (- x x - x - x - - x - x - x x - x - x - - x - x) vc (- x x - x - x - - x - x - x x - x - x - - x - x) ) '(pitch-figurate '(2 3) x) :time '1/2) (do-timeline '( afl (binary-invert (gen-binary-euclidean 1 48 30 48)) cl (binary-invert (gen-binary-euclidean 1 48 30 48)) bcl (binary-invert (gen-binary-euclidean 1 48 30 48)) hn (binary-invert (gen-binary-euclidean 1 48 30 48)) vn (binary-invert (gen-binary-euclidean 1 48 30 48)) vc (binary-invert (gen-binary-euclidean 1 48 30 48)) ) '(gen-pause x) :time (rnd-sample 12 '(1/4 1/2)) :loop t) Quote Link to comment Share on other sites More sharing options...
BrianCope Posted January 21, 2016 Author Share Posted January 21, 2016 Thanks for the quick response. I didn't know that it evaluates more than one of the same function, great! Staying with this example (I'm still learning), how do I extend the number of bars? Thanks Brian Quote Link to comment Share on other sites More sharing options...
opmo Posted January 21, 2016 Share Posted January 21, 2016 The :resolution option sets the bar length (internally) for the process. The output is given in the original time signature. Each 'x represents one bar (original time signature) and if :resolution is used, each 'x is the length of the process of the given resolution value. Quote Link to comment Share on other sites More sharing options...
BrianCope Posted January 21, 2016 Author Share Posted January 21, 2016 this is what I have but still only have 12 bars (do-timeline '( afl nil cl (x - x - x - x - x - x - x x x x x x x x x x x x) bcl (- x - x - x - x - x - x - x - x x x x x x x x x) hn t vn (- x - x - x - x - x - x - x x - x x x x x x x x) vc (x - x - x - x - x - x - - - x x x x x x x x x x) ) '(pitch-variant x :variant '?) :time '1/1) (do-timeline '( afl (x - x - x x - - x - x - x - x - x x - - x - x -) cl (- x - x x - x - - x - x - x - x x - x - - x - x) bcl (x x - x x - x - - x - x x x - x x - x - - x - x) hn (x - x x - x - x x - x - x - x x - x - x x - x -) vn (- x x - x - x - - x - x - x x - x - x - - x - x) vc (- x x - x - x - - x - x - x x - x - x - - x - x) ) '(pitch-figurate '(2 3) x) :time '1/1) (do-timeline '( afl (binary-invert (gen-binary-euclidean 1 48 30 48)) cl (binary-invert (gen-binary-euclidean 1 48 30 48)) bcl (binary-invert (gen-binary-euclidean 1 48 30 48)) hn (binary-invert (gen-binary-euclidean 1 48 30 48)) vn (binary-invert (gen-binary-euclidean 1 48 30 48)) vc (binary-invert (gen-binary-euclidean 1 48 30 48)) ) '(gen-pause x) :time (rnd-sample 24 '(1/4 1/2)) Quote Link to comment Share on other sites More sharing options...
Stephane Boussuge Posted January 21, 2016 Share Posted January 21, 2016 Hi, may be your base material is 12 bars long ? S. Quote Link to comment Share on other sites More sharing options...
BrianCope Posted January 21, 2016 Author Share Posted January 21, 2016 On 21 January 2016 at 5:13 PM, Stephane Boussuge said: Hi, may be your base material is 12 bars long ? S. the base material is more or less the same as in the score example, I changed the library file and some of the numbers. I don't the system well enough yet which is why I'm trying to reconfigure some examples. B Quote Link to comment Share on other sites More sharing options...
opmo Posted January 21, 2016 Share Posted January 21, 2016 The original length span of each instrument will not change after the DO-TIMELINE process. If one of your instrument is 6 bar long (6 x 4/4) and the span of your section is bigger then the rest of the section will have no effect. Example: (setf inst '((q c4) (q c4) (q c4) (q c4) (q c4) (q c4) (q c4) (q c4))) (do-timeline '(inst (x - x - x - x - x x x x - x - x - x x x)) '(pitch-transpose -12 x)) inst => ((q c3) (q c4) (q c3) (q c4) (q c3) (q c4) (q c3) (q c4)) Quote Link to comment Share on other sites More sharing options...
BrianCope Posted January 21, 2016 Author Share Posted January 21, 2016 16 hours ago, opmo said: The original length span of each instrument will not change after the DO-TIMELINE process. If one of your instrument is 6 bar long (6 x 4/4) and the span of your section is bigger then the rest of the section will have no effect. Example: (setf inst '((q c4) (q c4) (q c4) (q c4) (q c4) (q c4) (q c4) (q c4))) (do-timeline '(inst (x - x - x - x - x x x x - x - x - x x x)) '(pitch-transpose -12 x)) inst => ((q c3) (q c4) (q c3) (q c4) (q c3) (q c4) (q c3) (q c4)) Thanks for your reply. So taking your score example from OM below, what would you need to change to double the length to 24 bars? Each of my partial-rows return 12 pitches each. Is this the problem? (setf partial1 (library 'tbn-cs3-frames 'partials 'p0)) (setf partial2 (library 'tbn-cs3-frames 'partials 'p1)) (setf partial3 (library 'tbn-cs3-frames 'partials 'p2)) (setf partial4 (library 'tbn-cs3-frames 'partials 'p3)) (setf partial5 (library 'tbn-cs3-frames 'partials 'p4)) (setf partial6 (library 'tbn-cs3-frames 'partials 'p5)) (setf row1 (partial-row partial1)) (setf row2 (partial-row partial2)) (setf row3 (partial-row partial3)) (setf row4 (partial-row partial4)) (setf row5 (partial-row partial5)) (setf row6 (partial-row partial6)) (setf rhy1 (gen-tuplet 1 2 'd '? (gen-repeat 48 '(q)) (rnd-sample 48 '(5 4 3)))) (setf rhy2 (gen-tuplet 1 2 'd '? (gen-repeat 48 '(q)) (rnd-sample 48 '(5 4 3)))) (setf rhy3 (gen-tuplet 1 2 'd '? (gen-repeat 48 '(q)) (rnd-sample 48 '(5 4 3)))) (setf rhy4 (gen-tuplet 1 2 'd '? (gen-repeat 48 '(q)) (rnd-sample 48 '(5 4)))) (setf rhy5 (gen-tuplet 1 4 'd '? (gen-repeat 24 '(h)) (rnd-sample 24 '(3 2)))) (setf rhy6 (gen-tuplet 1 4 'd '? (gen-repeat 24 '(h)) (rnd-sample 24 '(3 2)))) (setf vel (rnd-sample 24 '(pp p mp mf f))) (setf afl-omn (make-omn :length rhy1 :pitch row1 :velocity vel)) (setf cl-omn (make-omn :length rhy2 :pitch row2 :velocity vel)) (setf bcl-omn (make-omn :length rhy3 :pitch row3 :velocity vel)) (setf hn-omn (make-omn :length rhy4 :pitch row4 :velocity vel)) (setf vn-omn (make-omn :length rhy5 :pitch row5 :velocity vel)) (setf vc-omn (make-omn :length rhy6 :pitch row6 :velocity vel)) Quote Link to comment Share on other sites More sharing options...
opmo Posted January 22, 2016 Share Posted January 22, 2016 Yes, you need to extend the bar count to 24 x 4/4. (setf partial1 (library 'tbn-cs3-frames 'partials 'p0)) (setf partial2 (library 'tbn-cs3-frames 'partials 'p1)) (setf partial3 (library 'tbn-cs3-frames 'partials 'p2)) (setf partial4 (library 'tbn-cs3-frames 'partials 'p3)) (setf partial5 (library 'tbn-cs3-frames 'partials 'p4)) (setf partial6 (library 'tbn-cs3-frames 'partials 'p5)) (setf row1 (partial-row partial1)) (setf row2 (partial-row partial2)) (setf row3 (partial-row partial3)) (setf row4 (partial-row partial4)) (setf row5 (partial-row partial5)) (setf row6 (partial-row partial6)) (setf rhy1 (gen-tuplet 1 2 'd '? (gen-repeat 48 '(q)) (rnd-sample (* 4 24) '(5 4 3)))) (setf rhy2 (gen-tuplet 1 2 'd '? (gen-repeat 48 '(q)) (rnd-sample (* 4 24) '(5 4 3)))) (setf rhy3 (gen-tuplet 1 2 'd '? (gen-repeat 48 '(q)) (rnd-sample (* 4 24) '(5 4 3)))) (setf rhy4 (gen-tuplet 1 2 'd '? (gen-repeat 48 '(q)) (rnd-sample (* 4 24) '(5 4)))) (setf rhy5 (gen-tuplet 1 4 'd '? (gen-repeat 24 '(h)) (rnd-sample (* 2 24) '(3 2)))) (setf rhy6 (gen-tuplet 1 4 'd '? (gen-repeat 24 '(h)) (rnd-sample (* 2 24) '(3 2)))) (setf vel (rnd-sample 96 '(pp p mp mf f))) (setf afl-omn (make-omn :length rhy1 :pitch row1 :velocity vel)) (setf cl-omn (make-omn :length rhy2 :pitch row2 :velocity vel)) (setf bcl-omn (make-omn :length rhy3 :pitch row3 :velocity vel)) (setf hn-omn (make-omn :length rhy4 :pitch row4 :velocity vel)) (setf vn-omn (make-omn :length rhy5 :pitch row5 :velocity vel)) (setf vc-omn (make-omn :length rhy6 :pitch row6 :velocity vel)) Each row is looped here. You could continue processing and develop the rows further before you merge them to omn of course. Quote Link to comment Share on other sites More sharing options...
BrianCope Posted January 28, 2016 Author Share Posted January 28, 2016 Thanks for this. Nice easy fix. I'm having another difficulty with do-timeline when trying to do full orchestral score as in the example. All three DO-TIMELINE return this error message: 25 > > Error: The GET-SPAN output denominator is not a power of two (1, 2, 4, 8, 16, ...). Denominator: 12. > While executing: (:internal get-time-signature-l get-time-signature), in process Listener-1(7). > Type cmd-. to abort, cmd-\ for a list of available restarts. > Type :? for other options. Silly question I'm sure but where can I adjust the denominator? Thanks Brian Quote Link to comment Share on other sites More sharing options...
opmo Posted January 28, 2016 Share Posted January 28, 2016 Looks like you have some problems with lengths. I would need to see the score in order to help. You can send it to me by email if you wish. Quote Link to comment Share on other sites More sharing options...
BrianCope Posted February 4, 2016 Author Share Posted February 4, 2016 On 28/01/2016 at 5:55 PM, opmo said: Looks like you have some problems with lengths. I would need to see the score in order to help. You can send it to me by email if you wish. Hello I followed the directions in import-spectral-spear and created a new library low-c-frames.opmo Quote Link to comment Share on other sites More sharing options...
opmo Posted February 4, 2016 Share Posted February 4, 2016 Perfect, this is a library file. Now I will try your score and see why the oboe etc... is not displaying in notation score. I found an error in your layout. The alto flute layout is no closed (parenthesis missing). Quote Link to comment Share on other sites More sharing options...
BrianCope Posted February 4, 2016 Author Share Posted February 4, 2016 Thank you!! All working. :) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.