An analogue radio mic's companding circuit with your picture pushed through it, as an FFGL plugin for Resolume and an OpenFX plugin for Resolve. Match the two ends and almost nothing happens; the fun is when they disagree.
翻訳待ち
Loading the full README.
Read the full README ↗AI-assisted project. This codebase was created with Claude (Anthropic), directed and reviewed by a human author. The signal model is verified numerically by an offline harness that drives the real plugin class: it checks the compander's round trip against its own algebra, checks the parallel envelope detector against a strictly serial implementation of the same law, and proves the effect acts along the scan and not across it (see Status). The FFGL build has been loaded into Resolume Arena 7.27.1, put on a layer and run on real footage, with its controls, groups and factory presets read back out of the running host. No audio spectrum has ever reached it, though: the audio-reactive controls are wired up and Resolume recognises them, but they've never been driven. The OpenFX build has only ever been exercised by a test probe, and has never been opened in Resolve. Check it in your own rig before you trust it in a show.
An analogue radio mic's companding circuit, with your footage pushed through it instead of a microphone signal, as an FFGL plugin for Resolume Arena and Avenue, and the same thing again as an OpenFX plugin for Resolve, Nuke, Natron and Vegas.
The project page has the downloads, the user guide and the video.
A wireless link can't carry the dynamic range of what's sent down it. So the transmitter squashes it (pre-emphasis to lift the quiet top end above the noise, then a compressor that halves the signal's excursion in dB) and the receiver does the exact opposite, expanding it back out and de-emphasising. In between sits a link with a noise floor, a ceiling, and no opinion about either.
in → EMPHASIS → COMPRESS → [ link: level, ceiling, noise ] → EXPAND → DE-EMPHASIS → out
Get every stage right and almost nothing happens: a working radio mic sounds like a cable. Everything this plugin is for comes from the two ends disagreeing.
Video: What it does, in 50 seconds
Browser demo: compander-demo.stoatworks-labs.com, the plugin's own shaders in WebGL2, no install. It's a demo, not the plugin; see below.
Rendered by the plugin's own offline harness in a headless GL context rather than captured from Resolume. Actual frames through the shipped shaders, on a synthetic scene built to make companding measurable: a flat band, hard vertical edges, two one-pixel combs at ninety degrees to each other, and a ramp.
v0.1.4 — prebuilt for macOS, Windows and Linux. Pick your platform:
| Build | Download | Size |
|---|---|---|
| Universal (Apple Silicon + Intel) · .dmg disk image | compander-0.1.4-macos-universal.dmg | 223 KB |
| Universal (Apple Silicon + Intel) · .zip archive | compander-macos-universal.zip | 186 KB |
| Universal (Apple Silicon + Intel) · .zip archive (OpenFX — Resolve, Vegas, Nuke) | compander-ofx-macos-universal.zip | 253 KB |
| Build | Download | Size |
|---|---|---|
| x64 · .exe installer | compander-0.1.4-windows-x86_64-setup.exe | 223 KB |
| x64 · .zip archive | compander-windows-x86_64.zip | 118 KB |
| x64 · .zip archive (OpenFX — Resolve, Vegas, Nuke) | compander-ofx-windows-x86_64.zip | 66 KB |
| Build | Download | Size |
|---|---|---|
| x64 · .zip archive (OpenFX — Resolve, Vegas, Nuke) | compander-ofx-linux-x86_64.zip | 741 KB |
All builds, checksums and release notes: github.com/stoatworks-labs/compander/releases.
macOS builds are signed and notarised and open normally. The Windows builds are unsigned, so SmartScreen warns once.
A signal on a wire has one axis, time. When that signal is a picture, time is the scan. So a compander's attack and release convert, exactly, into a distance along the line:
This is the beginning of the README. Read the rest at the original. Read the full README ↗