Music 171 homework 8
This assignment is to put together a generative algorithm for melodies. It
is an example of what is called a sieve. The composer Iannis Xenakis used a
variation on this technique in some of his compositions. Here we'll work out a
simple way to use a sieve to make two melodies interlock together into a longer
one.
To make the patch:
- Make any monophonic synthesizer you like; you can re-use one that you
made for an earlier homework, or else try something new and original. (Hint:
start with an osc~ or phasor~ object and just try adding things and see what
you can come up with; this might be useful preparation for your final project.)
Make a 'receive' object that expects MIDI pitches and plays notes of a fixed
duration.
- Make two arrays, or two text objects (whichever you prefer), one containing
the numbers 40, 0, 0, 0, 0, 0, 50, 0 (eight in all) and the other containing
the numbers 0, 52, 54, 56, 57, 54, 0, 56. Each of these, if played separately,
would make a simple, rather boring, loop of length 8 (so that for instance
the first one will have two notes in it and 6 rests).
- Make an 8-step sequencer that outputs the numbers from the first sequence,
one every 200 milliseconds. Using a moses object, filter out "0" pitches (use
"moses 1", because "moses 0" will still pass 0 to its greater-or-equal outlet).
Send the numbers greater than zero to the synthesizer. You should then hear a
repeating pattern of two notes every 8*200 milliseconds.
- Make a second 8-step sequencer that outputs the numbers from the second
sequence whenever the first sequence outputs 0. You will get 6 outputs from the
second sequencer each time the first one cycles through its 8 steps. For each 4
repetitions of the first sequence, the second one will repeat three times. Send
the nonzero outputs from this second sequencer to the synthesizer as well (but
not the zero outputs).
- Make an on/off toggle that starts and stops the first sequencer. Using a
trigger object, arrange so that when the toggle is turned on the counters (the
float objects) used in both sequencers is set to 0 before starting the
sequence. The first three outputs should then be 40 (first pitch of the first
sequence), 0 (first pitch of the second sequence), and 52 (second note of the
second sequence). When the on/off toggle is turned back off the sound should
turn off (it shouldn't just hang forever).
The output should sound something like this
(but the particular sound to use is up to you; for this example I used
subtractive synthesis).
back to music 171 main page