// the find
RustAudio/vst3-sys
Raw Bindings to the VST3 API
Raw Rust bindings to Steinberg's VST3 COM API — no abstractions, just the FFI surface so you can build a plugin host or plugin from scratch. This is the foundation layer that higher-level crates like `vst3` build on top of. Useful if you need direct control or are writing your own wrapper.
The binding coverage is solid across the core interfaces — audio processor, edit controller, parameter changes, events, MIDI, note expression, units. Vendoring a fork of `com-rs` rather than depending on the upstream (which had Windows-only assumptions) was the right call and avoids the vtable calling convention mess on non-Windows targets. The `again` example mirrors the canonical Steinberg example, which makes it easy to verify correctness against the reference implementation.
Dead since June 2023 — 23 forks and no merges suggests the community has moved on or fragmented. The README admits missing SDK constants and points you at `grep todo` to find gaps, which is not confidence-inspiring for production use. GPL3 is a landmine for commercial plugin developers; Steinberg's own SDK is dual-licensed and most Rust plugin developers expect MIT/Apache-2, so this license choice quietly kills adoption for anyone selling plugins. The `com` subdirectory is a vendored fork with no clear upstream sync story, so COM ABI bugs will never get fixed here.