Live Queue
live_queueQueues music clips on tracks with precise timing, loops, and section control, replacing or stopping playback and scheduling batch updates in a text-driven DAW.
Instructions
Queue clips (a batch; all or nothing). Each clip: {track, notes and/or lanes, bars, loop, at}.
notes: ' <dur_beats> [vel]; ...' with beats from the clip start (same as notes_write).
lanes: {pitch: 'x...x...'} step strings (same as pattern_write), step = beats per char (0.25).
bars (or beats, for odd lengths): clip length; default = whole bars covering the notes. It repeats every length.
loop: repeats before it ends (default 'forever': it plays until something replaces it).
expr: {lane: [[beat, value], ...]} expression for a performer voice (bend in semitones, vib in cents ...),
beats from the clip start; the voice's INFO lists its lanes.
at: next_bar (default) | next_beat | next_2 | next_4 | next_8 | next_16 (phrase boundaries counted from bar 1)
| asap | bar: | after: (when that clip ends; chain clips to pre-program an arc)
| after:# (when item k of this same batch ends: a whole arc in one call, no ids needed).
A clip on a track replaces whatever that track would play from its start (a playing clip is cut there; its
last notes ring out). {track, stop: true, at} silences a track. The reply gives each clip's id and the exact
bar it lands on (moved later when its first notes cannot render in time) and the runway: how long until the
queue stops changing. Before a long job (sound design, fitting), queue enough that the runway covers it.
section: a name for the set section (chapter) these clips and stops belong to; a clip's own 'section' key wins.
cancel_section: cut over mid-chapter. Takes back what that section still has to do from cancel_at (a live_queue
at value; default where this batch's first clip lands, or the next bar when clips is empty): its clips that
start then or later are removed, the ones still playing are cut there (last notes ring out), its stops after
it and its effect moves sent with section= are dropped (a glide in progress holds where it is). The batch's own
clips are kept even when they reuse the name. Clips queued without a section are never touched.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| clips | No | ||
| project | Yes | ||
| section | No | ||
| cancel_at | No | ||
| cancel_section | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |