Jump to content
Sign in to follow this  
Stephane Boussuge

Prelude for Piano

Recommended Posts

Stephane,

 

I've been experimenting and analysing this marvellous prelude. I'm very curious if you could tell a bit more about the composing decisions behind the following material:

  • how did you choose the transpositions: 
    ;; +6 -6 +4 +4 -9 +9 -6 -6 +5 +4 -6 +1 -1 -1 0 5 0 +5 -2
    (setf trsp2 '(-2 4 -2 2 8 -1 8 3 -3 2 6 0 1 0 -1 -1 4 4 9 7))

     

  • Where do these wonderful voicings of Dim chords with an added major fourth come from? Did you use an algorithm to generate them? Hand written? What's the idea behind the transpositions?
    (setf closest-hpath2 '((g2cs3g3c4bb4e4) (g2cs3fs3cs4bb4e4fs5) (g2cs3g3c4bb4e4)
                           (gs2d3f3b3b4e4e5) (gs2d3f3b3bb4f4) (gs2cs3gs3b3cs5f4d3)
                           (gs2d3f3b3bb4f4) (fs2c3a3c4f4eb4f5) (fs2c3fs3b3a4eb4)
                           (gs2d3f3b3b4e4e5) (gs2c3fs3eb4a4eb4) (fs2d3a3c4a4eb4d5)
                           (g2cs3bb3bb3eb5e4) (fs2c3a3d4a4eb4d5) (gs2cs3gs3b3d5f4) 
                           (gs2cs3gs3b3cs5f4d3) (g2cs3fs3cs4bb4e4) (g2cs3fs3cs4bb4e4fs5)
                           (fs2c3fs3b3a4eb4) (g2cs3a3bb3a4e4e4)))

     

Share this post


Link to post
Share on other sites

Dear Wim,

thank you for your kind words.

the transposition was chosen by hear.

 

About the harmonic path, it come from my original idea mat1:

(setf mat1
      '(#|1|# (ped e a2 p ds3 a3 d4 q c5 fs4 ped+tie)
        #|2|# (ped w fs4)
        #|3|# (ped e a2 ds3 a3 d4 q c5 fs4 ped)
        #|4|# (ped q d5 h. c5)
        #|5|# (ped e a2 ds3 a3 d4 q c5 fs4)
        #|6|# (w fs4 ped1)
        #|7|# (ped e a2 ds3 a3 d4 q d5 c5 ped)
        #|8|# (w fs4 ped)
        ))

;;; get the harmonic content from basic material mat1
(setf hmat1 (get-harmonic-path mat1 :chord t :unique t :time '(ww)))

 

After this extraction, i apply some transposition to this material (extended by gen-trim):

;;; Transpose list to apply to harmonic path
(setf trsp2 '(-2 4 -2 2 8 -1 8 3 -3 2 6 0 1 0 -1 -1 4 4 9 7))
(setf path2 (pitch-transpose trsp2 (gen-trim 20 (mclist hmat1))))

And finally, i use chord-closest-path function for the voice leading:

;; chord closest path generation to use as harmonic material for variation 3
;(setf closest-hpath2 (chord-closest-path (car path2) path2))

And i've added the output of this function directly in a variable because the computation time for chord-closest-path is a bit long and i like to be able to run my scripts very often when composing (for reading the score and hearing) and need fast evaluation:

(setf closest-hpath2 '((g2cs3g3c4bb4e4) (g2cs3fs3cs4bb4e4fs5) (g2cs3g3c4bb4e4)
                       (gs2d3f3b3b4e4e5) (gs2d3f3b3bb4f4) (gs2cs3gs3b3cs5f4d3)
                       (gs2d3f3b3bb4f4) (fs2c3a3c4f4eb4f5) (fs2c3fs3b3a4eb4)
                       (gs2d3f3b3b4e4e5) (gs2c3fs3eb4a4eb4) (fs2d3a3c4a4eb4d5)
                       (g2cs3bb3bb3eb5e4) (fs2c3a3d4a4eb4d5) (gs2cs3gs3b3d5f4) 
                       (gs2cs3gs3b3cs5f4d3) (g2cs3fs3cs4bb4e4) (g2cs3fs3cs4bb4e4fs5)
                       (fs2c3fs3b3a4eb4) (g2cs3a3bb3a4e4e4)))

SB.

Share this post


Link to post
Share on other sites

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.

Sign in to follow this  

  • Similar Topics

    • By JulioHerrlein
      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
       

      str_4tet_opusmodus.mov ;;;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))  
    • By Stephane Boussuge
      Hi,
       
      A short study about some harmonic procedures and unfold set simple usage.
       
      SB.
       
       
      MelodieFltPia280819.mp3
      MelodieFlutePiano280819GM.opmo
    • By Stephane Boussuge
      Hi, here's a new piece with score.
       
         
       
      All the best to all of the Opusmodus users !
      S.B.
       
      18/07/19 => Small update, missing function added.
       
      PolygonsV1-05-Forum.opmo
      Polygons1-05.mp3
×
×
  • Create New...