julio d'escrivan Posted March 15, 2016 Posted March 15, 2016 Hi J, I am trying to arpeggiate some chords put together algorithmically, I am following the example document for arpeggios, no2. And adding arp at the articulation keyword for make-omn, but I get an error, so I am wondering if it is just not possible to arpeggiate chords that are changing in the amount of sustain the notes have? (what you call 'duration' in OM language)). My basic premise is that I cannot change the original rhythmic positions of the coreCall set below, yet I want to create different orderings with different octaves and make them sound more legato: see here: ;;identified the core call notes to use as material for chords (setf coreCall '(-h_q_3s t_3s^s gb5 mp 23/640^23/384 db6 mf 5q^25/384 f6 t..^149/1920 eb6 mp e_t_5s bb5 mf -13/480 89/1920^t_x_5s eb5 mp 203/384 ab5 mf )) ;;defined the separate elements as their own variables (setf coreCall-L (omn :length coreCall )) (setf coreCall-P (omn :pitch coreCall )) (setf coreCall-D(omn :duration coreCall )) ;;set to generate chords from pitch (setf callChords (gen-chord 11 1 5 0 24 coreCall-P :count 5 :rnd-octaves t :seed 22)) ;;combine the values to make an alternative call (make-omn :pitch callChords ;;randomise the rhythmic values :length (rnd-order coreCall-L :seed 28) ;;make it more legato by scaling the durations of the notes: :duration (length-augmentation 2 coreCall-D ) :span :length :articulation (mclist '(- arp - arp arp-down - arp -)) ) Thank youin advance for your help!! Julio Quote
opmo Posted March 16, 2016 Posted March 16, 2016 The arp is fine. The duration was the problem: (setf coreCall '(-h_q_3s t_3s^s gb5 mp 23/640^23/384 db6 mf 5q^25/384 f6 t..^149/1920 eb6 mp e_t_5s bb5 mf -13/480 89/1920^t_x_5s eb5 mp 203/384 ab5 mf)) (setf coreCallM (rnd-order coreCall :type :length :seed 28)) (setf coreCall-L (omn :length coreCallM)) (setf coreCall-P (omn :pitch coreCallM)) (setf coreCall-D (omn :duration coreCallM)) (setf callChords (gen-chord 11 1 5 0 24 coreCall-P :count 5 :rnd-octaves t :seed 22)) (make-omn :pitch callChords :length coreCall-L :duration (length-augmentation 2 coreCall-D) :articulation '(- arp - arp arp-down - arp -) :duration-add t) Quote
julio d'escrivan Posted March 16, 2016 Author Posted March 16, 2016 thank you! I found what duration-add is by searching for an example in the documentation, the helpful just mentions the keyword but no more. I had no idea about this... we keep learning! thanks again. Quote
julio d'escrivan Posted March 16, 2016 Author Posted March 16, 2016 ok, I have looked at the examples and the only thing I see clearly is that duration-add is necessary if there is a negative duration indicated. But I don't understand a negative duration... what you call length in omn is the rhythmic position within the bar, let's say the point at which a sound is triggered (MIDINote On timestamp?). What you call duration is how long that sound is triggered for (MIDINoteOff timestamp?). If that is correct, what does a negative duration do? I don't understand why a duration-add needs to exist... it seems to allow extending the durations by a factor... it is unclear and the documentation is rather cryptic. I am struggling with this... where can I find out more? I searched here and nobody seems to have asked this before... Quote
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.