Robbert van der Helm
b5080d8086
Update architecture document
2022-10-31 12:17:23 +01:00
Robbert van der Helm
3d832159b3
Change wording
2022-10-03 02:24:32 +02:00
Robbert van der Helm
f3e41d19ef
Add a very minimal architecture entry for CLAP
2022-09-25 17:15:50 +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
c2794831da
Add (for now, hardcoded) chainloader libraries
2022-04-16 20:37:11 +02:00
Robbert van der Helm
88ac466501
Remove all references to Boost
...
Since we no longer depend on any of it.
2022-04-16 20:37:10 +02:00
Robbert van der Helm
df40b85e60
Mention Wine->X11 drag-and-drop in architecture.md
2021-07-22 14:28:27 +02:00
Robbert van der Helm
b21e9f29bb
Mention new embedding structure in architecture.md
2021-07-22 14:25:56 +02:00
Robbert van der Helm
a58005252a
Mention the new audio buffers in architecture.md
2021-07-14 17:02:20 +02:00
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