Performing a Multi-Artist Link-Synced AV Jam
Learning objectives
- learner can share named audio channels between Link peers on the shared timeline using demand-driven sink/source routing
- learner can modify Link session state safely on the audio thread with capture/commit for sample-accurate timing
- learner can run a multi-artist AV jam where several music and visual machines lock to one Link clock under live conditions
Capstone — one whole task that evidences the objectives
Stage a live multi-machine AV jam on one Ableton Link session: stream a named Link Audio channel between two peers (demand-driven, only when subscribed), have visual machines lock to the shared clock, and perform a set while making tempo/session-state edits on the audio thread with capture/commit so timing stays sample-accurate.
Prerequisite modules
This module builds toward the kind of distributed audiovisual set that Link made possible: two or more musicians on separate laptops, a VJ or two driving projectors, all improvising against one clock with no master machine and no clock cable snaking across the stage. Beyond tempo, the peers exchange actual sound — a named audio stream travels the network, beat-aligned, so one artist’s bus lands in another’s mix in time. The failure modes are unforgiving live: a tempo edit made on the wrong thread drifts by an indeterminate number of samples, and visuals that only “roughly” follow the beat read as sloppy on a big screen.
Start supported: on a local network with two machines, join a session and confirm the multi-artist model — any participant can nudge tempo, everyone follows, and music and visual machines alike lock to the one clock. Then add the routing layer, using how Link Audio shares named channels aligned to the shared timeline as your reference for publishing a stream, and the demand-driven sink/source pattern to verify that nothing transmits until a peer actually subscribes. In parallel, bring a VJ app onto the session; the visual-sync atom deepens the VJ-app specifics (clip stretching, clock-driven LFOs) if you want them. Finally, drill the state-editing discipline: capture-before-read, commit-after-write, and doing it exclusively on the audio thread — these two moves must become automatic, because they recur on every buffer during the set.
Each required atom gates the capstone directly: without the channel and sink/source model there is no peer-to-peer audio; without capture/commit on the audio thread, live tempo edits break sample accuracy; without the multi-artist concept — which covers music and visual machines sharing one clock — the ensemble and projection sides fall apart. The visual-sync and quantized-launch atoms are enrichment: the first goes deeper into how VJ software locks clips and generative patches to the beat grid, and the second makes ensemble entrances tighter and more professional, but the jam stands without them.
Runnable examples
Generated from the context/ instrument corpus by concept (redistributable idioms only). Do not edit — regenerate with gen-module-examples.mjs.
clock-quantized-launch
0.5::second => dur T; T - (now % T) => now;
chuck-0006 · MIT
Atoms in this module
Required — these gate the capstone
Supporting — enrichment, not gating
Part of curricula
- Audio-Visual Performer — integrated, synced live AV — The integrated set (north star) required