×
Open-Source Projects DIY Blog

Max/MSP

What is Max/MSP? Max/MSP is a visual programming language for processing audio and video. It might be somewhat confusing for the average person to grok at first since it is is best known as tool for artists working in niche domains like noise or glitch art. The easiest way to get an idea of what it does is to start with a video. This is a demonstration of maybe one of the simplest configurations of what meets the definition of a subtractive synth.

As you may have guessed, Max 7 is a bit more than a programming language. It’s probably better to think of it as a programming environment. It has elements of an IDE, elements of a wysiwyg GUI editor, and elements of a library. You can design programs with it using predefined building blocks with a graphical drag and drop approach that feels similar to making diagrams in Visio. This is probably the way most people get started with it. It also supports scripting with JavaScript, albeit with some limitations, and you can even build your own extensions using Java and C/C++.

The individual blocks in the video are called objects and process the signal flowing through them. This can either be a data type (numeric, string, etc.) or audio signal. The ability to use Max to do regular computer-sciency stuff (event scheduling, operators, control flow etc.) combined with its ability to simplify DSP to where it's in reach for the average musician make a formidable combination for building a variety of tools.

In older versions of Max, there was the programming environment and the runtime environment. In newer versions, these are both the same thing, but there are limitations on saving and exporting patches like there were on the programming environment. Although the programming environment requires a license, for saving or exporting patches, the runtime is free to use with already existing patches. To get started, visit Cycling 74’s website and download a copy. Once you have installed it, you can open files with the .maxpat extension. You can find many premade patches on their forum. There is a world full of incredible musical instruments ready for you to use, the only barrier to entry is your willingness to learn computer science.