Commit Graph

874 Commits

Author SHA1 Message Date
Robbert van der Helm e273051a6c Add a Vst3Bridge implementation file 2020-12-07 18:28:16 +01:00
Robbert van der Helm 84e13e556c Add #ifdef WITH_VST3 guards around VST3 hosting 2020-12-07 18:28:16 +01:00
Robbert van der Helm 3db099e0fc Also make the GroupHost plugin type agnostic 2020-12-07 18:28:16 +01:00
Robbert van der Helm 0eb80fe866 Add a general entry point to HostBridge
Since for all plugin types we would need to start listening for incoming
events this way.
2020-12-07 18:28:16 +01:00
Robbert van der Helm 3dd5090023 Support multiple plugin types in individual host 2020-12-07 18:28:16 +01:00
Robbert van der Helm 41da621e29 Add a todo for decoupling Editor from VST2 2020-12-07 18:28:16 +01:00
Robbert van der Helm eeb6acf8dd Move event handling to a common HostBridge 2020-12-07 18:28:16 +01:00
Robbert van der Helm a9b7a6a835 List VST3 support in the initialization message 2020-12-07 18:28:16 +01:00
Robbert van der Helm cf72c13579 Add a define for VST3 support 2020-12-07 18:28:16 +01:00
Robbert van der Helm 969ad75da5 Add some more VST3 implementation considerations 2020-12-07 18:28:16 +01:00
Robbert van der Helm 2060606864 Add a list of things to watch out for with VST3 2020-12-07 18:28:16 +01:00
Robbert van der Helm f9a1bcd7bd Split VST2 specific functionality into Vst2Logger 2020-12-07 18:28:16 +01:00
Robbert van der Helm 2230b5099f Move logger to common/logging/common.h 2020-12-07 18:28:16 +01:00
Robbert van der Helm a55fbb0daf Mention the version and patches of the VST3 SDK 2020-12-07 18:28:16 +01:00
Robbert van der Helm 278cd2e710 Spawn all hosts directly using HostRequest
This way we can set the plugin type inside of the `Vst*PluginBridge`
instance.
2020-12-07 18:28:16 +01:00
Robbert van der Helm e21d3e020f Rename GroupRequest to HostRequest
We'll also use this to encode information in when launching
`yabridge-host.exe` for individually hosted plugins.
2020-12-07 18:28:16 +01:00
Robbert van der Helm 1c5a9423d2 Print the plugin type on initialization 2020-12-07 18:28:16 +01:00
Robbert van der Helm f9bb3822de Pass plugin type when calling the host application 2020-12-07 18:28:16 +01:00
Robbert van der Helm 1142c908df Add serialization support for PluginType 2020-12-07 18:28:16 +01:00
Robbert van der Helm 67388dc2a6 Add a plugin type tag and conversion functions 2020-12-07 18:28:16 +01:00
Robbert van der Helm 47baef3107 Rename architecture related functions and structs 2020-12-07 18:28:16 +01:00
Robbert van der Helm 7fc7a51a46 Move PluginArchitecture to common
Along with the accompanying function to parse a PE32 file. We're going
to have to define some common tags for different plugin types.
2020-12-07 18:28:16 +01:00
Robbert van der Helm 687696ec6b Reimplement EventHandler on top of AdHocSocketHandler 2020-12-07 18:28:16 +01:00
Robbert van der Helm 5607a643e4 Add a generic ad hoc socket listener
This is a generalized version of EventHandler.
2020-12-07 18:28:16 +01:00
Robbert van der Helm 555b442f75 Add a todo regarding benchmarking ad hoc sockets 2020-12-07 18:28:16 +01:00
Robbert van der Helm fa719c286d Create base class for sockets and derive from that
Now the host launching procedure can be agnostic of the socket
implementation.
2020-12-07 18:28:16 +01:00
Robbert van der Helm 5b2221b251 Add a (nonfunctional) VST3 entry point 2020-12-07 18:28:16 +01:00
Robbert van der Helm 6c26168303 Patch the rest of the VST3 SDK for winegcc 2020-12-07 18:28:16 +01:00
Robbert van der Helm e7e1387c30 Also patch pluginterfaces for winegcc compilation 2020-12-07 18:28:16 +01:00
Robbert van der Helm 7dc0be40a4 Move libyabridge-vst2.so definition to above VST3 2020-12-07 18:28:16 +01:00
Robbert van der Helm b64c67d2ad Patch VST3 SDK base to allow winelib compilation 2020-12-07 18:28:16 +01:00
Robbert van der Helm c8d76d9c92 Add proper dependencies for the entire VST3 SDK 2020-12-07 18:28:16 +01:00
Robbert van der Helm bb85d99657 Rename 'Sockets' to 'Vst2Sockets' 2020-12-07 18:28:16 +01:00
Robbert van der Helm 2fbd14908a Split communication/vst2.h into common and VST2
So we can reuse the generic bits for our VST3 implementation.
2020-12-07 18:28:16 +01:00
Robbert van der Helm 46bc0301af Move communication.h to communication/vst2.h 2020-12-07 18:28:16 +01:00
Robbert van der Helm 28fe0ecd60 Add [[maybe_unused]] to our constexpr constants 2020-12-07 18:28:16 +01:00
Robbert van der Helm 9c8b543d5d Split serialization.h into common and VST2 parts 2020-12-07 18:28:16 +01:00
Robbert van der Helm 6317ca1455 Bump the VST3 dependency to one that uses -isystem
Every included file from the SDK would emit a ton of warnings otherwise.
They should really be fixing this on the VST3 side, but that's probably
not going to happen.
2020-12-07 18:28:16 +01:00
Robbert van der Helm 04dacc0a40 Add a dependency for the VST3 pluginterfaces 2020-12-07 18:28:16 +01:00
Robbert van der Helm c6b58c1a64 Don't use CMake for the VST3 SDK
This can't work yet.
2020-12-07 18:28:16 +01:00
Robbert van der Helm 4be7af2451 Add a TODO for replacing the cmake subproject
This is not going to work due to the linked issue with Meson. I didn't
want to reinvent the wheel by writing a meson build file by hand, but
we'll just have to.
2020-12-07 18:28:16 +01:00
Robbert van der Helm 9ece1b916e Rename plugin.cpp to vst2-plugin.cpp 2020-12-07 18:28:16 +01:00
Robbert van der Helm f9775dced3 Add links to all other wrapped dependencies 2020-12-07 18:28:16 +01:00
Robbert van der Helm d168fbcd25 Add VST3 SDK to the list of included dependencies 2020-12-07 18:28:16 +01:00
Robbert van der Helm af9917b9be Disable the VST3 examples 2020-12-07 18:28:16 +01:00
Robbert van der Helm c4dd0b30a4 Mention the new CMake requirement in the changelog 2020-12-07 18:28:16 +01:00
Robbert van der Helm 18571bca5d Add a dependency for the VST3 SDK 2020-12-07 18:28:16 +01:00
Robbert van der Helm 4291083a46 Rename PluginBridge to Vst2PluginBridge 2020-12-07 18:28:16 +01:00
Robbert van der Helm 6195caf53e Move src/plugin-bridge to src/bridges/vst2 2020-12-07 18:28:16 +01:00
Robbert van der Helm 9d40e04a62 Update all references to libyabridge.so 2020-12-07 18:28:16 +01:00