Hi everyone and Happy New Year2026 !
I’d like to share a research-oriented project developed at Structure Void, focused on high-performance, real-time data exchange between Ableton Live / Max for Live and TouchDesigner, without relying on OSC, MIDI or any network-based protocol.
VOID Shared Memory uses local shared memory to transfer continuous parameters, envelopes, triggers and arbitrary data between audio and visual environments, with very low latency and deterministic behavior, suited for live performance, generative visuals, installations and experimental systems.
On the TouchDesigner side, the project includes custom CHOP operators written in C++, allowing direct read/write access to shared memory streams coming from Ableton Live / Max.
On the Ableton / Max side, a set of dedicated Max for Live devices and Max externals (C++) handle data generation, analysis, encoding and transmission.
Project page:
https://structure-void.com/tools/void-shared-memory/
Demo playlist (Live ↔ TouchDesigner workflows):
This is not a closed “turnkey” tool, but a technical foundation: a set of modular, low-level building blocks developed entirely in-house, designed to be readable, hackable and repurposed in advanced pipelines.
Typical use cases include:
-
Driving generative or time-based visuals from Live with sample-accurate timing
-
Audio analysis (envelopes, frequency bands, triggers) feeding TouchDesigner systems
-
Bidirectional control flows between TD and Live without network overhead
-
Stable alternatives to OSC for performance-critical setups
The project is distributed as part of an R&D initiative, including:
-
TouchDesigner custom CHOPs
-
Max externals (reader / writer)
-
Max for Live devices
-
Ableton Live demo sets
-
TouchDesigner demo networks
All components are provided together to make experimentation and integration straightforward.
I will likely continue to develop additional Max for Live devices around this system, and I’m also planning to release an unofficial Max package gathering the core externals and tools related to VOID Shared Memory, to make standalone Max usage and integration easier.
Compatibility note (brief): Max externals and TouchDesigner operators are built as universal binaries. Due to current host-level constraints, Max for Live devices are officially supported on Apple Silicon systems.
Feedback, questions and discussion from the TouchDesigner community are very welcome.
— Julien Bayle