Tuesday, November 24, 2009

maxforlive: monome integration

It is one thing to adapt max patches for maxforlive but it is another thing entirely to construct them so they can handle multiple instances without stepping all over each other by accessing the same data. Then there is the issue of telling monomeserial which instance has control of the monome hardware.

I wanted to make it elegant to use. For example, if you click on a track in live that has a monome application running, that monome application is in focus on the hardware. It is this level of integration that makes maxforlive so appealing. So, now you can run as many obos, polygomes, stepfilters, or automatorgators as you like, and the monome switches between them effortlessly. Once you have everything set up, you can save your project for later recall.

So think about what you have here just with obo - an endless MPC or a super burly tenori on.

I never intended for anyone to use polygomé by itself, I always envisioned it as a small piece in a larger context, but that context didn't really exist before. The alternative is to create an application that is sophisticated enough to be a complete system unto itself. Some applications went the monolithic route which necessitated function rows, chording and pages which made the experience a little more impenetrable. I saw the same thing happen with moving fader control surfaces for daws where they tried to do everything from the control surface. People soon discovered that editing plug ins on a small LCD window is actually a step backwards, regardless of tangible controls. Same thing with the monome.

Now with maxforlive, monome apps can be simpler and you can pipe together the functions you need. So, instead of on application being a clip launcher, floor wax and a desert topping, it can do _one_ thing, like a plug in, and the user can select which functions are needed for the task. It is a level of functionality granularity I think the hardware is well suited for. If the apps are simpler, then the need for function rows and pages is reduced (now shifted to live) and the applications themselves become easier to adapt for all sizes of monomes. The five maxforlive apps I have work on the 64, 128 and 256 without having special versions for each type.

I'm getting very close to releasing this suite of monome maxforlive plug-ins. I have to back port some of the features I introduced in obo to the others, and clean up the UI of polygome.

Please check out the video in HD here.