Jump to content


Recommended Posts

in an OMN-stream i have (because of a special generating-algorithm) "always the same expressions" ...

for example:

(s a4 p ord -h s bb4 ord t cs5 f ord -w_e. s c5 mf ord t b4 p ord -q_t s d5 mf ponte cs5 ponte gs4 ffff pizz a4 mf ponte bb4 ponte f4 ponte h_e e4 ppp tasto


is there a function who reduces it at a minimum... one time ord then next ponte etc... (like length-rest-merge, but for the expressions)





Link to comment
Share on other sites

but is it possible to fix it, when i make a disassemble-omn and delete all "immediate repetitions" of the articulations?


that seems to be a solution -> (clear-articulations omn-list), it works works correct for my code.





(defun clear-articulations (omn-list)
  (make-omn :pitch (omn :pitch omn-list)
            :length (omn :length omn-list)
            :velocity (omn :velocity omn-list)
            :articulation (append (list '-) (loop repeat (length (omn :articulation omn-list))
                                              with cnt = 0
                                              with art = (omn :articulation omn-list)
                                              when (not (equal (nth cnt art) (nth (+ cnt 1) art)))
                                              collect (nth (+ cnt 1) art)
                                              else collect '-
                                              do (incf cnt)))))


Link to comment
Share on other sites

  • 3 weeks later...

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