Is there perhaps a way to adjust the overall duration of a nested (barred) OMN sequence? In particular, is there a function to cut notes etc. at the beginning/end of a sequence, so that the result has a specified overall duration?
The first example just demonstrates what I would like to have.
(setf phrase '((1/2 c4 1/4 d4) (1/4 e4 1/2 c4))) ;; Edit phrase such that the result is exactly 5/4 long by preserving the nesting structure (function-I-am-looking-for 5/4 phrase) ; => ((h c4 q d4) (q e4 c4)) ; cut material at end ; => ((q c4 q d4) (q e4 h c4)) ; cut material at beginning
There already exist at least two functions that are close, but not quite what I need.
;; Does not keep nesting structure (length-span 5/4 phrase) ; => (h c4 q d4 e4 c4) ;; Adjusts individual sublists (length-adjust 5/4 phrase) ; => ((h c4 q d4 -h) (q e4 h c4 -)) Is there perhaps also a function that does what my example function-I-am-looking-for above does?
Thanks a lot!
By Yuichi Yamamoto
I'm playing around with the function gen-tuplet and having some bug / unexpected result.
When I evaluate some code like
(gen-tuplet 1 1 'm 'n 'w 5) I get
which is understandable.
But when I give the length-value twice the duration,
(gen-tuplet 1 1 'm 'n 'd 5) I get
whereas I would expect it to be (2/5 2/5 2/5 2/5 2/5).
Is this a bug? Or this is just how it is?