RANDOM MUSIC PROJECT
by Lena Sheridan
Abstract: 10 midi instrument pieces were randomly generated by a randomising program I created. The program selects from multiple datasets of musical variables to generate a 32-bar length piece. Following the initial random selections to establish the format of the piece (intstrument, tempo, time signature etc.) each algorithm was run for note value and pitch simultaneously and entered manually onto a score. The midi was then input into Ableton and preset instruments were selected to play the piece.
1) I selected the following values to determine the initial format of the piece:
- Tempo (from data set of 40-200bpm in units of ten)
- Time signature (2/4, 3/4, 4/4, 5/4, 6/8, 7/4 or 9/4)
- Instrument (piano, organ, e-piano, flute or marimba)
I pre-set each piece to 32 bars: at first an arbitrary number, which then felt like a good song length, which then also turned out to be half of 64 which is the bit size of a modern computer processor. Each piece varies in actual length depending on tempo and time signature.
2) Treble clef notes were selected first. Notes were randomly selected, drawing simultaneously from 2 data sets:
- Pitch (from data set middle C to upper B)
- Value (quaver, crotchet, minim or semibreve). Anything faster than a quaver, as well as dotted note values, were not included.
One 'rest' option was also included in the pitch list, which followed the algorithm to 'if pitch, then <note value>' to then determine the length of the rest. This meant that there was as equal a chance of a rest being selected as a particular note value.
3) After each note was selected, it was notated manually into MuseScore. Nothing other than what was randomly selected by the program was added to the melody.
4) The next step was bass clef. The bass notes were selected from a data list of pitch only (from lower A to high G) and an automatic note value of one bar length was selected. It was my conscious decision to make each bass clef note one bar length. I felt that this was important for two reasons:
a. The piece would be too complex with two irregular melodies, and
b. Having an equal note value for each bass clef note would give the piece a sense of the time signature which would otherwise be unclear.
5) After the score was completed, it was exported as a .mid file and imported into Ableton Live 9 Suite. Midi instruments were selected to play the piece. Treble clef was panned to ~10% right and bass clef to ~10% left, volumes were corrected, some reverb was added to create a more acoustic sound and minor volume fading was inserted at the beginning and end of the piece. The audio file was exported as .wav file and filed into a chronological series of random music pieces.
Atonal and Tonal Pieces
The first ten pieces are atonal, meaning no key signature was selected and each piece consists purely of accidentals. Pieces #11 to 20, however, are tonal, meaning they were made using a key signature. The key signature was selected randomly along with the other values at the beginning of the protocol, and was selected from all possible keys.
Notes were then selected via the above protocol except pitch had only the values C,D,E,F,G,A and B, which, when added to the score, would comply with the assigned key signature. No accidentals were used for the tonal pieces as this proved too difficult to program (if 'accidental' was placed in the data set of note pitches, the algorithm had to follow that 'if accidental, then <specific accidental, e.g. c natural>' - but if c natural were already in the assigned key signature, it would also have to state that 'if c natural is already in key signature, select from the following data subset', at which time the algorithm would move along to another subset of data. There would have to be multiple subsets (for each accidental that happened to be already in the key signature) and so this process would be really complex. In addition to this problem of complexity, my reasoning was also that it would be nice to have an entirely tonal piece without accidentals to contrast with the first 10 atonal pieces.)
Why Treble and Bass Clef?
I chose the format of treble and bass clef primarily because I’m a pianist and this is what I’m familiar with. I know that technically different instruments have different clefs with different key assignments, however since the notes are selected randomly, and since they are being exported as midi and used in the same way for each instrument, I didn’t feel it was too important to use instrument-specific clefs. At some stage, I would like to find instrumentalists to play these pieces, and at that point I may change the scores to suit their respective instruments.
End of the Piece Rule
If at the end of the piece, the last note selected exceeded the possible note value, it was not included. Possible notes were inserted up until the very last beat of the last bar.