Robbert van der Helm
c7f9b12ca6
Add clap_plugin msgs for everything except process
2022-09-11 19:18:03 +02:00
Robbert van der Helm
8f8e7bac46
Add PrimitiveWrapper logging for CLAP
2022-09-11 19:18:03 +02:00
Robbert van der Helm
a9a6e68fc0
Add dedicated PrimitiveWrapper logging for bools
2022-09-11 19:18:03 +02:00
Robbert van der Helm
c0c2a61f03
Move PrimitiveWrapper to serialization common
2022-09-11 19:18:03 +02:00
Robbert van der Helm
6865cbd937
Implement CLAP plugin initialization
2022-09-11 19:18:03 +02:00
Robbert van der Helm
bc2bad3e94
Add constructors for reading extension support
2022-09-11 19:18:03 +02:00
Robbert van der Helm
7ea29cdfed
Add message structs for initializing plugins
2022-09-11 19:18:03 +02:00
Robbert van der Helm
d1a38aec8e
Rename vst to plugin in log message prefix
2022-09-11 19:18:03 +02:00
Robbert van der Helm
d2fb84e529
Add CLAP plugin destroying
...
Everything else is still a stub, but at least the lifecycle now works
correctly.
2022-09-11 19:18:03 +02:00
Robbert van der Helm
bca6588965
Fix clap_plugin_factory logging meesage
2022-09-11 19:18:03 +02:00
Robbert van der Helm
423534f373
Implement Wine side for creating plugin instances
2022-09-11 19:18:03 +02:00
Robbert van der Helm
e74c25445d
Add messages for creating plugin instances
2022-09-11 19:18:03 +02:00
Robbert van der Helm
bba5d34d41
Add a serialization struct for clap_host data
2022-09-11 19:18:03 +02:00
Robbert van der Helm
49e3f7ff1e
Capitalize CLAP plugin descriptor class name
...
To stay consistent with the rest of the naming.
2022-09-11 19:18:03 +02:00
Robbert van der Helm
d0aeeaba2a
Move CLAP version clamping to a function
2022-09-11 19:18:03 +02:00
Robbert van der Helm
41b2c2ea72
Fix bridged CLAP plugin names
2022-09-11 19:18:03 +02:00
Robbert van der Helm
c36590abf5
Add a basic CLAP plugin factory implementation
...
Which can only list plugins without creating them.
2022-09-11 19:18:03 +02:00
Robbert van der Helm
6098ebc778
Add a TODO for speeding up VST3 compilation
2022-09-11 19:18:03 +02:00
Robbert van der Helm
ec8028f78c
Allow serializing CLAP plugin factory list message
2022-09-11 19:18:03 +02:00
Robbert van der Helm
edc0cbbe38
Add serialization for enumerating CLAP factories
2022-09-11 19:18:03 +02:00
Robbert van der Helm
653a3a88cb
Add serialization for CLAP plugin descriptors
2022-09-11 19:18:03 +02:00
Robbert van der Helm
38187241d4
Add a document outlining CLAP support status
2022-09-11 19:18:03 +02:00
Robbert van der Helm
8ef8a61e2b
Add WantsConfiguration logging for CLAP
2022-09-11 19:18:03 +02:00
Robbert van der Helm
7a60cf37ea
Fix typos
2022-09-11 19:18:03 +02:00
Robbert van der Helm
7f5e2e6a35
Change CLAP socket names for more clarity
2022-09-11 19:18:03 +02:00
Robbert van der Helm
77e703e9e3
Fix CLAP library name in generated config.h
2022-09-11 19:18:03 +02:00
Robbert van der Helm
eb2b12aa2b
Add boilerplate for CLAP sockets
2022-09-11 19:18:03 +02:00
Robbert van der Helm
401ebb21ce
Add minimal CLAP logger
2022-09-11 19:18:03 +02:00
Robbert van der Helm
b7b6dff922
Add minimal boilerplate for CLAP serialization
2022-09-11 19:18:03 +02:00
Robbert van der Helm
1820a82bef
Update out of date VST3 socket docs
2022-09-11 19:18:03 +02:00
Robbert van der Helm
09e6c6494e
Add a CLAP plugin type
...
These aren't handled anywhere yet
2022-09-11 19:18:03 +02:00
Robbert van der Helm
6df0741195
Prefix top level VST3 message types
...
CLAP will use a similar structure. Alternatively we could use
namespaces, but while that would solve clashes for the linker with the
way namespaces in C++ work it would still be ambiguous which one is
being referred to just looking at the code.
2022-09-11 19:18:03 +02:00
Robbert van der Helm
5b4dbdd890
Move get_request_variant template function
...
This needs to be specialized for the CLAP and VST3 request variant
types.
2022-09-11 19:18:03 +02:00
Robbert van der Helm
9edb4aa567
Move WantsConfiguration to common
...
We'll also need this for CLAP.
2022-09-11 19:18:03 +02:00
Robbert van der Helm
4ca7ea17b2
Change terminology from 'VST' to 'plugin'
2022-09-11 19:18:03 +02:00
Robbert van der Helm
bf7280fc7e
Move Vst3MessageHandler to common and make generic
...
CLAP will use the same strategy.
2022-09-11 19:18:03 +02:00
Robbert van der Helm
ffad63d439
Add a CLAP chainloader
...
The functions it's supposed to load however don't exist yet.
2022-09-11 19:18:03 +02:00
Robbert van der Helm
98bb4a019b
Add CLAP whenever mentioning yabridge libs
2022-09-11 19:18:03 +02:00
Robbert van der Helm
36d2ca021b
Bump VST3 dependency version
2022-08-22 18:37:47 +02:00
Robbert van der Helm
637176541d
Remove old TODOs
2022-06-08 14:57:16 +02:00
Robbert van der Helm
d9de22ddbd
Add support for VST2 effBeginLoad{Bank,Program}
...
A user reported that REAPER was using these on the REAPER forum, but I
have not been able to reproduce that. And they went MIA after posting
about it. But hopefully this helps.
2022-06-08 14:27:04 +02:00
Robbert van der Helm
65cf9cd782
Increase VST2 buffer and MIDI serialization limits
...
This really, really shouldn't be needed, but some plugins do weird
things.
2022-05-26 12:57:18 +02:00
Robbert van der Helm
39605ef465
Increase MIDI event count limits for VST2
...
This really shouldn't be needed, but apparently there are plugins that
output more than 2048 events per buffer.
https://github.com/robbert-vdh/yabridge/issues/35#issuecomment-1138176117
2022-05-26 12:56:35 +02:00
Robbert van der Helm
03c2acd578
Add a todo on the VST 3.7.5 moduleinfo format
...
Supporting this in yabridge would require parsing JSON. So unless this
feature is actually used, we should probably not bother.
2022-05-19 22:31:16 +02:00
Robbert van der Helm
162aeed661
Only set up VST3 SHM audio buffers in setActive()
...
This avoids doing the duplicate check (since both `setProcessing()` and
`setActive()` would be called), and this also gets rid of the assumption
added a couple commits ago that `setupProcessing()` is only ever called
once, which is not true.
2022-05-19 14:43:59 +02:00
Robbert van der Helm
8c10edf861
Add explicit virtual default destructors
...
We need to silence the warning about this because Steinberg doesn't
declare their base class destructors as virtual (because of Windows ABI
compatibility issues). But we can still do it inside of yabridge to have
at least a bit more safety.
2022-05-18 18:44:15 +02:00
Robbert van der Helm
dedcdefebf
Allow resizing shared memory buffers in setActive
...
REAPER apparently changes bus arrangements between
`IAudioProcessor::setupProcessing()` and `IAudioProcessor::setActive()`.
2022-05-18 18:16:14 +02:00
Robbert van der Helm
b3efcf4e06
Merge yabridge-group.exe and yabridge-host.exe
...
They were 95% the same, so this makes a lot more sense this way. When
group host processes were introduced yabridge only did VST2 bridging,
but we already have a plugin type argument anyways so might as well
reuse that for group hosts.
2022-04-16 23:26:24 +02:00
Robbert van der Helm
85989f4c1d
Also add a way to use logging library without Asio
2022-04-16 20:37:11 +02:00
Robbert van der Helm
d63b4d2da5
Add the plugin library names to config.h.in
2022-04-16 20:37:11 +02:00