rust-vst2
A library to help facilitate creating VST plugins in rust.
This library is a work in progress and as such does not yet implement all opcodes. It is enough to create basic VST plugins without an editor interface.
Please note: This api may be subject to rapid changes and the current state of this library is not final.
Library Documentation
TODO
- Implement all opcodes
- Proper editor support (possibly conrod + sdl2?)
- Write more tests
- Provide better examples
Usage
To create a plugin, simply create a type which implements plugin::Plugin
and
std::default::Default
. Then call the macro plugin_main!
, which will export
the necessary functions and handle dealing with the rest of the API.
Example Plugin
A simple plugin that bears no functionality. The provided Cargo.toml has a crate-type directive which builds a dynamic library, usable by any VST host.
src/lib.rs
extern crate vst2;
use ;
;
plugin_main!; // Important!
Cargo.toml
[]
= "basic_vst"
= "0.0.1"
= ["Author <author@example.com>"]
[]
= "0.0.1"
[]
= "basicvst"
= ["dylib"]