Jump to content

Featured Replies

Posted

I'm trying to figure out how to span (attach) slurs individually to each measure in a pitch sequence. When I use :articulation key in make-omn, a single slur is spanned from the beginning until the end of the sequence. Here's a short code excerpt in case someone has a suggestion. Perhaps I need to apply vector-map to :articulation?

 

 (make-omn
             :length '(e)
             :pitch (vector-map (pitch-melodize chords) vector-chords)
             :velocity '(p)
             :articulation '(leg)
             :span :pitch)

 

Thank you!

  • Author
  (setf exile-chorale (pitch-transpose -3
         '(h c4eb4g4 c4d4f4ab4 w bb3d4f4g4
           h g3c4eb4 ab3c4d4f4 w g3bb3d4f4
           h c4eb4g4c5 d4f4ab4c5 d4g4ab4c5 w d4g4ab4c5
          )))
  
  (setf exile-chords (gen-repeat 10 (omn :pitch exile-chorale)))

  (setf vector-exile-chorale (vector-smooth 0.1 (flatten (vector-round 0.01 1.00 (pitch-to-integer (pitch-demix 1 exile-chords))))))
  (list-plot (vector-smooth 0.1 vector-exile-chorale) :join-points t :point-radius 2)
  (setf inv-num (gen-trim (length exile-chords) '(1)))
  (setf exile-chords-i (chord-inversion inv-num exile-chords
                                        :variant '?
                                        :omit '(i ri)
                                        ))
  
  (setf rh 
        (pitch-transpose
            0
            (make-omn
             :length '(e)
             :pitch (vector-map (pitch-melodize exile-chords-i) vector-exile-chorale)
             :velocity '(p)
             :articulation '(leg)
             :span :pitch)))

 

Thanks, Stephane!

(setf exile-chorale
      (pitch-transpose
       -3
       '(h c4eb4g4 c4d4f4ab4 w bb3d4f4g4
         h g3c4eb4 ab3c4d4f4 w g3bb3d4f4
         h c4eb4g4c5 d4f4ab4c5 d4g4ab4c5 w d4g4ab4c5
         )))
         
(setf exile-chords (gen-repeat 10 (omn :pitch exile-chorale)))

(setf vector-exile-chorale
      (list-plot
       (vector-smooth
        0.1
        (flatten
         (vector-round
          0.01 1.00
          (pitch-to-integer (pitch-demix 1 exile-chords)))))
       :join-points t :point-radius 2))
       
(setf inv-num (gen-trim (length exile-chords) '(1)))

(setf exile-chords-i (chord-inversion inv-num exile-chords
                                      :variant '?
                                      :omit '(i ri)))
                                      
(setf pitches (vector-map
               (pitch-melodize exile-chords-i)
               vector-exile-chorale))
               
(setf rh 
      (pitch-transpose
       0
       (make-omn
        :length '(e)
        :pitch pitches
        :velocity '(p)
        :span :pitch)))
        
(setf count (get-count pitches))
(setf att (gen-repeat (length count) '(leg)))
(setf leg-series (mclist att count))

(attribute-series leg-series rh)

 

Create an account or sign in to comment


Copyright © 2014-2025 Opusmodus™ Ltd. All rights reserved.
Product features, specifications, system requirements and availability are subject to change without notice.
Opusmodus, the Opusmodus logo, and other Opusmodus trademarks are either registered trademarks or trademarks of Opusmodus Ltd.
All other trademarks contained herein are the property of their respective owners.

Powered by Invision Community

Important Information

Terms of Use Privacy Policy