Stoatworks Labs

PatchFerret

Console show file in, patch paperwork out

In developmentBrowser appRust
PatchFerret — Console show file in, patch paperwork out
The hosted tool with the repo's own X32 fixture loaded: the show identified as a Behringer X32 / Midas M32 scene, its 32 input slots, 80 strips and 42 outputs counted, the four documents it produces ready to download, and the conversion-fidelity list naming the lines of the file it did not model. Parsed in the browser; nothing was uploaded.

What it does

A show file goes in, a model that doesn't care which console it came from comes out, and from that model come the three documents a patch needs: who's plugged into what, what the rig is, and how it's wired. It reads Behringer X32/M32, Yamaha DM3/DM7/TF and CL/QL, and Allen & Heath Avantis/dLive and SQ today; DiGiCo and Avid VENUE are planned.

The browser build parses and renders entirely in WebAssembly, so a show file never leaves your machine. There's no upload and no server, which matters, because show files are client data.

The hard part is that every console has a layer of indirection in the middle of the patch chain. On an X32 a connector feeds a routing block, then an input slot, then a channel's source, so assuming channel N is fed by connector N gets you a patch list that's confident and wrong. The model keeps the slot, the socket and the strip on every patch instead of squashing them together.

  • Patch list, specification sheet and wiring topology as PDFs
  • Console-neutral PFX model, plus PFX interchange XML
  • Behringer X32 / Midas M32 / X-Air .scn — supported
  • Yamaha DM3 / DM7 / TF and CL / QL — input patch and names
  • Allen & Heath Avantis / dLive and SQ — input patch and strip inventory
  • Browser build runs in WebAssembly: nothing is uploaded
  • Self-hostable as a container image, with a compose file and an Unraid template

Where it stands

An early preview, and still very much in development. The X32 adapter is written against a real 2,104-line scene file saved by an actual console, and checked against it in CI. Nothing it outputs has ever been loaded back into a console, there's no conversion between consoles yet, and the Yamaha MMS patch-source encoding has never been confirmed against a console's patch screen. On TF no connector resolves at all, and the tool says so instead of guessing. Check anything it prints against the desk before you trust it on a show.