Multimodal Media Madness - Winter Semester 2006/2007

Assignment 1 - Hello, Max!
Due on Sunday, November 5, 2006 @noon

Description

In this assignment, you will be introduced to Max/MSP and the fundamentals of MIDI.

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 found here on the lab machines:

/Applications/MaxMSP 4.3/Documentation/Max43TutorialsAndTopics.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.

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.


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

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 1"; 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.

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.