Closed AnClark closed 2 years ago
why this? if the LV2 works as you say why raising a deprecated VST2 plugin ? don't get me wrong, please, I really appreciate your efforts, but I kinda sense that you're wasting your precious time here :) cheers
ps. maybe move this line
ndelta = event->offset_frames;
in synthv1_vst.cpp;212 out of the if block to a couple of lines below is one idea?
why this? if the LV2 works as you say why raising a deprecated VST2 plugin ?
Well, VST2 is only deprecated by Steinberg, not by vendors.
For instance, until now Native Instruments still uses VST2 rather than VST3. Also, many other developers, no matter individual or corporations, still use VST2, or provide multiple versions.
VST2 is not limited to an API, but has already been an ad-hoc standard for audio plugins. Even though Steinberg had stopped providing its SDK, it won't stop vendors to make use of it.
So I don't really think VST2 is deprecated. Only Steinberg considers that.
what about the licensing issues ? VST2 is not, never was, free/open-source friendly to begin with. VST3 is a whole different story (it's GPL3, get it?)
so it's not only Steinberg that considers that VST2 is deprecated: I do too :)
what about the licensing issues ? VST2 is not, never was, free/open-source friendly to begin with.
I've found that you still prefer official VST2 SDK in Qtractor. As I've discovered before, free/open-source developers can make use of vestige.h
, the clean-room implementation without bloating the official SDK.
Let those who legally obtained a copy of official SDK aside, using vestige.h
couldn't be a problem of licencing as long as you don't redistribute the deprected official SDK.
Maybe turning to VST3 is really a better idea, but the official VST3 SDK is a little bit hard to compile. I may need to homebrew my own CMakeLists.txt
:-O
I've found that you still prefer official VST2 SDK in Qtractor.
not true; if the official vst2sdk is not found or not given then it falls back to the vestige header.
As I've discovered before, free/open-source developers can make use of vestige.h, the clean-room implementation without bloating the official SDK.
imnsho. the alleged "clean-room reverse-engineering" would not stand if steinberg would ever prosecute to trial; instead, a cease and-desist letter was sent to (most all) developers that were using it (me included), for not to use at least the original vst2sdk file names; and then, they moved along as there was nothing more to see :)
fwiw. vst2 is dead. long live vst3.
but that's not the point here anyway. even you'd raise a synthv1_vst3 i would question again "why?" :) lv2 is the one and only really free/libre/open-source plugin specification and, thanks to you (and to Cocko's of course), it's coming to platforms other than GNU/Linux.
cheers
lv2 is the one and only really free/libre/open-source plugin specification and, thanks to you (and to Cocko's of course), it's coming to platforms other than GNU/Linux.
My pleasure!
Since many musicians using Windows and macOS aren't familiar with LV2 but VST2/3, I decided to port it into VST format, to let more musicians know Vee-One suite. I'll freeze VST2 development, and turn to VST3 with official SDK. Thanks Steinberg for applying GPL to VST3.
By now, as I know, only REAPER, Ardour and Mixbus (based on Ardour) support LV2 natively. Other hosts require LV2VST (with my CMake-ized fork), which is not stable enough on Windows.
Of course, I prefer libre formats. Now LV2 version on Windows is ready for production. And we two (as well as Cockos) all welcome any new musicians to embrace LV2.
By the way, the examples shipped with VST3 SDK are extremely complicated than VeSTige-driven ones :-O I need time to digest.
Now I've ported synthv1 to VST, see https://github.com/anclark/synthv1/tree/vst-implementation, and available for both Linux and Windows. But it's not stable enough, still requiring more tests, and I'm still encountering a critical problem on processing.
System environment
Problems
Both problems are not exist on LV2 edition.
Note
VST-related codes are mainly in
src
, with keywordvst
in filenames. For example, the main VST code is insynthv1_vst.cpp
.