Robbert van der Helm
a194765696
Rename EventHandler to Vst2EventHandler
2021-05-20 13:54:31 +02:00
Robbert van der Helm
37d706df63
Handle mutual recursion on plugin side globally
...
This makes much more sense, since all plugin instances will be sharing a
single GUI thread. What would happen was that resize calls from one
instance and GUI thread function calls from another instance would
collide. Using a single shared mutual recursion mechanism (just like on
the Wine side) fixes this.
2021-05-16 01:17:04 +02:00
Robbert van der Helm
9f756b4881
Rewrite architecture document ToC
2021-02-14 00:54:29 +01:00
Robbert van der Helm
c9fbd0627f
Rewrite the architecture document for VST3 support
...
This now also goes more in depth on the more interesting parts of
yabridge's implementation while skimming over lesser useful technical
bits.
2021-02-14 00:48:15 +01:00
Robbert van der Helm
38f34f91f2
Update the readme for VST3
2020-12-26 13:57:57 +01:00
Robbert van der Helm
d99f880277
Rename YaHostApplication implementation
...
The context should make it obvious where it's implemented, and with the
current design we only an implementation on one of the two sides.
2020-12-18 21:36:39 +01:00
Robbert van der Helm
7a5de5d35e
Update the VST3 implementation documentation
2020-12-17 15:43:13 +01:00
Robbert van der Helm
11bf7532fa
Rename the monolitic class to Vst3PluginProxy
...
Now it's starting to look promising.
2020-12-17 13:07:42 +01:00
Robbert van der Helm
d8b2646563
Split off IComponent and create a monolithic class
...
We can now use implement all VST3 plugin interfaces through this class,
check whether the object from the plugin also supports these classes,
and then conditionally allow casting to the supported classes. This
should give us a one-to-one proxy of the original object.
2020-12-17 12:49:33 +01:00
Robbert van der Helm
602bbc5d35
Add TODO about replacing known_iids with flags
2020-12-17 00:31:32 +01:00
Robbert van der Helm
6809e73d6b
Split IPluginBase from IComponent
...
We're also going to need this for `IEditController`. Separating all of
these classes will also keep everything much more maintainable with all
of these associated structs.
2020-12-16 23:46:47 +01:00
Robbert van der Helm
7488d6f482
Move the VST3 design document to docs/
2020-12-16 21:54:18 +01:00
Robbert van der Helm
9d40e04a62
Update all references to libyabridge.so
2020-12-07 18:28:16 +01:00
Robbert van der Helm
e2603df522
Update the architecture document
2020-11-07 21:45:02 +01:00
Robbert van der Helm
ba6381e3ae
Rename EventHandler::{send,receive} to *_event(s?)
...
Since it does something way more involved than
`SocketHandler::{send,receive_multi}`, and that makes it a bit confusing
if you don't already know about that (and even if you do).
2020-11-01 12:01:50 +01:00
Robbert van der Helm
74c3cab046
Move event handling logic to a dedicated class
...
Now all pieces are in place to allow handling events over multiple
socket connections.
2020-10-26 11:40:38 +01:00
Robbert van der Helm
4b4b19bbd8
Mention multiple socket endpoints in architecture
2020-10-25 21:21:00 +01:00
Robbert van der Helm
8198a73742
Add support for double precision audio #34
...
So far I've only seen REAPER running iZotope Rx plugins utilize this.
2020-08-24 16:13:29 +02:00
Robbert van der Helm
cd02ab5fc9
Send the configuration from plugin to Wine host
...
Next we can add some options for different plugin editor behaviours for #27 .
2020-07-22 17:15:55 +02:00
Robbert van der Helm
40f88b948f
Document behaviour differences with plugin groups
2020-05-27 15:43:43 +02:00
Robbert van der Helm
941f915dfe
Move the architecture section to docs/
...
It's getting a bit unwieldy to be left in the readme.
2020-05-27 15:24:54 +02:00