Lancet — user manual

Cut where it counts — a surgical dynamic EQ with an analog soul.

What's new in v0.2.0

A research-derived deep-dive rework (see docs/design-brief.md/ docs/research-notes.md), the suite's M2 preset system, and a German frame localisation:

What it is

Lancet is a six-band dynamic EQ in the spirit of the Waves F6 class: each band is a normal parametric EQ band (bell, or shelf on Band 1/Band 6) whose gain can additionally move with the program material. Feed it loud and it reacts — cutting a resonance only when it flares up, or opening a boost only when a part gets buried — then settles back to its static setting once the signal drops back down. Because each band's dynamic move is driven by its own pre-EQ, band-filtered detector, one band's cut never confuses another band's detector, and a band's own gain move never feeds back into its own detection.

Where a static EQ band asks "how much?", Lancet's dynamic bands also ask "when?" — the difference between permanently notching out a 3 kHz resonance (which also thins the tone whenever that resonance isn't present) and only pulling it back exactly when it rings.

Where it sits in a mix chain

Lancet is a corrective, surgical tool, most useful early-to-mid signal chain, before broad tonal shaping and bus compression:

Source track -> [gain staging / gate] -> Lancet (resonance/harshness control) -> broad EQ / saturation -> compression -> bus

Reach for it when a static EQ cut would either under-treat the problem (leaving room for it to still poke through on the loudest hits) or over-treat it (thinning the tone on quieter passages where the problem isn't present). It also works as a mix-bus or master-bus tool for controlling a specific recurring resonance or harshness band without permanently coloring everything under it.

Signal flow

in --[Input Trim]--+--[pre-chain tap]--> each band's Detector (bandpass @ band freq/Q -> envelope)
                    |
                    +--> Band1 -> Band2 -> Band3 -> Band4 -> Band5 -> Band6 --> [Mix] --> [Output Trim] --> out

Every band's detector taps the signal right after Input Trim, before Band 1 - not that band's own serially-processed input - so a downstream band's gain move never perturbs an upstream band's detection, and no band's own move feeds back into triggering itself. See docs/architecture.md for the full engineering breakdown (gain-computer formula, detector selectivity, sub-block coefficient smoothing, Listen).

Parameter reference

Per band (Band 1 - Band 6, identical controls unless noted)

Parameter Range Default Unit What it does musically
On Off / On Off (Band 3: On) Enables the band. An off band is a true bypass - it doesn't touch the signal at all, though its detector keeps running underneath so there's no jump when you switch it back on.
Type Bell / Shelf Bell Band 1 and Band 6 only. Band 1's Shelf is a Low Shelf (boosts/cuts everything below Freq); Band 6's Shelf is a High Shelf (boosts/cuts everything above Freq). Bands 2-5 are always Bell.
Freq 20 - 20000 100 / 250 / 630 / 1600 / 4000 / 10000 Hz The band's centre frequency (Bell) or corner frequency (Shelf) - both the filter's own shape and what its detector listens to.
Q 0.3 - 12 1.0 How narrow (high Q) or broad (low Q) the band is. Ignored in Shelf mode, which always uses a fixed, standard shelf slope (Q = 0.707) regardless of this setting.
Gain -12 - +12 0 dB The band's static gain - always applied, dynamic or not. Set this to your "at rest" EQ move; Range then adds or subtracts on top of it when the detector triggers.
Range -12 - +12 0 dB How far the band's gain can move dynamically, on top of Gain. 0 = a pure static EQ band (no detector influence at all). Negative Range cuts as the signal gets louder past Threshold (the classic resonance-taming/de-essing move); positive Range boosts as it gets louder (an upward "duck-in" expansion move, useful for e.g. bringing out a pick attack only on hard-hit notes).
Thresh -60 - 0 -30 dB The detector level above which the dynamic move starts engaging. A soft knee centred on this value makes the transition in gradual rather than a hard switch - the knee's own width scales with Range (v0.2.0): clamp(|Range| * 0.5, 2, 10) dB, so shallow Range settings read gentler and full-depth (±12 dB) Range settings sound identical to v0.1.0's fixed 6 dB knee.
Attack 0.1 - 500 5 ms How quickly the dynamic gain moves once the detector crosses Threshold. Fast attack catches transients hard; slower attack lets a brief peak through before reacting, which can sound more natural on percussive material. The 500 ms ceiling is meant for slow, musical tonal-balancing moves, not transient catching.
Release 5 - 1500 150 ms How quickly the dynamic gain returns toward Gain once the detector drops back below Threshold. Fast release can pump audibly on sustained material; slow release smooths the return out but can hold a cut/boost into content that no longer needs it.
Listen Off / On Off Solos that band's own detector signal - the bandpass-filtered, pre-EQ audio that's actually driving its dynamic move - in place of the normal program output, for auditioning exactly what triggers it. Exclusive: engaging Listen on one band disengages any other band's Listen. The full signal chain (including every band's own processing) keeps running underneath, so disengaging Listen never pops.
Auto Release (v0.2.0) Off / On Off Program-dependent auto-release: when on, the effective release time for a given transition shortens automatically (never below this plugin's own 5 ms Release floor, never past the manual Release setting itself) whenever the signal's own envelope is already falling on its own - useful for letting a band relax faster on naturally-decaying material without giving up a slower, musical manual Release for sustained material. Automation/preset-only in v0.2.0 - no dedicated editor knob yet (roadmap M3).
Gain/Q (v0.2.0) Off / On Off Gain/Q coupling: when on, the band's own filter Q widens (softens) proportionally to how far its dynamic gain currently sits toward Range - a gentler, more analog-style character at deeper dynamic moves. Static Gain never affects Q, only the dynamic component does. Automation/preset-only in v0.2.0 - no dedicated editor knob yet (roadmap M3).

Global

Parameter Range Default Unit What it does
Input Trim -12 - +12 0 dB Gain applied before Band 1 - and before every band's detector taps the signal, so it also shifts what level reaches each band's Threshold.
Output Trim -12 - +12 0 dB Gain applied after Band 6 and after the Mix blend - the final gain stage, for matching Lancet's output level to whatever follows it in the chain.
Mix 0 - 100 100 % Parallel dry/wet blend of the whole six-band chain. 100% is fully processed; lower values blend in progressively more of the untouched (but still Input-Trimmed) signal - useful for "New York"-style parallel dynamic EQ, where you want the correction to add rather than fully replace.

Presets (v0.2.0)

A preset bar sits at the top of the editor: [<] [Preset Name] [>] to step through the factory and user library alphabetically, Save/Save As... to write your own, Delete for user presets, Import.../Export... for single .basilicapreset files or .zip banks, and a menu (click the preset name) with a "Set current as default" entry for your own out-of-the-box starting point. Nine factory presets ship with v0.2.0 - see docs/presets.md for what each one does and why. User presets are stored per-user at ~/Library/Audio/Presets/Yves Vogl/Lancet/ on macOS (%APPDATA%/Yves Vogl/Lancet/Presets/ on Windows).

The editor's frame strings (preset bar labels, menus, dialogs) are localised to German automatically when the system language is German; parameter names, units, and technical terms (Attack, Release, Hz, dB, ms, …) always stay in English, matching every other Basilica Audio plugin.

Tips