Open LeStahL opened 11 months ago
Spying how vst2 package does it would be a good idea https://github.com/pipelined/vst2 Having a general package for making LADSPA plugins and then make sointu use that would be a good idea.
LADSPA API can not process MIDI events, only samples - LV2 is the correct choice of API here, so I'll rename the ticket.
I don't think I will have the energy to do this, but the correct approach would be to make a package similar to vst2 that bridges the calls from Go to C and vice versa, and then use that within sointu. One could either do a minimal wrapper without adding any functionality, or perhaps similar wrapper like the LV2 C++ wrappers, which give default implementations for functionalities so one needs to only write the interesting functions.
I don't like how they decided to have LV2 plugins be folders, with multiple files and metadata; this complicates builds in go a lot, because go generally assumes "one executable" builds and has no build automation on its own. I really wish distributing LV2 would be as simple as "single shared object", like VST2. Apparently VST2 didn't get everything wrong (but quite many things they did).
If someone krhmkrhm is interested to take on the job, I'm happy to delegate :D
I'd be interested to write this (and also write & maintain a go module for easy access to LV2), but it may take some time until I start, because I'm busy atm with the upcoming Revision compos :)
Sointu could have a LADSPA plugin target (https://www.ladspa.org/ladspa_sdk/ladspa.h.txt). This would enable the use of LMMS (or other, more unix-based sequencers) with Sointu.