Scramble MIDI Pitches with Max 8.6’s New Array Objects
Explore how Max 8.6’s new array objects open up MIDI manipulation possibilities in Ableton Live 12. Philip Meyer demonstrates a pitch randomiser built entirely with these new tools.
Introducing Arrays to Max for Live MIDI Tools in Live 12
With the release of Max 8.6, Philip Meyer walks us through a powerful new feature — arrays — and how they can be used to build dynamic MIDI Tools in the upcoming Ableton Live 12. In this focused session, he demonstrates how arrays differ from traditional Max lists, and how to leverage them to manipulate and transform MIDI data inside Live’s MIDI clips.
Arrays in Max: A New Data Structure
Arrays in Max behave more like JavaScript arrays than traditional Max lists. Unlike lists, arrays in Max are stored in memory and accessed via references. This makes them particularly useful when working with structured data like dictionaries — another concept borrowed from the world of JSON.
Diving into Live 12’s MIDI Tools
Ableton Live 12 introduces a new MIDI Tools tab, allowing users to either generate or transform MIDI clip content non-destructively. Meyer previews both sides — generation and transformation — and begins building a custom Transformer that scrambles MIDI note pitches while preserving rhythm.
Building the Pitch Randomiser Tool
The core idea: extract the pitches from MIDI clip notes, shuffle them, and reassign them while keeping timing intact.
Key steps include:
- Using
live.midi.tool.inandlive.midi.tool.outto read and write clip data. - Parsing the
notesdictionary usingdict.unpack. - Iterating through the note array with
array.iter. - Collecting pitches and generating a scrambled order using
urnanduzi. - Remapping pitch values with
array.mapanddict.pack. - Outputting the transformed data back into the clip.
Meyer also highlights subtle patching tricks and best practices, ensuring a clean and efficient patch layout.
Why Arrays Matter
Arrays bring structure, scalability, and precision to data handling in Max — especially when working with large note sets or building complex MIDI manipulation tools. Their similarity to JavaScript’s array functionality also opens the door for more intuitive, script-like workflows in visual patching.
Wrapping Up
The tool Meyer builds allows instant reshuffling of melodies while keeping the original rhythm untouched. Perfect for generative workflows, this method showcases the potential of integrating new Max 8.6 objects into Live 12’s creative MIDI environment.




