Stereo widener & imager
Firmament
Open the heavens — a stereo widener and imager for lush orchestral layers.
AU · VST3 · Standalone · macOS & Windows · AGPL-3.0
About
A Mid/Side stereo widener and imager that gives lush orchestral layers — strings, choirs, synth pads — a wider, more open stereo image without smearing the low end: an optional multiband crossover keeps sub-bass centered regardless of how wide the rest of the spectrum is pushed.
Why the name?
The firmament is the vault of heaven — the widest thing anyone has ever looked at. As a Mid/Side widener, Firmament opens exactly that dome above your mix while the bass stays anchored to the ground.
Under the hood
Mono compatibility by construction, not by tuning. Encode to Mid/Side, scale only Side, decode. Because decode is always left + right == 2 × mid regardless of what Side is, no width setting can change what a mono listener hears — 0%, 200%, three bands, safety guard engaged, it makes no difference. That invariant is asserted at the codec, at the engine, and independently for every stage that could plausibly break it.
Velvet-noise decorrelation, projected onto Side. Firmament uses published optimised velvet-noise decorrelator pairs — 30-tap and 15-tap sparse zero-latency FIRs, coefficients transcribed as data from the open-access source tables, tap times rescaled ms-true to the session rate and renormalised to exactly unit energy. The published topology alone cannot keep a mono fold-down intact: the winning pair's sum carries a roughly 17 dB notch around 320 Hz, because the optimisation constrains each filter's flatness and the pair's coherence but never the pair's sum. So Firmament keeps the widening half bit-for-bit and pins the mono content dry — the decorrelated pair only ever enters the Side signal, never Mid. Both channels are genuinely processed, the centre image stays put, and mono safety is structural rather than tuned. Measured mono fold-down dip: 0.0000003 dB, against roughly 16.2 dB for a conventional delay-based widening trick.
Three crossover modes, and one of them is honest about latency. Classic is a zero-latency Linkwitz-Riley split. Phase Matched runs the mono path through a companion allpass whose phase tracks the crossover exactly — inter-path phase error measured at 5e-6 degrees against a negative control that reads 179.8, so the test cannot silently stop measuring. Linear Phase swaps the split for a Kaiser-windowed sinc FIR pair with perfect reconstruction by construction: residual ~7e-9, group delay constant to 0.0002 samples — but it reports 2048 samples of latency at 48 kHz, scaling with sample rate, updated dynamically from the message thread. Switching modes mid-playback mutes briefly, because a click-free transition across a latency change is not achievable in principle. Classic and Phase Matched both report zero latency, everywhere else in the chain, at every sample rate.
Three-band width that actually sums flat. A second crossover above the bass-mono split, with the low band passed through a matching allpass before the band sum so all three bands carry identical phase at the second crossover. Band sum flat within ±0.1 dB. Turn the high split off and the path is bit-identical to the two-band one — not close, identical.
A correlation guard with compressor ballistics and no blind spots. Dynamic detects on a fast 30 ms estimator and moves the gain through a dedicated asymmetric one-pole — 5 ms attack and 250 ms release, both defined as times to 90% settling so the specification and the measurement agree by construction. From rest it reaches 90% of its final attenuation in under 15 ms; recovering from a second of highly-correlated programme first, the same guard needs roughly 120 ms to reach that point, because the slower 30 ms symmetric detector has to unwind from a strongly in-phase reading before the fast smoother can act — still an order of magnitude faster than the calmer 300 ms Smooth path on the same programme. Every correlation estimate in the plugin obeys one binding rule: below an energy gate, decay toward zero. A leaky correlation ratio is invariant under silence — numerator and denominator decay together — so without that gate the meters would read ±1 on silence and the guard would latch fully out-of-phase after a burst and never let go.
Honest engineering, enforced by CI. 120 test cases on macOS and Windows, plus pluginval at strictness 10 and auval -strict: zero heap allocations on the audio thread under a replaced allocator — including mid-render mode switches and the linear-phase path swap — bit-exact loading of older sessions, a bit-identical off-sentinel for every new feature, and hard automation of every mode selector every 100 ms without a click.
Features
- Width — 0–200% Mid/Side width scaling; 100% is an unmodified pass-through of the input image
- Bass Mono Freq / Low Width — optional crossover (0–600 Hz) that keeps sub-bass centered while the highs go wide
- Auto Mono Safety — correlation-driven Side attenuation with a dead-zone and adjustable floor, plus an optional per-band mode (v0.2.0)
- Decorrelate — Classic is the v0.2.0 allpass widener; the Velvet Dense and Velvet Sparse modes synthesize width from published velvet-noise decorrelator designs and are fully mono-sum-safe by construction (v0.3.0)
- Haas Mode — optional 0–40 ms widening for genuinely mono material; a clearly documented trade-off, off by default
- Mono-safe by construction — the mono downmix is provably identical to the input's, and the v0.3.0 Velvet Decorrelate modes keep that guarantee too (Haas Mode and Classic Decorrelate aside)
- Zero latency in every mode except Linear Phase Bass Mono — TPT Linkwitz-Riley crossover, no oversampling, no lookahead; the optional linear-phase crossover reports 2048 samples at 48 kHz for host compensation (v0.3.0)
- Running correlation estimate exposed for a future GUI meter
- Output — ±24 dB trim
- Bass Mono Mode — Classic, Phase Matched (a companion allpass tracks the crossover's phase exactly) or Linear Phase for mastering-grade zero phase rotation (v0.3.0)
- High Split / High Width — a second Side crossover turning the width stage into a 3-band imager (v0.3.0)
- Safety Response — Smooth keeps the v0.2.0 meter ballistics; Dynamic detects on a fast 30 ms estimator and catches anti-phase transients Smooth lets through (v0.3.0)
- Width Comp — optional equal-power makeup so loudness stays constant as you sweep Width (v0.3.0)
- Mono Audition — one-click monitoring of the exact mono fold-down, post-everything (v0.3.0)
- Factory presets & preset management — browse/save/import/export via the in-plugin preset bar
Download
The latest builds are published on GitHub Releases.
The macOS binaries are Developer-ID-signed, notarised by Apple and stapled — they install and open without Gatekeeper warnings. Windows builds are not yet Authenticode-signed; SmartScreen may warn about an unknown publisher.
Compatible DAWs
Any modern DAW that supports VST3 or Audio Units. Pro Tools (AAX) is currently not supported.
Screenshots
Coming with the next release.
The custom interface is currently in design — screenshots will appear here as soon as it ships.
Audio examples
Coming with the next release.
Before/after clips are being recorded — audio examples will appear here with an upcoming release.
Support development
Basilica Audio is free software, built at night and tuned by ear. If it earns a place in your session, you can help keep the candles lit.
Donation links are not wired up yet — they will go live soon.






