Jump to content

Recommended Posts

Posted

Hi,

 

here's an example showing many possible techniques in OM like pattern matching articulations, chaining sections, row segmentation, reservoir/cells based approach etc....

SB.

;;; ==================================
;;; SCORE 139
;;; SB.20.03.2020 
;;; COPYRIGHT 2020 S.BOUSSUGE
;;; ==================================
;;; KEYWORDS: strings quartet pcs pitch class set sets reservoir
;;; ==================================
;;; GLOBAL PARAMETERS
;;;==================
;;; LENGTH
(setf lenres1 '((w)(h h)(h -q q)(q h -q)(-q q q -q)(-q h -q)))
(setf lenres2 (append lenres1 '((e e q h)(e e e e -q e e)(s s s s q -e s s q)(3q = = q -q)(q e e)(e. s q -q))))
(setf lenres3 (append lenres2 '((5q = = = = q -e s s)(s s s s s s s s q e e))))
(setf lenres4 (butlast (reverse lenres3) 3))
(setf lenres5 (butlast (reverse lenres3) 6))
(setf lenres6 (butlast (reverse lenres3) 10))

;;; PITCH
(setf pmat (rnd-row :type :pitch))
(setf set1 (subseq pmat 0 4))
(setf set2 (subseq pmat 4 9))
(setf set3 (subseq pmat 6))
(setf set4 (subseq pmat 2 10))
(setf set5 (subseq pmat 0 9))
(setf set6 (subseq pmat 4))

;;; DYNAMIC
(setf velres1 '((ppp)(pp)(p)))
(setf velres2 '((pp)(p)(mp)))
(setf velres3 '((p)(mp)(mf)))
(setf velres4 '((mp)(mf)(f)))
(setf velres5 '((mf)(f)))
(setf velres6 '((f)))

;;; ARTICULATION
(setf articulation-map1 '(
                          ;; mapping on reservoir motives
                          ((w)(ord))
                          ((h h)(ord ord))
                          ((h -q q)(ord stacc))
                          ((q h -q)(ord ord))
                          ((-q q q -q)(ord ord))
                          ((-q h -q)(ord))
                          ((e e q h)(leg ord stacc ord))
                          ((e e e e -q e e)(leg ord leg ord stacc stacc))
                          ((s s s s q -e s s q)(leg leg leg ord marc stacc stacc marc))
                          ((3q = = q -q)(leg leg ord ord))
                          ((q e e)(stacc leg ord))
                          ((e. s q -q)(ord stacc ord))
                          ((5q = = = = q -e s s)(leg leg leg leg ord stacc leg ord))
                          ((s s s s s s s s q e e)(leg leg leg ord leg leg leg ord stacc leg ord))
                          ;; complementary utils mapping
                          ((s s s s)(leg leg leg ord))
                          ((5q = = = =)(leg leg leg leg ord))
                          ((e e)(leg ord))
                          ((3q = =)(leg leg ord))
                          ))

;;; SECTIONS SIZES
(setf s1.size 12)
(setf s2.size 12)
(setf s3.size 12)
(setf s4.size 12)
(setf s5.size 12)
(setf s6.size 12)

;;; SECTIONS TEMPI
(setf s1.tempo `("Calme" q 72 ,s1.size))
(setf s2.tempo `("Modéré" q 92 ,s2.size))
(setf s3.tempo `("Vif" q 102 ,s3.size))
(setf s4.tempo `("Décidé" q 108 ,s4.size))
(setf s5.tempo `("Vif" q 112 ,s5.size))
(setf s6.tempo `("Vif" q 112 ,s6.size)) 

;;; SECTIONS INSTRUMENTS LOCAL TRANSPOSITIONS
;;; section 1
(setf s1-i1tp (rnd-number s1.size -6 6))
(setf s1-i2tp s1-i1tp)
(setf s1-i3tp s1-i1tp)
(setf s1-i4tp s1-i1tp)
;;; section 2
(setf s2-i1tp (rnd-number s2.size -6 6))
(setf s2-i2tp (rnd-number s2.size -6 6))
(setf s2-i3tp s2-i1tp)
(setf s2-i4tp s2-i1tp)
;;; section 3
(setf s3-i1tp (rnd-number s3.size -6 6))
(setf s3-i2tp (rnd-number s3.size -6 6))
(setf s3-i3tp (rnd-number s3.size -6 6))
(setf s3-i4tp (rnd-number s3.size -6 6))
;;; section 4
(setf s4-i1tp (rnd-number s4.size -6 6))
(setf s4-i2tp (rnd-number s4.size -6 6))
(setf s4-i3tp (rnd-number s4.size -6 6))
(setf s4-i4tp (rnd-number s4.size -6 6))
;;; section 5
(setf s5-i1tp (rnd-number s5.size -6 6))
(setf s5-i2tp (rnd-number s5.size -6 6))
(setf s5-i3tp (rnd-number s5.size -6 6))
(setf s5-i4tp (rnd-number s5.size -6 6))
;;; section 6
(setf s6-i1tp (rnd-number s6.size -6 6))
(setf s6-i2tp (rnd-number s6.size -6 6))
(setf s6-i3tp (rnd-number s6.size -6 6))
(setf s6-i4tp (rnd-number s6.size -6 6))

;;; SECTION GLOBAL TRANSPOSITIONS
;;; section 1
(setf s1-gtp (rnd-number s1.size -6 6))
;;; section 2
(setf s2-gtp (rnd-number s2.size -6 6))
;;; section 1
(setf s3-gtp (rnd-number s3.size -6 6))
;;; section 1
(setf s4-gtp (rnd-number s4.size -6 6))
;;; section 1
(setf s5-gtp (rnd-number s5.size -6 6))
;;; section 1
(setf s6-gtp (rnd-number s6.size -6 6))

;;; SECTION GROUP INSTRUMENTATIONS (Play/Mute system)
;;; section 1
(setf s1-i1pm (gen-trim s1.size '(-)))
(setf s1-i2pm (gen-trim s1.size '(-)))
(setf s1-i3pm (gen-trim s1.size '(-)))
(setf s1-i4pm (gen-trim s1.size '(-)))
;;; section 2
(setf s2-i1pm (gen-trim s2.size '(-)))
(setf s2-i2pm (gen-trim s2.size '(-)))
(setf s2-i3pm (gen-trim s2.size '(-)))
(setf s2-i4pm (gen-trim s2.size '(-)))
;;; section 3
(setf s3-i1pm (rnd-sample s3.size '(- - x)))
(setf s3-i2pm (rnd-sample s3.size '(- - x)))
(setf s3-i3pm (rnd-sample s3.size '(- - x)))
(setf s3-i4pm (rnd-sample s3.size '(- - x)))
;;; section 4
(setf s4-i1pm (rnd-sample s4.size '(- - x)))
(setf s4-i2pm (rnd-sample s4.size '(- - x)))
(setf s4-i3pm (rnd-sample s4.size '(- - x)))
(setf s4-i4pm (rnd-sample s4.size '(- - x)))
;;; section 5
(setf s5-i1pm (rnd-sample s5.size '(- - x)))
(setf s5-i2pm (rnd-sample s5.size '(- - x)))
(setf s5-i3pm (rnd-sample s5.size '(- - x)))
(setf s5-i4pm (rnd-sample s5.size '(- - x)))
;;; section 6
(setf s6-i1pm (rnd-sample s6.size '(- - x)))
(setf s6-i2pm (rnd-sample s6.size '(- - x)))
(setf s6-i3pm (rnd-sample s6.size '(- - x)))
(setf s6-i4pm (rnd-sample s6.size '(- - x)))

;;; PROCESS
;;;========
;;; SECTION 1
;;; ===================
(setf vn1-1 (make-omn
             :length (setf len (rnd-sample s1.size lenres1))
             :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose 0 set1)))
             :velocity (rnd-sample (length len) velres1)
             :articulation (pattern-map articulation-map1 len :otherwise '(ord))
             ))

(setf spn1 (get-span vn1-1))

(setf vn2-1 (length-span
             spn1
             (make-omn
              :length (setf len (rnd-sample s1.size lenres1))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose 0 set1)))
              :velocity (rnd-sample (length len) velres1)
              :articulation (pattern-map articulation-map1 len :otherwise '(ord))
              )))

(setf vla-1 (length-span
             spn1
             (make-omn
              :length (setf len (rnd-sample s1.size lenres1))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose -12 set1)))
              :velocity (rnd-sample (length len) velres1)
              :articulation (pattern-map articulation-map1 len :otherwise '(ord))
              )))

(setf vlc-1 (length-span
             spn1
             (make-omn
              :length (setf len (rnd-sample s1.size lenres1))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose -24 set1)))
              :velocity (rnd-sample (length len) velres1)
             :articulation (pattern-map articulation-map1 len :otherwise '(ord))
             )))

;;; SECTION LOCAL INSTRUMENTS TRANSPOSITIONS
(setf vn1-1.itp (pitch-transpose s1-i1tp vn1-1))
(setf vn2-1.itp (pitch-transpose s1-i2tp vn2-1))
(setf vla-1.itp (pitch-transpose s1-i3tp vla-1))
(setf vlc-1.itp (pitch-transpose s1-i4tp vlc-1))
;;; SECTION GLOBAL TRANSPOSITION
(setf vn1-1.gtp (pitch-transpose s1-gtp vn1-1.itp))
(setf vn2-1.gtp (pitch-transpose s1-gtp vn2-1.itp))
(setf vla-1.gtp (pitch-transpose s1-gtp vla-1.itp))
(setf vlc-1.gtp (pitch-transpose s1-gtp vlc-1.itp))
;;; GET THE LENGTH FOR APPLYING PATTERN MATCHING ARTICULATIONS PROCESS
(setf vn1-1.r (omn :length vn1-1.gtp))
(setf vn2-1.r (omn :length vn2-1.gtp))
(setf vla-1.r (omn :length vla-1.gtp))
(setf vlc-1.r (omn :length vlc-1.gtp))
;;; GENERATE ARTICULATIONS LIST BASED ON PATTERN MATCHING
(setf vn1-1.arl (pattern-map articulation-map1 vn1-1.r :otherwise '(ord)))
(setf vn2-1.arl (pattern-map articulation-map1 vn2-1.r :otherwise '(ord)))
(setf vla-1.arl (pattern-map articulation-map1 vla-1.r :otherwise '(ord)))
(setf vlc-1.arl (pattern-map articulation-map1 vlc-1.r :otherwise '(ord)))
;;; ADDING(REPLACING) ARTICULATIONS
(setf vn1-1.a (omn-replace :articulation vn1-1.arl vn1-1.gtp))
(setf vn2-1.a (omn-replace :articulation vn2-1.arl vn2-1.gtp))
(setf vla-1.a (omn-replace :articulation vla-1.arl vla-1.gtp))
(setf vlc-1.a (omn-replace :articulation vlc-1.arl vlc-1.gtp))
;;; SECTION OUTPUT
(setf vn1-1e vn1-1.a)
(setf vn2-1e vn2-1.a)
(setf vla-1e vla-1.a)
(setf vlc-1e vlc-1.a)
;;; PLAY/MUTE SYSTEM
(do-timeline
`(
vn1-1e ,s1-i1pm 
vn2-1e ,s1-i2pm 
vla-1e ,s1-i3pm 
vlc-1e ,s1-i4pm 
)

'(gen-pause x)
)
;;; ====================
;;; SECTION 2
;;; ===================
(setf vn1-2 (make-omn
             :length (setf len (rnd-sample s2.size lenres2))
             :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose 0 set2)))
             :velocity (rnd-sample (length len) velres2)
             ))

(setf spn2 (get-span vn1-2))

(setf vn2-2 (length-span
             spn2
             (make-omn
              :length (setf len (rnd-sample s2.size lenres2))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose 0 set2)))
              :velocity (rnd-sample (length len) velres2)
              )))

(setf vla-2 (length-span
             spn2
             (make-omn
              :length (setf len (rnd-sample s2.size lenres2))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose -12 set2)))
              :velocity (rnd-sample (length len) velres2)
              )))

(setf vlc-2 (length-span
             spn2
             (make-omn
              :length (setf len (rnd-sample s2.size lenres2))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose -24 set2)))
              :velocity (rnd-sample (length len) velres2)
              )))

;;; SECTION LOCAL INSTRUMENTS TRANSPOSITIONS
(setf vn1-2.itp (pitch-transpose s2-i1tp vn1-2))
(setf vn2-2.itp (pitch-transpose s2-i2tp vn2-2))
(setf vla-2.itp (pitch-transpose s2-i3tp vla-2))
(setf vlc-2.itp (pitch-transpose s2-i4tp vlc-2))
;;; SECTION GLOBAL TRANSPOSITION
(setf vn1-2.gtp (pitch-transpose s2-gtp vn1-2.itp))
(setf vn2-2.gtp (pitch-transpose s2-gtp vn2-2.itp))
(setf vla-2.gtp (pitch-transpose s2-gtp vla-2.itp))
(setf vlc-2.gtp (pitch-transpose s2-gtp vlc-2.itp))
;;; GET THE LENGTH FOR APPLYING PATTERN MATCHING ARTICULATIONS PROCESS
(setf vn1-2.r (omn :length vn1-2.gtp))
(setf vn2-2.r (omn :length vn2-2.gtp))
(setf vla-2.r (omn :length vla-2.gtp))
(setf vlc-2.r (omn :length vlc-2.gtp))
;;; GENERATE ARTICULATIONS LIST BASED ON PATTERN MATCHING
(setf vn1-2.arl (pattern-map articulation-map1 vn1-2.r :otherwise '(ord)))
(setf vn2-2.arl (pattern-map articulation-map1 vn2-2.r :otherwise '(ord)))
(setf vla-2.arl (pattern-map articulation-map1 vla-2.r :otherwise '(ord)))
(setf vlc-2.arl (pattern-map articulation-map1 vlc-2.r :otherwise '(ord)))
;;; ADDING(REPLACING) ARTICULATIONS
(setf vn1-2.a (omn-replace :articulation vn1-2.arl vn1-2.gtp))
(setf vn2-2.a (omn-replace :articulation vn2-2.arl vn2-2.gtp))
(setf vla-2.a (omn-replace :articulation vla-2.arl vla-2.gtp))
(setf vlc-2.a (omn-replace :articulation vlc-2.arl vlc-2.gtp))
;;; SECTION OUTPUT
(setf vn1-2e vn1-2.a)
(setf vn2-2e vn2-2.a)
(setf vla-2e vla-2.a)
(setf vlc-2e vlc-2.a)
;;; PLAY/MUTE SYSTEM
(do-timeline
`(
vn1-2e ,s2-i1pm 
vn2-2e ,s2-i2pm 
vla-2e ,s2-i3pm 
vlc-2e ,s2-i4pm 
)

'(gen-pause x)
)
;;; ====================
;;; SECTION 3
;;; ===================
(setf vn1-3 (make-omn
             :length (setf len (rnd-sample s3.size lenres3))
             :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose 0 set3)))
             :velocity (rnd-sample (length len) velres3)
             ))

(setf spn3 (get-span vn1-3))

(setf vn2-3 (length-span
             spn3
             (make-omn
              :length (setf len (rnd-sample s3.size lenres3))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose 0 set3)))
              :velocity (rnd-sample (length len) velres3)
              )))

(setf vla-3 (length-span
             spn3
             (make-omn
              :length (setf len (rnd-sample s3.size lenres3))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose -12 set3)))
              :velocity (rnd-sample (length len) velres3)
              )))

(setf vlc-3 (length-span
             spn3
             (make-omn
              :length (setf len (rnd-sample s3.size lenres3))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose -24 set3)))
              :velocity (rnd-sample (length len) velres3)
              )))

;;; SECTION LOCAL INSTRUMENTS TRANSPOSITIONS
(setf vn1-3.itp (pitch-transpose s3-i1tp vn1-3))
(setf vn2-3.itp (pitch-transpose s3-i2tp vn2-3))
(setf vla-3.itp (pitch-transpose s3-i3tp vla-3))
(setf vlc-3.itp (pitch-transpose s3-i4tp vlc-3))
;;; SECTION GLOBAL TRANSPOSITION
(setf vn1-3.gtp (pitch-transpose s3-gtp vn1-3.itp))
(setf vn2-3.gtp (pitch-transpose s3-gtp vn2-3.itp))
(setf vla-3.gtp (pitch-transpose s3-gtp vla-3.itp))
(setf vlc-3.gtp (pitch-transpose s3-gtp vlc-3.itp))
;;; GET THE LENGTH FOR APPLYING PATTERN MATCHING ARTICULATIONS PROCESS
(setf vn1-3.r (omn :length vn1-3.gtp))
(setf vn2-3.r (omn :length vn2-3.gtp))
(setf vla-3.r (omn :length vla-3.gtp))
(setf vlc-3.r (omn :length vlc-3.gtp))
;;; GENERATE ARTICULATIONS LIST BASED ON PATTERN MATCHING
(setf vn1-3.arl (pattern-map articulation-map1 vn1-3.r :otherwise '(ord)))
(setf vn2-3.arl (pattern-map articulation-map1 vn2-3.r :otherwise '(ord)))
(setf vla-3.arl (pattern-map articulation-map1 vla-3.r :otherwise '(ord)))
(setf vlc-3.arl (pattern-map articulation-map1 vlc-3.r :otherwise '(ord)))
;;; ADDING(REPLACING) ARTICULATIONS
(setf vn1-3.a (omn-replace :articulation vn1-3.arl vn1-3.gtp))
(setf vn2-3.a (omn-replace :articulation vn2-3.arl vn2-3.gtp))
(setf vla-3.a (omn-replace :articulation vla-3.arl vla-3.gtp))
(setf vlc-3.a (omn-replace :articulation vlc-3.arl vlc-3.gtp))
;;; SECTION OUTPUT
(setf vn1-3e vn1-3.a)
(setf vn2-3e vn2-3.a)
(setf vla-3e vla-3.a)
(setf vlc-3e vlc-3.a)
;;; PLAY/MUTE SYSTEM
(do-timeline
`(
vn1-3e ,s3-i1pm 
vn2-3e ,s3-i2pm 
vla-3e ,s3-i3pm 
vlc-3e ,s3-i4pm 
)

'(gen-pause x)
)
;;; ====================
;;; SECTION 4
;;; ===================
(setf vn1-4 (make-omn
             :length (setf len (rnd-sample s4.size lenres4))
             :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose 12 set4)))
             :velocity (rnd-sample (length len) velres4)
             ))

(setf spn4 (get-span vn1-4))

(setf vn2-4 (length-span
             spn4
             (make-omn
              :length (setf len (rnd-sample s4.size lenres4))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose 0 set4)))
              :velocity (rnd-sample (length len) velres4)
              )))

(setf vla-4 (length-span
             spn4
             (make-omn
              :length (setf len (rnd-sample s4.size lenres4))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose -12 set4)))
              :velocity (rnd-sample (length len) velres4)
             )))

(setf vlc-4 (length-span
             spn4
             (make-omn
              :length (setf len (rnd-sample s4.size lenres4))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose -24 set4)))
              :velocity (rnd-sample (length len) velres4)
              )))

;;; SECTION LOCAL INSTRUMENTS TRANSPOSITIONS
(setf vn1-4.itp (pitch-transpose s4-i1tp vn1-4))
(setf vn2-4.itp (pitch-transpose s4-i2tp vn2-4))
(setf vla-4.itp (pitch-transpose s4-i3tp vla-4))
(setf vlc-4.itp (pitch-transpose s4-i4tp vlc-4))
;;; SECTION GLOBAL TRANSPOSITION
(setf vn1-4.gtp (pitch-transpose s4-gtp vn1-4.itp))
(setf vn2-4.gtp (pitch-transpose s4-gtp vn2-4.itp))
(setf vla-4.gtp (pitch-transpose s4-gtp vla-4.itp))
(setf vlc-4.gtp (pitch-transpose s4-gtp vlc-4.itp))
;;; GET THE LENGTH FOR APPLYING PATTERN MATCHING ARTICULATIONS PROCESS
(setf vn1-4.r (omn :length vn1-4.gtp))
(setf vn2-4.r (omn :length vn2-4.gtp))
(setf vla-4.r (omn :length vla-4.gtp))
(setf vlc-4.r (omn :length vlc-4.gtp))
;;; GENERATE ARTICULATIONS LIST BASED ON PATTERN MATCHING
(setf vn1-4.arl (pattern-map articulation-map1 vn1-4.r :otherwise '(ord)))
(setf vn2-4.arl (pattern-map articulation-map1 vn2-4.r :otherwise '(ord)))
(setf vla-4.arl (pattern-map articulation-map1 vla-4.r :otherwise '(ord)))
(setf vlc-4.arl (pattern-map articulation-map1 vlc-4.r :otherwise '(ord)))
;;; ADDING(REPLACING) ARTICULATIONS
(setf vn1-4.a (omn-replace :articulation vn1-4.arl vn1-4.gtp))
(setf vn2-4.a (omn-replace :articulation vn2-4.arl vn2-4.gtp))
(setf vla-4.a (omn-replace :articulation vla-4.arl vla-4.gtp))
(setf vlc-4.a (omn-replace :articulation vlc-4.arl vlc-4.gtp))
;;; SECTION OUTPUT
(setf vn1-4e vn1-4.a)
(setf vn2-4e vn2-4.a)
(setf vla-4e vla-4.a)
(setf vlc-4e vlc-4.a)
;;; PLAY/MUTE SYSTEM
(do-timeline
`(
vn1-4e ,s4-i1pm 
vn2-4e ,s4-i2pm 
vla-4e ,s4-i3pm 
vlc-4e ,s4-i4pm 
)

'(gen-pause x)
)
;;; ====================
;;; SECTION 5
;;; ===================
(setf vn1-5 (make-omn
             :length (setf len (rnd-sample s5.size lenres5))
             :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose 12 set5)))
             :velocity (rnd-sample (length len) velres5)
             ))

(setf spn5 (get-span vn1-5))

(setf vn2-5 (length-span
             spn5
             (make-omn
              :length (setf len (rnd-sample s5.size lenres5))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose 12 set5)))
              :velocity (rnd-sample (length len) velres5)
              )))

(setf vla-5 (length-span
             spn5
             (make-omn
              :length (setf len (rnd-sample s5.size lenres5))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose -12 set5)))
              :velocity (rnd-sample (length len) velres5)
              )))

(setf vlc-5 (length-span
             spn5
             (make-omn
              :length (setf len (rnd-sample s5.size lenres5))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose -24 set5)))
              :velocity (rnd-sample (length len) velres5)
              )))

;;; SECTION LOCAL INSTRUMENTS TRANSPOSITIONS
(setf vn1-5.itp (pitch-transpose s5-i1tp vn1-5))
(setf vn2-5.itp (pitch-transpose s5-i2tp vn2-5))
(setf vla-5.itp (pitch-transpose s5-i3tp vla-5))
(setf vlc-5.itp (pitch-transpose s5-i4tp vlc-5))
;;; SECTION GLOBAL TRANSPOSITION
(setf vn1-5.gtp (pitch-transpose s5-gtp vn1-5.itp))
(setf vn2-5.gtp (pitch-transpose s5-gtp vn2-5.itp))
(setf vla-5.gtp (pitch-transpose s5-gtp vla-5.itp))
(setf vlc-5.gtp (pitch-transpose s5-gtp vlc-5.itp))
;;; GET THE LENGTH FOR APPLYING PATTERN MATCHING ARTICULATIONS PROCESS
(setf vn1-5.r (omn :length vn1-5.gtp))
(setf vn2-5.r (omn :length vn2-5.gtp))
(setf vla-5.r (omn :length vla-5.gtp))
(setf vlc-5.r (omn :length vlc-5.gtp))
;;; GENERATE ARTICULATIONS LIST BASED ON PATTERN MATCHING
(setf vn1-5.arl (pattern-map articulation-map1 vn1-5.r :otherwise '(ord)))
(setf vn2-5.arl (pattern-map articulation-map1 vn2-5.r :otherwise '(ord)))
(setf vla-5.arl (pattern-map articulation-map1 vla-5.r :otherwise '(ord)))
(setf vlc-5.arl (pattern-map articulation-map1 vlc-5.r :otherwise '(ord)))
;;; ADDING(REPLACING) ARTICULATIONS
(setf vn1-5.a (omn-replace :articulation vn1-5.arl vn1-5.gtp))
(setf vn2-5.a (omn-replace :articulation vn2-5.arl vn2-5.gtp))
(setf vla-5.a (omn-replace :articulation vla-5.arl vla-5.gtp))
(setf vlc-5.a (omn-replace :articulation vlc-5.arl vlc-5.gtp))
;;; SECTION OUTPUT
(setf vn1-5e vn1-5.a)
(setf vn2-5e vn2-5.a)
(setf vla-5e vla-5.a)
(setf vlc-5e vlc-5.a)
;;; PLAY/MUTE SYSTEM
(do-timeline
`(
vn1-5e ,s5-i1pm 
vn2-5e ,s5-i2pm 
vla-5e ,s5-i3pm 
vlc-5e ,s5-i4pm 
)

'(gen-pause x)
)
;;; ====================
;;; SECTION 6
;;; ===================
(setf vn1-6 (make-omn
             :length (setf len (rnd-sample s6.size lenres6))
             :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose 0 set6)))
             :velocity (rnd-sample (length len) velres6)
             ))

(setf spn6 (get-span vn1-6))

(setf vn2-6 (length-span
             spn6 
             (make-omn
              :length (setf len (rnd-sample s6.size lenres6))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose 0 set6)))
              :velocity (rnd-sample (length len) velres6)
              )))

(setf vla-6 (length-span
             spn6
             (make-omn
              :length (setf len (rnd-sample s6.size lenres6))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose -12 set6)))
              :velocity (rnd-sample (length len) velres6)
             )))

(setf vlc-6 (length-span
             spn6
             (make-omn
              :length (setf len (rnd-sample s6.size lenres6))
              :pitch (span len (rnd-sample (length (flatten len)) (pitch-transpose -24 set6)))
              :velocity (rnd-sample (length len) velres6)
             )))

;;; SECTION LOCAL INSTRUMENTS TRANSPOSITIONS
(setf vn1-6.itp (pitch-transpose s6-i1tp vn1-6))
(setf vn2-6.itp (pitch-transpose s6-i2tp vn2-6))
(setf vla-6.itp (pitch-transpose s6-i3tp vla-6))
(setf vlc-6.itp (pitch-transpose s6-i4tp vlc-6))
;;; SECTION GLOBAL TRANSPOSITION
(setf vn1-6.gtp (pitch-transpose s6-gtp vn1-6.itp))
(setf vn2-6.gtp (pitch-transpose s6-gtp vn2-6.itp))
(setf vla-6.gtp (pitch-transpose s6-gtp vla-6.itp))
(setf vlc-6.gtp (pitch-transpose s6-gtp vlc-6.itp))
;;; GET THE LENGTH FOR APPLYING PATTERN MATCHING ARTICULATIONS PROCESS
(setf vn1-6.r (omn :length vn1-6.gtp))
(setf vn2-6.r (omn :length vn2-6.gtp))
(setf vla-6.r (omn :length vla-6.gtp))
(setf vlc-6.r (omn :length vlc-6.gtp))
;;; GENERATE ARTICULATIONS LIST BASED ON PATTERN MATCHING
(setf vn1-6.arl (pattern-map articulation-map1 vn1-6.r :otherwise '(ord)))
(setf vn2-6.arl (pattern-map articulation-map1 vn2-6.r :otherwise '(ord)))
(setf vla-6.arl (pattern-map articulation-map1 vla-6.r :otherwise '(ord)))
(setf vlc-6.arl (pattern-map articulation-map1 vlc-6.r :otherwise '(ord)))
;;; ADDING(REPLACING) ARTICULATIONS
(setf vn1-6.a (omn-replace :articulation vn1-6.arl vn1-6.gtp))
(setf vn2-6.a (omn-replace :articulation vn2-6.arl vn2-6.gtp))
(setf vla-6.a (omn-replace :articulation vla-6.arl vla-6.gtp))
(setf vlc-6.a (omn-replace :articulation vlc-6.arl vlc-6.gtp))
;;; SECTION OUTPUT
(setf vn1-6e vn1-6.a)
(setf vn2-6e vn2-6.a)
(setf vla-6e vla-6.a)
(setf vlc-6e vlc-6.a)
;;; PLAY/MUTE SYSTEM
(do-timeline
`(
vn1-6e ,s6-i1pm 
vn2-6e ,s6-i2pm 
vla-6e ,s6-i3pm 
vlc-6e ,s6-i4pm 
)

'(gen-pause x)
)
;;; ====================

;;; SCORING
;;; =======
;; THIS PARTICULAR DISPOSITION ALLOW TO COMMENT SOME SECTION LIKE HERE SECTION 5 (AS AN EXAMPLE)
(setf vn1 (ambitus 'violin (assemble-seq 
                            vn1-1e
                            vn1-2e
                            vn1-3e
                            vn1-4e
                            ;vn1-5e
                            vn1-6e
                            )))
(setf vn2 (ambitus 'violin (assemble-seq 
                            vn2-1e
                            vn2-2e
                            vn2-3e
                            vn2-4e
                            ;vn2-5e
                            vn2-6e
                            )))
(setf vla (ambitus 'viola (assemble-seq 
                           vla-1e
                           vla-2e
                           vla-3e
                           vla-4e
                           ;vla-5e
                           vla-6e
                           )))
(setf vlc (ambitus 'violoncello (assemble-seq 
                                 vlc-1e
                                 vlc-2e
                                 vlc-3e
                                 vlc-4e
                                 ;vlc-5e
                                 vlc-6e
                                 )))


(setf tempo-events (list 
                    s1.tempo
                    s2.tempo
                    s3.tempo
                    s4.tempo
                    ;s5.tempo
                    s6.tempo
                    ))

(ps 'gm
    :sq (list vn1 vn2 vla vlc)
    :tempo tempo-events
    :time-signature (get-time-signature vn1)
    :flexible-clef nil
    )

;;; =============== END OF FILE ================                          
                           

SB.

 

Score139.opmo

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
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