Skip to content

Autopilot deck: an endless SA3-composed B-side via outpaint-chained tracks #63

Description

@brxs

Depends on #54 (continuation/init-audio) and builds on the loop→track continuation issue and the track deck (M19, ADR-0013).

Problem

Between tracks, during warm-up, or when you just want the booth to keep going, there is nothing to fall back on but another hand-loaded track. A generative instrument can do better: compose the next section forever. With medium-DiT continuation (#54 + the loop→track issue) chained — each new segment seeded by the tail of the last — SA3 can produce a seamless, endless B-side in a chosen vibe: an AI radio deck / bottomless crate.

Proposed approach

An autopilot mode on a playback deck: compose an initial track (medium DiT), and as the playhead approaches the end, generate the next segment seeded by the current tail (init-audio + inpaint over the new region, #54) and splice it on seamlessly, steered by a held prompt/palette the performer can change live (the new vibe takes effect at the next segment boundary — honest about the latency). Bounded memory (drop consumed audio), and it yields to the single-slot generation lock so it never starves a live on-demand request.

Acceptance criteria

  • Autopilot keeps a deck playing indefinitely with audibly seamless segment joins; changing the prompt/palette steers the next segment.
  • Segment generation stays ahead of the playhead (no underrun) and yields to on-demand generation.
  • Memory/disk are bounded; stopping autopilot leaves a normal playable track behind.
  • Honest UI: vibe changes land at the next boundary, not instantly; strings via i18n; house style; npx tsc -p tsconfig.app.json --noEmit clean.

Scope & non-goals

In scope: the endless-continuation autopilot on a playback deck. Non-goals: the plumbing (#54) and loop→track continuation (the building-block issue); beat/key-matching the autopilot to the other deck (the bpm/key + #51 territory); a curated infinite-radio with track boundaries/metadata.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions