Stoatworks Labs

Patchwork

An LED wall having a bad night, for Resolume

Betav0.1.0Plugin & ModuleC++ / GLSL
Patchwork — An LED wall having a bad night, for Resolume
No screenshot. This one's configuration inside another application.

What it does

An FFGL effect for Resolume Arena and Avenue: SW Patchwork, a faulty LED video wall. Pick the cabinet size, the LED pitch, the modules and the scan ratio, then break whichever stage of the wall you like between the media server and the light.

The idea it's built on: an LED wall is really a few hundred small displays on a daisy chain. A processor cuts the picture into cabinet rectangles and sends them down a cable that snakes from cabinet to cabinet. Each cabinet's receiving card takes its rectangle by its place on the chain, applies its own calibration table, and drives its modules one scan line at a time through an address decoder and a row of shift-register driver chips.

Every failure you've seen on a wall is one of those stages lying. Calibration tables from another batch make the patchwork. A map that repeats every few cabinets copies their content along the cable, and moves it: a step at a time, an LED at a time, back and forth or at random, running opposite ways along alternate rows of the snake. A broken cable loses everything downstream to black, a frozen frame, the card's test pattern or garbage, and a late card makes a cut ripple down the chain. A stuck address line leaves half a module's rows dark and lights the other half twice, which is the zebra; a dead row driver pinstripes it; and a broken data chain loses one colour from one driver chip onwards.

The supplies and the LEDs react to the picture too. A cabinet driven too bright sags down to its supply's limit or trips and blinks, and a cabinet held bright for a minute warms up and drifts cyan, because red loses light first. Every fault is seeded, so a show fails the same cabinets every time.

  • A wall of cabinets, modules and LEDs: tile size in LEDs, LED pitch in pixels, fill, scan ratio from static drive to 1/32
  • The cable: row or column snakes or rasters from any corner, split into chains per sending-card port
  • Repeat: N cabinets' content repeated along the cable, held, stepped, scrolled, ping-ponged or jumped at random
  • Breaks, intermittent connectors, dropouts and lost-signal fallbacks: black, hold, the card's test pattern, garbage
  • Decalibration by batch and module, seams, swapped and upside-down cabinets, late cards and a hop delay that ripples cuts
  • Module faults: zebra stripes from a stuck or floating address line, pinstripes, a lost colour, slipped data, dead modules
  • Supplies that dim or trip under bright content, heat that drifts the wall cyan, dead and stuck LEDs
  • Universal macOS bundle and a Windows x64 DLL

Where it stands

v0.1.0, and early days. It hasn't been loaded into Resolume on macOS yet. On Windows it has: a build loads, registers and renders in Resolume Arena 7.27.1 on software rendering (no GPU), with every parameter as declared and all 9 of the fleet's checks passed. 44 of its 48 controls, and Arena's own Opacity, moved the picture there, and the four that act on motion or over seconds (Heat Time, Hop Delay, Lag Tiles and Lag Frames) were inconclusive on its still picture. Everything else is measured by an offline harness driving the real plugin at two rasters and on Apple's software renderer: a wall with nothing wrong is the clip to the byte, calibration holds across every cabinet and module and changes at every boundary, a stuck address line blacks one parity of rows and doubles the other while keeping the module's mean light to 0.0002, a cut reaches each cabinet one frame per hop in the cable's order for every route, a break loses exactly the tail of each chain, the repeated tiles are right byte for byte, a lost card holds the last frame it got, the heat follows its curve with red drooping first, and a tripped supply blinks on time. It catches fifteen wrong models and seven one-character sabotages of its own code, and all 48 controls change the picture. The mechanisms are real; the fault rates, the test pattern and the garbage aren't any vendor's. The macOS build is signed and notarised. There's a user guide and a browser demo, but no presets and no OpenFX port. Try it in your own rig before you trust it in a show.

Watch it running

Patchwork video thumbnail

Nothing loads from YouTube until you press play.Watch it there instead