Skip to content

Listening rig: drive audioinstruments from a DAW via micropython-vst3 so hits are visible #15

Description

@bdbarnett

Required before the next drums round, and probably before Phase 2's listen.

Brad, after the Phase 1 relisten: "I want to set the rig up so that all sounds play back in a DAW using micropython-vst3. That way, I can see when a hit happens whether it is on the open hat or clap or drum trak and when it was supposed to hit. Right now, especially for the voices that don't sound like an acoustic cymbal or tom, I'm left guessing which voice is that."

The problem this solves

Rendered WAVs give no way to attribute a sound to a voice. For voices that resemble an acoustic instrument that is fine — a snare is recognisably a snare. For tonal voices it is not: a cowbell, a clave, a conga and a rimshot in a pattern are four pitched blips, and without seeing which note fired you cannot tell whether the wrong one sounded, whether one is missing, or whether one is simply mistuned.

That made linndrum and dmx the hardest kits to judge in the Phase 1 relisten despite being among the better ones — they carry the most tonal voices. Brad's summary: "I didn't hear anything I didn't like, but it's difficult for me to say if they are right, particularly the tonal sounds."

This matters more for Phase 2 than for drums. The electromechanical pianos are tonal end to end, so the same blind spot applies to every voice rather than to a handful.

What it needs to do

  • Load the audioinstruments package through the micropython-vst3 plug-in so a kit is playable from a DAW track.
  • Drive it from a MIDI clip, so the piano roll shows what was supposed to hit, when, and on which voice, against the audio.
  • Name the lanes by voice, not by MIDI number — "Open Hat", not 46.
  • Ideally: a saved project per kit, generated rather than hand-assembled, so a relisten is opening a session.

Notes for whoever builds it

  • micropython-vst3 already has a prebuilt sidecar engine and a headless REAPER automation path; see the daw-runner agent. The engine is not rebuilt by cmake — rebuild it after any audioif C change.
  • audiocomponents pins audioif via the AUDIOIF_PIN file; the plug-in must run the same floor or the rig and the gates disagree.
  • Each instrument's NOTE_MAP gives the voice names for the lanes.
  • Related: Phase 1 goldens were blessed on the pre-envelope-fix floor #14 (Phase 1 was blessed on a pre-envelope-fix floor).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    parkedParked by ruling, with a named trigger

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions