lv2-host-minimal

Crates.iolv2-host-minimal
lib.rslv2-host-minimal
version0.1.4
sourcesrc
created_at2021-05-15 21:49:03.181573
updated_at2021-11-26 18:21:20.934886
descriptionA very minimal lv2 host.
homepage
repositoryhttps://github.com/ocdy1001/lv2-host-minimal
max_upload_size
id398013
size60,961
Cody Bloemhard (codybloemhard)

documentation

README

lv2-host-minimal

Simple library to host lv2 plugins. Is not meant to support any kind of GUI.

  • Host fx plugins (audio in, audio out)
  • Set parameters
  • Host midi instruments (midi in, audio out)

Example

let mut host = Lv2Host::new(1, 1, 44100);
host.add_plugin("http://calf.sourceforge.net/plugins/Monosynth", "Organ".to_owned()).expect("Lv2hm: could not add plugin");
host.set_value("Organ", "MIDI Channel", 0.0);

for i in 0..44100 {
    // alternate midi on and off messages, 5000 samples apart
    let mut midimsg = Vec::new();
    if (i % 10000) == 0 {
        midimsg.push((0, [0x90, 72, 96]))
    }
    else if (i % 5000) == 0 {
        midimsg.push((0, [0x80, 72, 96]))
    }
    let out = host.apply_multi(0, midimsg, [&[0.0], &[0.0]]).unwrap();
    // do something with your audio
}
Commit count: 0

cargo fmt