Heterophony This is a study I made in 2012 using live coding and live algorithms. The idea is to imitate and transform melodic lines and expand them for several voices.
The expansion is horizontal (melodic) as much as vertical (chords, harmony).
The original rhythmic cells are developed into sub groups that have their own time division, creating parallel versions. The focus changes from one stream to the other, sometimes going back to the original, sometimes exploring some of the parallel ‘stories’ while at any time, the original material remains present. All these changes are made in real-time using the live coding system discussed in the section ‘The Live Coding Orchestra’. Heterophony-Wikipedia
Harmonic Tonality– Calculating harmonicity in relation to the Harmonic Series Melodic contour variations – A melodic contour is the shape of a musical phrase according to its up and down motion. Inspired by the music of Ruth Crawford Seeger, I have written a few algorithms for melodic contour operations: analysis, imitation, variations, and indexing into a database of contours used within Markov system.
This short sample of music uses a random generation process for choosing the music notes from a constantly evolving hamonic field; by applying certain contours, we obtain a sense of familiarity with certain shapes even when other music parameters like rhythm and harmony become more complex.
Left: The melodic contour of the first five notes is applied to the next five notes which are totally random but seem related. Right: The same melodic contour is used again later on on new notes issued from new harmonic family.
Harmonic Morphing Starting with an original scale: [0,3,7,8,11,14], I build a large database of derived harmonies: [ -11, -8, -4, -3, 0, 3, 7, 8, 11, 14 ], [ -10, -7, -3, -2, 1, 4, 8, 9, 12, 15 ], [ -9, -6, -2, -1, 2, 5, 9, 10, 13, 16 ]. My program then finds common notes between these sub groups and start linking them. [ -4, -1, 3, 4, 7, 10, 14, 15, 18 ] > (14,15,18)(8,16,19) >[ 8, 11, 14, 15, 16, 18, 19, 22 ], [ 5, 8, 12, 13, 16, 19, 23, 24, 27 ] The notes that were in common between two consecutive groups will next be avoided and only the new notes will be used when searching for a new harmonic group, creating a chain.
Markov Rhythms – Markov chains and probabilities to create a rhythmic sequence, automatically arrange and orchestrate it for several voices. 12 Tone variations – A Twelve Tone series, also called dodecaphonic or Tone Row, already contains much melodic variation because all the possible notes are present. This paragraph describes some techniques to create variations from the original which have audible resemblance to the original, without having to use the usual retrograde or inversion techniques. Segment Transposition. The idea is to jump ahead or backwards into the sequence. We can still recognize the intervals between adjacent notes but the material is refreshed because the intervals are heard at a different range due to transposition.
Whenever there is a change from a section to the next, continuity is maintained because we either use the next logical note or the next logical interval.My original series is a ‘symmetrical series’ made of different intervals: 1, 2, 3, 4 and 6 semitones
Original = [F# C D A A# C# F B G E D# G# (F#…)]
1/ [F# C D A] (next in series: A#)
2/ [B G E D# G# F#]
3/ [D A A# C# F B]
Joining the segments
first we transpose each new segment to have its first note equivalent to what would be the next note for the previous segment.Segment 2 is transposed to change its first note B, into A#, the next note after segment 1.
[B G E D# G# F#] -1 becomes: [A# F# D# D G, F]we join 1 and 2:
[F# C D A] [A# F# D# D G, F] after F, the last note comes B in the original series, so we transpose the third segment so its first note becomes a B: [D A A# C# F B] -3 becomes: [B F G A# D G#] which we join to the previous two segments to obtain our variation: [F# C D A] [A# F# D# D G, F] [B F G A# D G#] Original = [F# C D A A# C# F B G E D# G#] Transposed segments = [F# C D A A# F# D# D G F B F G A# D G#]musical examples to be updated soon…