#host #plugin #lv2

bin+lib lv2-host-minimal

一个非常简单的 lv2 主机

1 个不稳定版本

0.1.4 2021年11月26日
0.1.2 2021年9月9日
0.1.1 2021年5月16日
0.1.0 2021年5月15日

#1031 in 音频

GPL-3.0-only

23KB
443

lv2-host-minimal

一个简单的用于托管 lv2 插件的库。不打算支持任何类型的 GUI。

  • 托管 fx 插件(音频输入,音频输出)
  • 设置参数
  • 托管 midi 工具(midi 输入,音频输出)

示例

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
}

依赖项

~2.5MB
~54K SLoC