plugin_host
VST3 and CLAP plugin host for DAW applications in Rust. Scans, loads and processes third-party plugins with configurable sandboxing.
Features
- CLAP and VST3 — bridge architecture ready for both formats via
libloading - Plugin scanner — finds plugins in standard OS paths (Linux, macOS, Windows)
- Sandboxing — configurable in-process or out-of-process per plugin
- Auto-restart — out-of-process plugins that crash are restarted automatically
- Parameter automation — normalized parameter values with descriptor metadata
- Preset management — save/load plugin state as named presets
- Bypass — hardware-style bypass with direct input→output passthrough
- Project serialization —
save_state()/load_state()forproject_iointegration
Usage
use ;
use SandboxConfig;
// Scan system for plugins
let scanner = new;
let mut registry = new;
let stats = registry.scan_system;
println!;
// Search the registry
let compressors = registry.search;
let instruments = registry.instruments;
// Instantiate a plugin (bridge implementation connects here)
// instance.activate(44100.0, 64, 512);
// instance.process(&mut process_data);
// instance.save_preset("My Sound");
Sandbox modes
| Mode | Performance | Safety |
|---|---|---|
InProcess |
Maximum | Plugin crash = DAW crash |
OutOfProcess |
IPC overhead | Plugin crash = auto restart |
Bridge status
The ClapBridge and Vst3Bridge structs are fully scaffolded with all required method stubs and inline comments mapping each method to its exact C API call. Connect clap-sys or vst3-sys to activate.
Part of the DAW crate ecosystem
audio_core_dsp
midi_clock_sync
audio_graph
event_queue
mixer
piano_roll
plugin_host ← you are here
project_io
License
MIT