Jump to content

Assembling Long Streams of generated material

Recommended Posts

Dear Friends,


I´m seriously doing a composition for String Quartet now. I was procastinating it for more than one year, but now I´m really finding good results that could be part of a composition.


The question is that I generate some VERY LONG (sometimes 200 bars) of material and, inside this stream I´d like to use ONE or TWO measures of this particular stream, and more 6 measures generated by other process, interpolate some Free material in between, and so on.


In general, this is the expression I use to compile each voice of the quartet: vh1 (VL), vh2 (VL2), vh3 (VLA) and vh4 (Cello)

(setf vh1 (make-omn
           :length rv1
           :pitch v1
           :span :pitch
           :velocity (length-map 
                      :otherwise '(mf) :repeat t)
           :articulation (length-map 
                          :otherwise '(ord) :repeat t)))


I do my hacks before this to transform things, but essentialy, I do my 4 make-omn expressions and, after that, I do a PS expression with my STR Quartet VST template using (list vh1 vh2 vh3 vh4). Sometimes I do one or more hacks inside the PS list like pitch-transpose, length-legato to make things more cantabile, length-diminution to vary durations, etc.




Is there some way to, after I assembled the list for my 4 voices, to pick specific bars or passages i like and reorder and make some assembling to other generated material ?


ONE PARTICULAR PROBLEM is that each draft means 4 streams of lists ( String quartet). I´m not wanting to mix bars 1-4  of the 1st violin with bars 123-127 of cello (altought this can be desirable...). I NEED TO TAKE ENTIRE EXCERPTS CONTAINING ALL THE 4 LISTS IN SYNC.


How to deal with this massive (to the eyesight) amount of data in LISP lists without getting loose ?


It´s not a simple (assemble-seq) operation (I´m aware of it), but some extracting favorite parts / specific bars, maybe setting (setf) this bars as new variables to finally use as assemble-seq in a further final compiling of a movement or a section.


I´m saving everything also as musescore files, but I´m avaoiding at all cost to make this manually. I´d like to test as much as possible my sections with this flexibility.


Any toughts are very appreciated !


Thank you !

All the best !


Link to comment
Share on other sites

Depends on what you want to do with the generated material.

Useful function:

unfold, omn-dictum, find-bar, position-item, position-replace, position-swap


Many functions allow you to edit selected bars:

:section (numbers)


(pprint-last-score) could help as well with bar numbers.

Enable 'Bar Number Display' in the Preferences/Notation

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