discord: 0xfffe
elephant: https://hachyderm.io/@pastels
24.24.2.287


I've dabbled very infrequently with M4L patches over the last like, 14 years or so, and I found some books covering different MaxMSP topics at a local library. It's basically only coverage of step sequencers which is a mild intro to building complex devices, and I guess I've never really spent a lot of time thinking about how a software sequencer works. The chapters I went through were-- oh wait,

[this book] does assume that you've done some really basic work learning the essentials of Max

Ah fuck have I done the (really basic) work??


Okay, let's see

  • How to unlock a patch

I knew how to do that already! (There's a lock in the lower left).

  • What Max messages are and what they do

Yeah I vaguely remember how these work

  • Opening, using, and patching from Max help files

Okay so I sank quite a bit of time into figuring this out. There's a lesson file for loading random files in a playlist, another for manipulating an RGB noise pattern via audio... but for some reason a bunch of the Lesson example patchers just weren't working? Maybe weird file path issues, I posted in a bunch of places asking for support after like an hour and a half of trying to sort this out.

  • The basic structure of the MIDI messages we--

So anyways I flipped ahead to the first patch it covers. A step sequencer!

A MaxMSP patch containing a basic step sequencer, including clock parameters, a piano roll and a clickable step matrix


So I downloaded the patches and started by just trying to get the sample file to work in Max hosted in Ableton. My best guess was, and some googling seemed to confirm that the best way to do this was to create a new Max device in live (more on this later), and then copy and paste the contents of the example in. I learned about edit mode vs presentation mode (you can go into the inspector and tell it to open the patch in presentation mode, letting you essentially choose components from your patch to setup in a GUI in a separate view from the actual routing.

After some wrangling, I was able to get a plugsync object that could change the tempo and start/stop the piano roll. But nothing was playing on the instrument that this device was routing to in Ableton. All the watchpoints were showing the right tempo data in the first half and midi data near the output.

So I started over, tried again... no luck until in the middle of me staring at this thing in frustration suddenly my midi device in Live started playing audio. Uhhh what the hell. To try and capture whatever random progress I made, I saved the patch. Playback from the Max patch stopped. No audio again. What the hell. I clicked every click in every mode, and then suddenly a random alt-click on the piano roll. in edit mode made everything start going again. So I guess it needed a state change to make the sequencer go?

I read through the chapter. The watch_me function monitors the sequencer list for changes before sending on/off info to the rest. But that shouldnt apply to the piano roll. In trying to understand this, I broke it again, recopied and configured in, and I was able to trigger the patch by alt-clicking in the plugin view in Ableton.

Sigh. I read some more details about how this all works in the book chapter. Turns out there was a bit at the end on getting this to work in a max4live patch, using a different example patch that used an amxd~ device. This did not work at all, even trying to wire in the tricks I had developed in the first pass. ughhhhhh

So, unfortunately, after ~3 hours of this, I'm coming away with the notion that Max 4 Live is an incredibly bumpy ride. I don't really know how polished AMXD developers do their thing. I guess I'll keep trying to get through this book and see if I can come up with some better techniques but maybe I'll just focus on learning Glicol instead.


You must log in to comment.