Assignment 4 - Hello, Max!
Due on Sunday, November 23, 2008 @midnight

Description


In this assignment, you will be introduced to Max/MSP and the fundamentals of MIDI. You already know visual programming from Quartz Composer, so you should grasp the concept quickly.

The first thing you should do is familiarize yourself with Max. Max/MSP comes with some excellent tutorials to get you started. We recommend you go through at least the first four tutorials; more if you have the time. The tutorial and other documentation can be found on the notebooks:

/Applications/MaxMSP 4.6/Documentation/Max46TutorialsAndTopics.pdf
Max is a great application for quickly developing computer music applications using MIDI. If you're not familiar with MIDI already, here is a good introduction (wikipedia.org).

Task


Your assignment for the week is to create a Max/MSP patch that contains a virtual piano keyboard and outputs MIDI notes in response to mouse clicks. The MIDI note should sound for one second on each mouse click. Also add a slider that allows the user to change the instrument.

This assignment is to be completed in groups of 2. Make sure to work with new partners.

Some objects that you may find useful: kslider, makenote, noteout, pgmout.

To hear the MIDI output from Max, you need to have a software synthesizer, since the soundcards on Macintosh computers do not have a built-in MIDI synthesizer. We suggest one of the following applications:

GarageBand is already installed on the lab machines (you can find it under /Applications/GarageBand). When you open GarageBand with a new song, it will have one track called "Grand Piano". Double-click on that track, open the details triangle at the bottom of the window and set the ``Generator" pop-up menu to "DLSMusicDevice" (see picture, below). This will allow you to use MIDI control messages to change the instrument.

garageband_settings.png


SimpleSynth is, as implied by its name, an easy to use software synthesizer. It is not installed just yet, but you can download it and copy the application from the disk image to your home folder. Once SimpleSynth is launched, you need to select the MIDI source called``from Max/MSP 1" in SimpleSynth (see picture, below).


Some ideas for extra credit for this assignment:

  • Play a note in response to a key press on the computer keyboard. For example, pressing the "C" key plays a C note, etc...
  • Play a chord in response to a mouse click on the piano keyboard. For example, clicking on the "C" key will result in a C3 and C4 note being outputted.
  • Play a sequence of notes in response to a mouse click on the piano keyboard. For example, clicking on the "C" key will result in the notes of the C major scale being outputted one after the other.

Submission


Email an archive of your assignment to This email address is being protected from spambots. You need JavaScript enabled to view it. before the due date. The subject of your email should be "M3 Assignment 4"; be sure to use this exact subject line as it will be used to filter assignment submissions for grading.

Your assignment archive should include your Max/MSP patch file. Include a short plain text README file that contains:

  • the names and email addresses of all group members
  • a short description of what your patch does
  • non-obvious things you did (if any)
  • if you did any extra credit work, be sure to tell us what you did


Be prepared to discuss your solution in the next lab.

Grading


The assignment will be graded on the following rough scale:

  • 1.0 - exceptional work that clearly went above and beyond what was given on the exercise
  • 2.0 - exercise was completed satisfactorily as per the assignment specification
  • 3.0 - exercise was completed, but has some problems
  • 4.0 - incomplete exercise
  • 5.0 - little or no effort was put into the exercise


Late assignments will be graded with a penalty of 0.5 per 24 hour period after the due date.