➡️ This talk is part of IRCAM Forum Workshops Hors-les-Murs Tokyo 2026
“Techno Engine” stages a public conversation between a crowd and a machine that never stops dancing. The audience connects from their phones, types a sentence — “I want more hi-hats”, “make it darker”, “purple bananas” — and the room answers in sound. Club techno is the shared grammar. A language model is only the translator. The question is what happens when authorship is handed, bar by bar, to whoever is in the room.
The Core of the Artistic Approach
The piece is a self-driving techno set that does not wait for a DJ. A kick is already running in 4/4; the crowd does not start the music, it steers it. Each order is a musical event with a life of sixteen bars: it snaps to the next downbeat, eases in, holds, and fades. Nonsense is welcome. “More drums” and “melting clocks” are treated as the same class of gesture.
I am interested in techno not as a style to imitate, but as a social protocol: a pulse everyone already knows how to inhabit. Once that pulse is given, language becomes the instrument.
Language as a Musical Instrument
The project does not generate tracks. Text-to-audio is too slow and too opaque for a live room. The model maps free language onto a fixed parameter schema (kick, hats, density, bass, pad, cutoff, reverb, delay…). Max remains the instrument. The model only says how hard to turn the knobs.
The interpreter is a cloud language model. I am still comparing frontier APIs (Gemini, GPT, Claude, Grok) and have not locked a vendor: any model that returns the schema can drive the engine. A local keyword / embedding fallback keeps the floor alive if the network drops.
The Patch
phones (QR / local web app) → Node.js server → language model → OSC → Max/MSP techno engine → PA
The same server feeds a projector: live order feed, countdowns, global status.
Max runs parallel tracks on one clock: kick (always on), hi-hats (probability gate — this is where “more hi-hats” lives), bass, pad, FX, master. Orders sum while they overlap; the latest value wins per parameter; line~ ramps hide the joins. Server and patch are decoupled — if the network dies, the engine keeps playing.
Fundamental Questions
- Who is playing? When fifty people type at once, is the author the crowd, the model, or the person who designed the schema?
- What can a sentence do to a kick drum?
- What should the machine do with nonsense?
Performance / Installation
Tokyo is a 20–30 minute live interactive demo. A QR code is projected. Phones join a local network, open a minimal page — “Command the Music” — and send. I am in the room as operator, not as soloist. Each run is unique: the soundtrack is whatever was typed that hour.
Objectives
To put a language model on the dance floor without hiding the mechanism — and without pretending the model is the piece. The work is the live loop: phones, schema, scheduler, Max.

