Files
soundcraft/docs/plugin-parity.md
T
dotCooCoo 40ced8132b Add a built-in Subharmonic plugin
The built-in plugins had no subharmonic synthesizer. Subharmonic
(`subharmonic`, Harmonic category, also offline as AudioSuite) adds the
octave below a lower and an upper band of the input. The Range picks the
two band frequencies (120-180, 80-120, 60-90 or 40-60 Hz). Each band
band-passes the input at its frequency and multiplies it by a flip-flop
that changes sign on every rising zero crossing, which moves the band an
octave down at a level that follows the band. A direct band adds the
input's own bass.

Each band has a gain from -120 to +24 dB and a solo; a solo also mutes
the dry signal. Drive raises the summed bands into one of six saturation
characters, and HP and LP filters (5 to 1000 Hz, Q 0.1 to 5) shape the
result. Below 50 % Mix the dry signal stays at full level, above 50 % the
wet signal does, and Wet Solo mutes the dry signal. Input and Output run
from -18 to +18 dB.

The Total row in docs/plugin-parity.md now counts 25 processors and 3
instruments, the entries in the built-in registry, and its Instruments
row lists `sampler` and no longer lists the Sampler as missing.
2026-10-24 04:57:37 -07:00

5.4 KiB
Raw Blame History

Plugin parity: built-in processors and plugin hosting

Last reviewed: 2026-10-10 · Last updated: 2026-10-24 · Change: trivial (Subharmonic; previously trivial: Sampler ping-pong loop phase (#463); previously minor: plugin editors on Windows) · Target: Avid Pro Tools Ultimate 2026.4.1

Pro Tools users live in plugins: the bundled set covers everyday mixing, and third-party plugins cover the rest. This doc tracks both. Our plugins have our own names and are written from scratch (clean-room rule): Avid plugin names are not used here, only categories.

Built-in plugins and AudioSuite: breadth ~40 %, ready ~35 % (80–120 h). Third-party hosting: breadth ~70 %, ready ~45 % (40–60 h). Both estimated.

Built-in processors (measured from crates/dsp/src/plugins)

Category Pro Tools bundles (approx., by category) SoundCraft (ids) Gap
EQ 1-band and 7-band EQ, channel strip, vintage EQ models eq_1band, eq_7band, channel_strip Vintage models, linear phase, dynamic EQ; parametric UI (#139)
Dynamics compressor/limiter, expander/gate, de-esser, maximizer, vintage compressors, multiband compressor, expander_gate, de_esser, maximizer Vintage/opto models, multiband, sidechain input (no key input anywhere)
Reverb algorithmic room/plate/hall; convolution (paid tier) room_reverb, plate_reverb Hall/chamber, convolution, early-reflection editor
Delay modulated delay, tape/analog delays mod_delay Tape, ping-pong, multi-tap, tempo-sync depth
Modulation chorus, flanger, phaser, tremolo, ring/frequency shift chorus, flanger, phaser Tremolo, auto-pan, ring modulation
Harmonic lo-fi, rectifier, amp simulation, saturation, tape, subharmonic synthesis lofi, rectifier, saturator, subharmonic (octave-down bass from a lower and an upper band, direct bass, drive characters, HP and LP filters) Amp and cabinet models, tape; subharmonic MIDI tuning and surround (LFE) version
Pitch and time pitch shift, varispeed effects, time shift pitch_shifter, time_shift Formant control, varispeed effect, pitch correction
Utility trim, gain, invert, DC offset, signal generator, dither, time adjuster trim, gain, invert, dc_offset_removal, signal_generator, dither Time adjuster, meter/analyzer plugins, noise shaping options
Instruments several virtual instruments (multi-sampler, piano, drum machine, organ, synths, sample player; Massive X Player added in 2026.4) subtractive_synth, drum_synth, sampler; mix.instrument takes the instrument's parameters in params and refuses unknown fields (#265). The sampler's ping-pong loop keeps its phase when a step is wider than the loop (#463). Piano, organ, wavetable, content library
Total ≈ 80 processors and instruments (estimate from Avid's bundle documentation) 25 processors + 3 instruments

AudioSuite: every catalog AudioSuite leaf maps to one of our processes (AUDIOSUITE in crates/ui-egui/src/menus.rs), so the AudioSuite menu is 100 % present. Depth: no preview, handles, "clip by clip / entire selection" and multi-input modes beyond the basics; hosted plugins can't be used offline as AudioSuite yet.

Fidelity: unmeasured. Nothing compares a SoundCraft processor's frequency response, gain reduction curve or reverb tail with the Pro Tools equivalent (G-07 in gaps.md). User report #152: a saved instrument level does not reach the bounce.

Third-party plugin hosting

Feature Pro Tools SoundCraft Notes
Plugin format AAX only (Native and DSP) CLAP, VST3, Audio Units (macOS) Users' libraries mostly ship VST3/AU too. AAX (#109) needs Avid's SDK licence and PACE signing: owner decision, likely never
VST2, LV2, LADSPA — ❌ (#30) Beyond Pro Tools; VST2 SDK is no longer licensable
Scan, vendor menus, instrument picker ✅ ✅ #23
Audio, parameters, automation, latency (PDC) ✅ ✅
Notes / MIDI to instruments ✅ ✅ But no live MIDI input (G-02)
State saved in sessions, presets ✅ ✅
Create/destroy off the audio thread ✅ ✅
Editors: CLAP — 🟡 floating windows; embedded editors on Windows Embedded on macOS/Linux missing
Editors: VST3 — 🟡 macOS (verified with a commercial pitch editor) and Windows (verified with a free JUCE compressor) Linux views missing
Editors: AU — ❌ Cocoa view hosting missing
Multiple editor pages ✅ 🟡 #6
macOS hardened-runtime entitlement for third-party code ✅ ❌ #153, #149 — signed builds refuse third-party VST3
Sidechain / key input ✅ ❌ All three hosts
ARA 2 (pitch/time editors in the timeline) ✅ ❌ Menu leaves Track/Clip/Window ▸ ARA still missing
Crash isolation in-process (DSP on HDX) in-process Out-of-process hosting would beat Pro Tools
Plugin delay reporting changes on the fly ✅ 🟡 Aux insert latency bug #103 (PR #133)

Revision history

Date Change Summary
2026-10-24 trivial Harmonic: Subharmonic (subharmonic)
2026-10-13 trivial Sampler ping-pong loop phase (#463)
2026-10-13 trivial mix.instrument sets built-in instrument parameters in params (#265)
2026-10-12 minor Editors: VST3 and embedded CLAP editors on Windows
2026-10-10 major Created: built-in processor inventory by category and third-party hosting checklist