ATMOSYNTH Groove: a desktop DAW whose instruments and effects are ATMOSYNTH patches, on ATproto.

An instrument track plays outside gear through its MIDI out #25

Closed opened by center.for.cybernetic.beauty

Part of #1 Blocked by: #24

What to build #

An instrument track plays a hardware synth, or another app, from its clips and from its input. See ADR 0022 and GLOSSARY.md's MIDI out.

  • Set in the inspector beside the track's input, and in the I/O section of its strip in the mixer: a MIDI output and a channel, 1–16, or none. Local state, like the input: no step of the history, and never published.
  • The gear plays in the patch's place on this machine. The track's patch stays in the record and is unheard here, and its strip passes silence. Clearing the MIDI out brings the patch back.
  • What goes out:
    • its clips' notes with their velocity, swing applied, each note's probability rolled once per pass;
    • everything its input brings live, passed through: notes, pitch bend, mod wheel, control changes. The Keyboard's arpeggiator, glide and unison are not applied, since the gear has its own.
    • Not sent: clip notes' bends, the patch's sequencers' notes, automation.
  • Lined up as the clock is: ahead by the output device's latency plus the MIDI output's offset.
  • Nothing hangs. A muted track, or one silenced by another's solo, sends no new notes. Stopping, the loop range going back and the playhead moved while playing release every note held on every MIDI out. Changing a track's MIDI out releases what it held on the old one.
  • A missing MIDI output (unplugged, or the folder opened on another Mac) is kept by name and found again when it returns. Until then the patch plays and the inspector marks the MIDI out missing.
  • Export and plyr.fm renders play the patch, the record's sound, and send nothing. The export form marks each track with a MIDI out, so it's clear its patch is what goes into the file. To export the gear's sound, record it onto an audio track first.
  • The out MIDI light flashes for each message sent.

Acceptance criteria #

Sign up or Sign in to add to the discussion.