plugin_host 0.1.0

VST3 and CLAP plugin host for DAW — scanner, sandboxing, parameter automation, preset management
Documentation
  • Coverage
  • 45.18%
    103 out of 228 items documented1 out of 118 items with examples
  • Size
  • Source code size: 56.98 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 9.72 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 16s Average build duration of successful builds.
  • all releases: 16s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • ggmaldo

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 serializationsave_state() / load_state() for project_io integration

Usage

use plugin_host::{PluginRegistry, PluginScanner};
use plugin_host::sandbox::SandboxConfig;

// Scan system for plugins
let scanner = PluginScanner::new();
let mut registry = PluginRegistry::new();
let stats = registry.scan_system(&scanner);
println!("Found {} plugins", stats.found);

// Search the registry
let compressors = registry.search("compressor");
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