Jump to content

Composing with Piano Reductions


Recommended Posts

Dear All,

 

I'm trying to find a suitable workflow to make my choices easier.

One idea was to compose over a piano reduction, for easier manipulation.

Here's a way of doing that, with comments.

The MIDI FILE output is like this. I did NO EDITIONS at all in Musescore.This is the video of the MIDI output.

The XML output is the piano reduction.

Very convenient !

 

Best,

Julio

 


;;;SEV CHORDS Basic Functions
;;;Harmonic Functions/Sets List

(setf Srm7 (pcs-transpose 9 (pcs '4-26) :pitch))
(setf S7M (pcs-transpose 4 (pcs '4-20) :pitch))
(setf Trm7 (pcs-transpose 4 (pcs '4-26) :pitch))
(setf T7M (pcs-transpose -1 (pcs '4-20) :pitch))
(setf Tam7 (pcs-transpose 11 (pcs '4-26) :pitch))
(setf D7 (pcs-transpose 11 (pcs '4-27b) :pitch))
(setf hd (pcs-transpose 9 (pcs '4-27) :pitch))

;;;Estabilishing a Basic Progressions

(setf chordprog (chordize (list Srm7 S7M Trm7 T7M Tam7 S7M)))

;;;Repeating and transposing the progression

(setf chordtrp-rpt (pitch-transpose-repeat '((0 3 5 4) (0 2 -2 -1) (0 5 1 -2) (7 12 10 -3)) chordprog))

;;; Making suitable voicings to the progression

(setf chordprogdrop (chordize-list
             (pitch-transpose-n 
              '(0 -12 0 0)
              (pitch-melodize chordtrp-rpt))))

;;;Using these dropped chords as the source

(setf chordprgtrp chordprogdrop)

;;;Opcionally with more Voice-Leading, with a smooth transition between the chords

;(setf chordprgtrp (chord-closest-path (car chordprogdrop) (gen-divide 4 chordprogdrop)))

;;;Counting the number of chords to make rhythm repetitions

;(setf times (get-count (get-count chordprgtrp)))

;;;Optionally setting manually the repetitions

(setf times 24)

;;;Eachnote assigned to a voice

(setf voz1 (flatten (pitch-demix 1 chordprgtrp)))
(setf voz2 (flatten (pitch-demix 2 chordprgtrp)))
(setf voz3 (flatten (pitch-demix 3 chordprgtrp)))
(setf voz4 (flatten (pitch-demix 4 chordprgtrp)))

;;;optionally processing the ambitus of the voices

;(setf vozamb1 (ambitus '(c4 c5) voz1) vozamb2 (ambitus '(f3 c5) voz2) vozamb3 (ambitus '(g3 g4) voz3) vozamb4 (ambitus '(c2 e3) voz4))

;;; Or setting to instrument's ranges

;(setf vozamb1 (ambitus (ambitus-instrument 'flute) voz1)vozamb2 (ambitus (ambitus-instrument 'oboe) voz2) vozamb3 (ambitus (ambitus-instrument 'clarinet) voz3) vozamb4 (ambitus (ambitus-instrument 'bassoon) voz4))

;;;or just using the resulting drops as given

(setf vozamb1 voz1 vozamb2 voz2 vozamb3 voz3 vozamb4 voz4)

;;;RIT

;;;one rhythm to all (for checking the "chorale" writing)

;(setf r1 (gen-repeat times '(q)) r2 (gen-repeat times '(q)) r3 (gen-repeat times '(q)) r4 (gen-repeat times '(q)))

;;;Doing an homorhythmic section (all instruments play the same rhythms

(setf homorhy (gen-repeat times '(q -q e q e h h -s s s s)) 
r1 homorhy
r2 homorhy
r3 homorhy
r4 homorhy)

;;; Articulation for the homorhytm

(setf arthomo '(ten stacc ord stacc ord ord leg leg ord))


;;;OMN ASSEMBLAGE of the Lines

(setf vozomn1
(make-omn
 :length r1
 :pitch vozamb1
 :articulation arthomo
 :velocity (rnd-order'(p))))

(setf vozomn2
(make-omn
 :length r2
 :pitch vozamb2
 :articulation arthomo
 :velocity (rnd-order'(p))))

(setf vozomn3
(make-omn
 :length r3
 :pitch vozamb3
 :articulation arthomo
 :velocity (rnd-order'(pp))))

(setf vozomn4
(make-omn
 :length r4
 :pitch vozamb4
 :articulation arthomo
 :velocity (rnd-order'(pp))))

;;;---------------------------------------------------------
;;; SCORE
;;;----------------------------------------------------------

(def-score voices
           (:title "Piano-Red-4-Voices"
            :subtitle "Estudos Polifônicos"
            :composer "Julio-Herrlein"
            :key-signature 'atonal
            :time-signature '(4 4)
            :tempo '("Meditativo" q 60)
            :layout (piano-solo-layout '(pno-rh1 pno-rh2) '(pno-lh pno-lh2)))
  
  (pno-rh1 :omn vozomn1 :channel 1 :sound 'gm :program 'Violin :volume 100)
  (pno-rh2 :omn vozomn2 :channel 2 :sound 'gm :program 'Violin :volume 70)
  (pno-lh :omn vozomn3 :channel 3 :sound 'gm :program 'Viola :volume 80)
  (pno-lh2 :omn vozomn4 :channel 4 :sound 'gm :program 'Cello :volume 80))
  

 

Link to post
Share on other sites
  • 10 months later...

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...