MUC4401: Composition of Electroacoustic Music
MAX Assignment No. 2
-
The purpose of this assignment is to build two patchers.
- allow a user to select the transposition amount
- show the transposition amount in half-steps (e.g. 12 equals one octave)
- play only the transposed note (omitting the original pitch)
- allow the user to select with a menu the target MIDI module via "midiinfo"
- display the original and transposed pitch with note name and octave
(1) Create a user definable MIDI transpose patcher. This patcher will:
| midiin | ![]() | |
| midiout | ![]() | |
| midiparse | ![]() | |
| midiformat | ![]() | |
| pack | ![]() | |
| unpack | ![]() | |
| number box | ![]() | |
| slider | ![]() | |
| midiinfo | ![]() | |
| umenu | ![]() | |
| button a.k.a. bang button, or loadbang | ![]() | ![]() |
| + and/or - (arithmatic objects) | ![]() | ![]() |
| comment box | ![]() | |
-
(2) Create a simple sequence patcher. This patcher will:
- allow a user to record and playback a single track of MIDI data
- allow the user to select with a menu the target MIDI module via "midiinfo"
- be able to save/load a sequence to/from disk
- provide an option to change the playback tempo via a slider
| midiin | ![]() | |
| midiout | ![]() | |
| seq | ![]() | |
| message box | ![]() | |
| slider | ![]() | |
| midiinfo | ![]() | |
| umenu | ![]() | |
| number box | ![]() | |
| button a.k.a. bang button, or loadbang | ![]() | ![]() |
| comment box | ![]() | |
Utilize the Clue Menu (found under the WINDOW menu) to identify the objects available in the palette.

BONUS: Combine the two above patchers to create a sequencer that will transpose the recorded MIDI data on playback.
















