Max 9.1 is here, and it’s surprisingly packed with improvements, including building on the new goodies in Ableton abl.* objects and Jitter eye candy. Here’s what’s new.

Ableton DSP

Cyling ’74 continues to provide building blocks from Ableton’s own DSP engine for use by patchers, whether you want to create Max for Live devices or add these to your own standalone Max projects.

You might have surmised from what was available that more tools were on the way. 9.1 delivers new Devices:

  • Auto Filter
  • Compressor
  • Drum Buss
  • Drum Sampler

The full Devices are arguably a little less useful in Max for Live, but great for prototyping in standalone Max. What is useful in both places is the DSP components themselves. (Cycling describes these as “lower level,” but really the appeal is that they’re higher level parts that don’t require as much from-scratch patching as normal Max patching would.)

  • meldfilter — the multimode filter from the mighty Meld synth
  • meldosc — all the Meld oscillator types, packed into one oscillator meta-object
  • pitchestimator — ooh, this is a big one, as the internal Max pitch estimation can be a little wonky and this opens up a lot of possibilities
  • transform — here’s your sleeper hit with a bunch of comparators; see below

abl.dsp.transform~ is a really beautiful set of logical operators/signal comparators that fills out Max’s own selection nicely.

0: Offset
1: Attenuverter
2: Gate
3: Skew unipolar
4: Skew bipolar
5: Unipolarizer
6: Quantizer
7: Sample and hold
8: Clipper
9: Fade in
10: Fade out
11: Slew down
12: Slew up
13: Slew up and down
14: Triggered envelope
15: Comparator

It almost feels like cheating to have the stuff from Meld. Some of these bits were already independent oscillators in Max 9’s Ableton objects, but now you get the full set in the Meld meta-oscillator. Set the type and go:

0: Basic Shapes
1: Bitgrunge
2: Bubble
3: Chip
4: Crackle
5: Dual Basic Shapes
6: Extratone
7: Filtered Noise
8: Fold Fm
9: Harmonic Fm
10: Noise Loop
11: Noisy Shapes
12: Rain
13: Shepard's Pi
14: Simple Fm
15: Square 5th
16: Square Sync
17: Squelch
18: Sub
19: Swarm Saw
20: Swarm Sine
21: Swarm Square
22: Swarm Triangle

Same as with the filter; you had some of these components, but now you get the whole glorious set, including tools like the unique Redux filter and both Resonators (useful for physical modeling, for instance).

0: Comb+
1: Comb-
2: LP Crunch 12dB
3: Filther
4: Membrane Resonator
5: EQ Peak
6: EQ Notch
7: Phaser
8: Plate Resonator
9: Redux
10: SVF 12dB
11: SVF 24dB
12: LP Switched Res
13: Vowel

One other improvement: you can now assign float-type attributes to inlets using @ins.

My existing Max for Live guide still holds, and you don’t get official support for this with Ableton Live just yet. Only Max 9.1 standalone has these tools. The bundled Max in Max for Live will still be on the previous 9.x build, including the Max bundled in Ableton Live 12.3 (currently still in public beta). An update should follow quickly, though, and you’re free to start playing with these now!

There’s more in there, too, like the delay routing option was added to roar~, the stereolfo~ has more waveforms, and some other tweaks are available. See the release notes.

New Jitter FX

More eye candy:

  • jit.fx.vcr and jit.fx.crt emulate VHS video and CRT displays, respectively (retro!)
  • jit.fx.ge.pattern (Voronoi/Delaunay!) and jit.fx.ge.lineinterp do geometric stuff
  • jit.fx.tiltshiftjit.fx.camera, and jit.fx.cf.kuwahara (really beautiful edge preservation) give you image filters

…among other Jitter improvements.

And more

There’s a lot in this release.

Function stepping with stepdiv~ and stepfun~ create ramps with function outputs; stepcounter~ counts up ramp signals. Think of interesting ways to produce sequences.

JavaScript V8 improvements for more powerful Web-style development inside Max. jweb is updated, too.

Codebox and UI features. Some folks were hacking this already, but now you get official support: a text.codebox object, messageview object for displaying streams of messages (literally people tried to DIY this), listbox and textbox.

Array enhancements. array.deserialize, array.replace (finally to both), and more array options all round.

Gamepad enhancements including Joystick/DINPUT support and other ways of getting raw data from joysticks.

OSC improvements. osc.packet, udpsend/receive rawbyte input and output, and OSC rate limiting and more.

All the goodness:

Max 9.1.0 Release Notes

Not too shabby for a point release! The patching happiness of October continues.