Releases: gogins/csound-vst3-opcodes
New release of csound-vst3-opcodes
This release brings the vst3 opcodes into synchronization with Csound version 6.15.
Initial release of VST3 opcodes for hosting VST3 plugins in Csound
The vst3-opcodes plugin enables Csound to host VST3 plugins. VST3 is the current version of the VST protocol from Steinberg. It offers some advantages over the earlier VST2 protocol: sample accurate scheduling of parameter updates, more flexible parameter naming and arrangement, and real-time control of individual notes.
The VST3 SDK from Steinberg is hosted on GitHub and is GPLv3 for non-commercial uses, such as Csound and the vst3-opcodes. The vst3-opcodes project, also hosted on GitHub, is also GPLv3. That means the vst3-opcodes are compatible with Csound's LGPLv2.1 license, thanks to that clause permitting re-licensing Csound code to "any later version" of the GPL. Therefore, the vst3-opcodes are fully and legally licensed according to both the Steinberg license and the Csound license.
I have attached a copy of the documentation for these opcodes to this release. The major differences with the earlier vst4cs opcodes, which are still the only way for Csound to host VST2 plugins, are that the vst3-opcodes do not provide a way to open a plugin's user interface window, and that the vst3init opcode requires an additional parameter to specify the name of the plugin within its loadable module (AKA shared library, DLL, or bundle).
I have only tested these opcodes on Linux. However, I scrupulously followed the guidelines of the VST3 SDK and used its CMake build system, which is cross-platform. So, with very little work, it should be possible to build and use the vst3-opcodes also on Windows and macOS.