I've been working on LV2 support. This is work in progress, so I'm 
submitting the current version here, while I know the code is somewhat 
incomplete. As discussed previously, there is no custom UI support yet, and 
should be added once we have out-of-process support.

- the ringbuffer is a copy from jack driver, so probably we should have 
Bse::FrameRingBuffer<T> and Bse::RingBuffer<T> implemented in 
bse/ringbuffer.hh and used by both
- the code is used by specifying at LV2 URI (defaults to zynaddsubfx), like
```
LV2URI=http://synthv1.sourceforge.net/lv2 make run # synth
LV2URI=http://calf.sourceforge.net/plugins/Monosynth make run # synth
LV2URI=urn:ardour:a-reverb make run # stereo effect
```
- preset loading should not be done in RT thread (as discussed in last 
meeting), and notify UI, too
- there should be a way to select which plugin to use (LV2URI) other than 
commandline
You can view, comment on, or merge this pull request online at:

  https://github.com/tim-janik/beast/pull/149

-- Commit Summary --

  * DEVICES: lv2device: initial LV2 support
  * DEVICES: lv2device: support setting URI via env variable for testing
  * DEVICES: lv2device: map for plugin input control ports to device params
  * DEVICES: lv2device: activate instance before using it
  * DEVICES: lv2device: add initial supports for presets
  * DEVICES: lv2device: refactor plugin instance preset initialization
  * DEVICES: lv2device: add internal API to unmap urid -> string
  * DEVICES: lv2device: initial implementation for worker extension
  * DEVICES: lv2device: use semaphore to synchronize worker thread
  * DEVICES: lv2device: join worker thread if plugin instance is deleted
  * DEVICES: lv2device: fix crash if no presets are available
  * DEVICES: lv2device: deactivate instance during destructor
  * DEVICES: lv2device: support plugins with audio input
  * DEVICES: lv2device: free instance when done, handle failed instantiate

-- File Changes --

    M config-checks.mk (2)
    A devices/lv2device/lv2_evbuf.cc (276)
    A devices/lv2device/lv2device.cc (937)
    A devices/lv2device/ringbuffer.hh (266)

-- Patch Links --

https://github.com/tim-janik/beast/pull/149.patch
https://github.com/tim-janik/beast/pull/149.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/tim-janik/beast/pull/149
_______________________________________________
beast mailing list
[email protected]
https://mail.gnome.org/mailman/listinfo/beast

Reply via email to