The legacy of MIDI : new directions from Michael Van der Aa and Nick Collins : Reinventing the Classical Duo, Trio and Quartet : Boolean editors to Real-time composition systems : Touched by Machine? : Duo Batterie and Serenade : Trio Lyrique and working with MIDI percussion : Trio Lento for Piano Trio : Le Jardin Sec for string quartet : visual scanning in score-scripts : a prelude to automated scoring and control of activity and silence : the rest in scoring of pitch : Objects of Curiosity (SuperCity) – a commission for the Kronos.
‘The past is another country : they do things differently there’. This quote opens both the novel by L.P.Hartley and David Lean’s film The Go Between. It is strangely apposite when considering the 30-year development of visual programming connected with the MIDI protocol. This data protocol has been taken as a given in this text so far because, despite the many techno-sages who denounced its future and relevance to music composition in the 1990s, it has survived if only as an effective control mechanism for parametric elements in music. It also remains because it is now embedded within the operating systems of computers, and most composers are conversant with its language as an adjunct to enabling effective simulation and referencing of the standard musical instrument library of digital samples. And, as this instrument library has developed to include every nuance of string, wind and percussion technique in a sampled form, so there has been an intriguing convergence in new and web media realisations of music between human performance with ‘real’ instruments and sampled ‘additions’.
The music of Dutch composer Michael Van der Aa exemplifies such a convergence in his multimedia work Up-Close, winner of the 2013 Grawemeyer Award for Musical Composition. This work makes use of a unique software application called the Double A Player able to handle to playback of samples in a musical and flexible way.
The composer and software developer Nicholas Collins has taken a similar step in technological terms with his work Concerto for Accompaniment for oboe and automatic accompaniment system. He has also used Open Sound Control (OSC) to link to the real-time synthesis of SuperCollider in a duet for harpsichord and computer called Sustituet.
The idea of the duo, the trio, the quartet now goes beyond the Classical nomenclature of the Duo for violin and piano, the Piano Trio and the String Quartet based predominantly on Sonata, Ternary and Variation forms. From the contemporary reinvention of these forms there is much for composers to learn and emulate. In the Duo domain, works such as Elliott Carter’s Enchanted Preludes, The Axe Manual by Harrison Birtwistle and Magnus Lindberg’s Gran Duo take a wholly new look at the concept of the Duo.
In this section of Composing How and Why you’ll discover there is a looking backwards alongside a contemporary update in writing for these, now freer, combinations of Duo, Trio and Quartet.
One of the advantages of working with a CAC system with an open architecture, one that allows the composer to make bespoke composing tools, is that a measure of continuity can be achieved as the technology develops. If a composer has been using a particular tool or function, it can usually be replicated. This has certainly been the case as I’ve attempted to move with the technology since the 19080s.
My interest in CAC came out of experiments with Boolean editors found in the editing screens on early MIDI sequencers, those complex pages of AND, OR, NOT templates which allowed, to my fascination, whole-scale transformations of material.
I began composing pieces from tiny pieces of data made with step time or quantised entry (i.e pitches with perfect note-lengths). The next step was discovering and working with real-time composition environments such as David Zacrelli’s M, Jam Factory and Real-Time. These were the precursors of today’s Live Coding applications and allowed sophisticated composing operations that brought together the ‘off-line’ and the ‘real-time’. Before my final move into programming languages, and script-based programming in particular, I found Emile Tobenfeld’s DR.T suite of applications. Of these the Programmable Variations Generator (PVG) introduced so many of the function types I was later to find present, and even be able to build myself, in script-based applications.
A sequence of compositions called retrospectively Touched by the Machine? was result of this transitionary stage from the Boolean editor to the mix of a menu-driven programming able to interact with real-time on-the fly decision-making (improvisation by another word). The title came from a paper in Computer Music Journal (1995) by the composer Stephen Travis Pope in which he collected responses from four composers to questions he had devised on the impact of MIDI technology. Had these composers been ‘touched by the machine’ ? In a series of four extended compositions I set about answering Pope’s questions: DUO, TRIO, QUARTET, EDGE. Whilst I still have the computer (an Atari ST), the software and all the relevent files it would prove a mammoth task to annotate this work, though I have been intrigued whilst reviewing these musical scores just how much I can recognise as distinct CAC processes and generation techniques.
Duo Batterie is a short study for piano and marimba. It features a mix of scales, rhythms articulated by the use of diminution and augmentation, and carefully positioned pauses and dynamics. It is published as one of the Duo pieces in A Selection of Sextets as it features two of the sextet’s instrumentation.
The score-script reveals that the entire rhythmic scheme, in three sections, was devised first. Piano and marimba play in rhythmic unison throughout. The first section takes a 5/8 phrase and generates twelve variations of different metric sizes. The expression is surrounded by a length-diminution function making changes to the fifth and eighth variants, turning 1/8ths into 1/16ths.
The second section adopts another approach to rhythmic generation using substitute-map. This time a rhythmic sequence in metric groupings is written in OMN rhythmic symbols and numbered one to eight. An arrangement of integers (between 1 and 8) is created and using the substitute-map formula evaluated, with sections (5 9 14) processed by length-augmentation to the power of 2 (doubled):
This pattern is spanned to the metric groupings, each grouping transposed according intervals that reflect those in the pattern itself. The first expression shown below is by way of an experiment: to audition the effect of the Slonimksy pattern being transposed sequentially. The actual transposition list belongs to variable rows-1. This material for the piano left-hand has each metrical group (bar) reversed by the function gen-retrograde and the pitch c4 removed from selected sections by filter-remove. This creates a heterophonic accompaniment to the marimba and piano right-hand:
A further duo from the Selection of Sextets is titled Serenade and scored for alto-flute and bass clarinet. This is an example of how computer-assisted composing can realise a very mixed coming together of gestural ideas, then extended and transformed by parametric functions. The score contains several functions not mentioned so far in this text. It also makes considerable use of tempo changes and gentle polyrhythms.
These opening bars are an exact rendering of the score-script as it appears in Opusmodus. Although it’s possible in some CAC systems to code all legato and staccato detail – so necessary in music for wind – it is such a mammoth task that there’s a lot to be said to putting in such detail at the score writer stage:
This approach to making transpositions has been met before, only here the transposition series is being read from the pitch-series itself – as a series of intervals between pitches. As intervals, the variable sl-34 would read 0 1 3 6 8 11.
The variable source-1 takes the Slonimsky pattern and turns into two rising scales, of one octave, and of two octaves:
The function gen-curve enables the composer to produce a wedge-like symmetrical arrangement of pitches, a device common to the music of Harrison Birtwistle and a particular feature of his first published work Refrains and Choruses. The function pitch-ornament helps avoid any repeated pitches in the output. Here’s a simple description of how gen-curve operates as a symmetrical process:
To create the drone in the first bar of the clarinet part, the function length-condense is used to calculate the drone’s length. It’s this kind of calculation that saves a lot of physical ‘counting-up’, and should the content of the source material be changed the length of the drone is automatically adjusted. Let’s place both expression together to see how they work. Both outputs are in OMN format:
Here is the complete code for the first section of just two bars! All the final variable names are coded with and affix c or f. Such naming helps when assembling the parts that make up the final score:
The next section to explore is from bar 19 to 31 where both instruments hocket between each other. The tonality created by the Slonimsky pattern is shifted here upwards by a major third. The two instruments share the same play of pitches but are then separated into two parts by filtering three of the six possible pitches. The independent rhythms are created by the gen-binary-remove function. The extract below picks up from the last bar of the previous section:
The original tonality reasserts itself at bar 39 where until bar 51 the music is a graceful ‘serenade’ , a melody with a gentle accompaniment in triplet figures, swapped over between the instruments at bar 45:
The flute part from bar 45 is created using a special extended repeat function, pitch-repeat3. What happens here is that a repeat figure (the triplet arpeggios) is repeated twelve times, but on each repetition the repeat figure is shuffled. In the code below the melody and accompaniment figures are set up in each instrument, and then on the’ swap over’ the melody is inverted and the accompaniment repeated, albeit on a different instrument. The music example shows where the swap-over occurs and the inverted melody begins:
Trio Lyrique is a miniature for alto-flute, bass clarinet and percussion (marimba and small drums). In four sections the music evolves from the pattering rhythms of a percussion part:
Mapping to alphabetic symbols makes it possible to almost ‘play’ each bar as the symbols are entered from the computer keyboard. Each line in the code ‘is’ a bar / metric grouping. The result is this:
Of course no percussion part would be written like this! The mapping of percussion samples in the General MIDI way of things may allow us to audition what we write, and make performance on a piano keyboard controller easier, but such pitch arrangements makes a nonsense of the conventions of percussion scoring. We have to go to a scorewriter to effect a further remapping, as the example below demonstrates:
Here is the completion of the code of the first section of the percussion part:
For the pitch material the Slonimsky Thesaurus gives the composer what amounts to a whole-tone scale:
The extend-scale function gives the composer an extended tonality. This is further developed with another home-made function random-outside based on an idea by the Norwegian composer Jesper Elen. See and hear this function used in the opening movement of Nigel Morgan’s Sense of Place:
But we need to return to the rhythmic side of things to see how these pitches are mapped to the note-lengths assigned to alto-flute and bass-clarinet. Against the pattering sixteenth-beat rhythms of the percussion part, the wind instruments play slower and syncopated rhythms. The pattering rhythms give the length of each metrical group (or bar) but we want to see how different rhythms of note-length might ‘play’ inside these groupings. The function length-span allows the composer to do this:
In the following expression the extend-scale sequence is used as the map for the 33 vectors from the gen-white-noise fractal. The rhythm above is mapped with the function span onto the pitch stream, and then the function gen-curve is applied as a melodic ‘wedge’:
This completes a view of the first of the four parts of Trio Lyrique. Parts 1, 2 and 4 are similar in structure with part 3 being a series of short duets between one of the wind instruments and marimba.
Trio Lento is the second trio that features in A Selection of Sextets is for the Classical Piano Trio of violin, violoncello and piano. Again, it features a Slonimsky pattern, but this time the pattern is used to generate harmonic sequences played as arpeggio patterns by the piano. The violin and cello play sustained pitches picked up from each arpeggio.
In this expression above there’s pitch-transpose-n again but it’s rotating the pitches (but not their octave position) through six repeats. Thereafter, gen-palindrome-rev takes over at bar 7, reversing the transposition list:
Meanwhile the violin and cello search the piano’s arpeggio figure in each bar and pick a note to sustain:
For an example of composing for quartet we’ll examine a work written in 2003 in the computer-aided composition system Symbolic Composer (SCOM). Le Jardin Sec was one of a group of compositions that prepared the ground for the composer’s Six Concertos for self-directed orchestra.
Symbolic Composer has proved itself to be a very efficient and robust CAC environment with an open architecture, making much of the code for system functions available to the composer. Unlike Opusmodus, which is a closed system in that respect, Symbolic Composer allows composers to extend and customise existing functions and invent bespoke functions based on learning how the many systems functions are written. You have to know a lot of LISP to write functions in Opusmodus!
There has already been discussion of the limitations script-based programming has for composing large ensemble or orchestral music. With Symbolic Composer’s unique visual timesheet, building and viewing large-scale structures becomes a possibility. But could both instrumental activity (the play of sound with silence) be brought together with the algorithmic selection of instrumentation? In the first section of Le Jardin Sec this became a reality, the program ‘choosing’ where and how the music should play and in what scoring combination of four instruments.
Alongside the downloadable published score of Le Jardin Sec there is a detailed annotation by Phil Legard of the first section of the work. In this, the music is a single organic melody created from a stream of vectors generated from a white-noise fractal, and thus is similar to many pieces already featured in previous sections of this text. This annotation reveals that a major difference in approach to the style of parametric composition with Opusmodus. In Symbolic Composer there is an additional parameter of tonality. This enables the composition to take place with alphabetic symbols rather than seven pitch letters (with sharp or flat signs) and carrying octave identifiers. Initially daunting for the composer this can be immensely liberating once the idea is grasped.
This diagram also reveals that the melodic stream, a kind of ’nuclear’ melody often found in Balinese gamelan music, is ornamented. These ornaments are created in a similar way to those in the String Trio (2012). Here’s a further diagram from Phil Legard’s annotation:
One of the unique aspects of this score is the way that in partitioning the symbol stream (with a function called create-lists) the annotation describes how repetitions of phrases found in the stream can be developed. This makes for a valuable component in the composition process, particularly in styles of composition where repetition is valued.
In previous examples where a fractal generation has featured a binary conversion has been used to identify where phrase boundaries occur. In Symbolic Composer this is unnecessary because in symbolic notation there is a rest symbol which can be included in a pitch stream. So a vector phrase converted to symbols might be (l l d e f g g h) would when scanned by the function find-change produce (= l d e f = h), where in Opusmodus that change would be (0 1 1 1 0 1). More significant still with this rest symbol present it is possible to align symbolic material more easily. As many composers know well, visual scanning of material, be it staff notation or code, is very important. Sadly, the lack of such visual alignment is one of the few problems found in reading Opusmodus score-files. Here’s a further example from the annotation that highlights the advantage of the rest in a symbolic display of pitch:
Compare the above display with the opening bars of the full-score. As we go further into this section we’ll meet this form of symbolic notation again in a discussion of how scoring and the play of sound and silence can be algorithmically controlled.
For another, and larger view of such composing for string quartet within a CAC environment see the composer’s Objects of Curiosity (SuperCity) written for Kronos in 2005:
Links and References
Harrison Birtwistle – The Axe Manual, Refrains and Choruses
Elliot Carter – Enchanted Preludes
Nick Collins – Website
Magnus Lindberg – Gran Duo
Nigel Morgan – Touched By Machine?, Opusmodus Scores, Sense of Place, Le Jardin Sec, Six Concertos, Objects of Curiosity, String Trio
Opusmodus – Website
Symbolic Composer – Website
Stephen Travis Pope – Touched By Machine? – Composition and Performance in the Digital Age
Michael Van de Aa – Up Close, Double A Player