by jonathan barrios / September 23rd, 2019
What is Max/MSP?
Max/MSP also known as Max/MSP/Jitter is a visual programming language for music and multimedia. In the 90s, Max originally sent control commands through MIDI cables that were connected to other devices, like external synthesizers because Max couldn't handle internal audio processing. As computers became more robust, MSP(integrated audio signal processing) was added and Jitter(integrated video processing) followed soon after. Why is it called Max? Max was named after Max Mathews, a pioneer of computer music.
A Spectrum of Musicianship
In the context of electronic musicianship; we use code, UI or hardware to build patches that ultimately create sound, video, or a combination of the two. While the ability to read music, grasp music theory and express yourself on a musical instrument is helpful, it's optional for the scope of this tutorial.
- Install Max/MSP on your OS from cycling74.com
- Get an "Authorize Max" link by attempting to save a patch
- Follow instructions to start your 'Free Trial'
Max/MSP UI Overview
Max has a simple UI for great user experience, which has been true for me since verion 5. For example, the top left of the UI is a zoom tool and you can also use
z and the
z keyboard shortcuts to zoom in and out.
The top row is for building max patches; such as buttons, objects, and toggles to name a few. You can create a new
object by click on it in the top row or using the keyboard shortcut
Add a button by clicking on it and it appears in the main patching window. You can resize, style and customize the button's behavior. The keyboard shortcut is
(b) so you can just enter
'b' instead of clicking on the UI icon. You can delete objects by selecting them and clicking delete or right-click and select
delete. Create two buttons and try to connect them by connecting the bottom outlet to the top inlet of another object.
This patch cord will keep these objects connected. Click the top button and watch it activate the bottom button. The bottom will not activate the top button and that is how Max/MSP rolls. The graphical
top to bottom data flow is a key feature of Max/MSP.
The left side of the UI contains built-in tools like audio loops and other goodies. Have a look. 👀
The bottom left of the UI is the lock tool which switches modes from edit to non-edit. You can also use(⌘ + e) or ⌘ click to toggle between these two modes.
Max/MSP has great documentation and built-in tutorials. Head over to the
Help tab and select
Reference or use the keyboard command(⇧ ⌘ r). Remember to explore the
Help as you need help as it is a great resource.
Fundamentals vs Technical Details
To begin, create a working folder on your Desktop or your preferred location and create
hello.js inside. Open the folder in Visual Studio Code by dragging the folder into the icon open right-clicking, and selecting; open with Visual Studio Code.
Once open, create a new file called
max-js.maxpat and to begin patching in Max/MSP. You can do this by opening Max/MSP and navigating to the folder you created on the Desktop or preferred directory.
Next, we want to create a
js object by clicking on an
object or the
n keyboard shortcut, then type
js followed by the name of the file;
Let's head over to Visual Studio Code and start editing the
hello.js file by adding
autowatch = 1; which will synchronize VS Code and Max/MSP every time we save
hello.js. Next, add a
post('Hello!'); which will post
Hello to the Max console( ⌘ M) each time we save the file in VS Code. That's it for this short tutorial but you can follow me on Twitter @_jonathan_codes for upcoming release updates. Thanks for reading and happy patching! 🙌