History and Background
What Does MSP stand for?
Officially, nothing. But consider these possibilities: Max Signal Processing and Miller S. Puckette, the original author of Max. Also, it's the airport code for Minneapolis, where David Zicarelli grew up. Max is named for Max V. Mathews, computer music pioneer and sailing enthusiast.
But what is Max and where can I find out more about it?
Max is a graphical programming environment for music and multimedia. You can get more information about Max (and MSP) on its
product description page or download an evaluation version on the Max
download page.
Where did Max/MSP come from?
Max was first developed for the Macintosh in the mid-1980s at IRCAM by Miller Puckette. In 1989, IRCAM started work on a real-time synthesizer card for the NeXT computer produced by Ariel called the IRCAM Signal Processing Workstation (ISPW). Puckette ported Max to the NeXT and ISPW and added a set of objects to do audio on the card. Max combined with the audio was known as Max/FTS and was widely used at IRCAM and about 30 other centers and individual studios around the world. A single card with two processors was about $12,000, not including the computer.
Max was first released commercially by Opcode Systems, Inc. in 1990. It was chosen as Software Innovation of the Year by the readers of Keyboard Magazine in 1991. Since 1999 it has been published and supported by Cycling '74.
In 1996, Miller Puckette, now at the University of California San Diego, began developing a new program, Pd or Pure Data, aimed at the new generation of powerful microprocessors. The goals of Pd are different than Max/FTS, but it shares the ability to do real-time signal processing by connecting objects together. Initially developed on the SGI platform, Pd now runs on Windows, Linux, and Mac OSX. Shortly after Pd was started, David Zicarelli decided to add audio processing for Power PC computers to the existing Opcode Max environment. Max/MSP is the result. It uses the Pd signal processing infrastructure, and adds features inspired by Max/FTS but not yet implemented in Pd, along with new innovations and user-interface enhancements appropriate for the Opcode Max environment.
How does Max/MSP compare to other audio programs currently available?
We can divide the currently available programs into three categories: synthesizers modeled on MIDI gear, sound editors and processors, and what could be called audio rendering environments.
Native Instrument's Kontakt and MOTU's MachFive are examples of the first category. Max/MSP is clearly harder to use than these programs, which could be described as software imitations of hardware samplers. Max/MSP lets you play back samples, just as these programs do, but it is not optimized for that function. Instead it is aimed at people who are not satisfied with MIDI-style playback as a way of realizing their music, so it emphasizes real-time control and endless customization. Another comparison to make is that due to the use of specialized and computationally unchallenging algorithms, dedicated synthesizers probably have more "voices" than a completely flexible architecture such as Max/MSP. But if these "voices" are not the sounds you want to hear, that probably doesn't matter.
Max/MSP is not an audio editing program. It does all its processing in real time, and when you use it, you build a dynamic process--an instrument if you will--whereas an audio editing program is designed to make a static recording stored on your hard disk. You can certainly use the two together, taking hard-disk audio files and using them as source material for an Max/MSP real-time process, or interacting with an Max/MSP process and recording it, then processing the result further in an audio editing program.
MIT's
CSound and the open source
SuperCollider are programs that let you specify synthesis and signal processing algorithms using a text-based language. We could think of these programs as audio rendering environments because the computer is used to realize a description of a sound or process. The main difference between Max/MSP and these programs is ease and immediacy of use. We think Max/MSP is easier to learn than text-based programs because it offers immediate feedback and because it can be easier to conceptualize a signal processing algorithm in a graphical form than as text. It is also arguably easier to extend Max/MSP with new audio device plug-ins, abstractions and C-language signal processing externals. Both SuperCollider and CSound can be extended, but you may need to compile a new version of the entire program in order to add new capabilities. Max/MSP users have written well over a hundred signal processing external objects to date; many of them are listed on our
Resource Guide.
to top