Robbert van der Helm
5e26d30752
Add a wrapper for IUnitHandler
2020-12-26 14:12:40 +01:00
Robbert van der Helm
b9b6129933
Rewrite the readme introduction
2020-12-26 13:57:57 +01:00
Robbert van der Helm
d32e566446
Update the changelog for VST3 support
2020-12-26 13:57:57 +01:00
Robbert van der Helm
38f34f91f2
Update the readme for VST3
2020-12-26 13:57:57 +01:00
Robbert van der Helm
86aaf2fa3a
Implement IEditController2::openAboutBox
...
With this IEditController2 has been fully implemented.
2020-12-26 00:10:39 +01:00
Robbert van der Helm
49eeee99fa
Add an XEmbed compatibility option
2020-12-25 19:49:47 +01:00
Robbert van der Helm
70cb6dad89
Allow indirect IConnectionPoint connections
...
This is needed to support Ardour. These extra hops and serialization
steps will probably hurt performance, but outside of some huge hacks (to
connect the components directly anyways) there's not much else we can
do.
2020-12-25 14:21:18 +01:00
Robbert van der Helm
b0fc8f2c5f
Remove are_objects_directly_connected check
...
It's not necessary, since all of these objects are simple data objects
that will be passed as arguments to other functions. When we have to
pass through one of those functions we can just serialize the objects at
that point.
2020-12-24 14:45:58 +01:00
Robbert van der Helm
a86c37a21d
Partially implement IHostApplication
...
For now only works for directly connected components.
2020-12-24 13:48:31 +01:00
Robbert van der Helm
9bb90388c1
Implement IPlugView::checkSizeConstraint()
...
With this the whole of `IPlugView` and thus also `IEditController` is
implemented.
2020-12-22 15:42:41 +01:00
Robbert van der Helm
656f6d3f6c
Implement IPlugFrame::resizeView()
...
The base IPlugFrame only contains this single function.
2020-12-22 15:09:33 +01:00
Robbert van der Helm
da6ddccf07
Implement IPlugView::setFrame()
2020-12-22 14:16:00 +01:00
Robbert van der Helm
b7047a5281
Implement IEditController::createView()
...
Even though `Vst3PlugViewProxyImpl` is still only stubs,
`IEditController` is now fully implemented.
2020-12-19 21:07:36 +01:00
Robbert van der Helm
95b30b069e
Include libyabridge-vst3.so in the build artifacts
2020-12-19 13:23:53 +01:00
Robbert van der Helm
71493299ec
Implement IConnectionPoint::disconnect
2020-12-19 13:07:58 +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
cfa4849467
Partially implement IConnectionPoint::connect()
...
This now works for direct connections, which is probably how most hosts
will use this.
2020-12-18 14:09:20 +01:00
Robbert van der Helm
f83e526fc6
Add stubs for IConnectionPoint
2020-12-18 13:36:48 +01:00
Robbert van der Helm
97570a47ba
Add a document with all implemented interfaces
2020-12-16 22:07:43 +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
1dd575e4a7
Implement IAudioProcessor::process()
...
With this the entire `IAudioProcessor` interface has been implemented
and in theory it should now be possible to process audio and events.
Logging for these requests still has to be implemented separately.
2020-12-16 18:55:34 +01:00
Robbert van der Helm
2bf98d0a97
Implement writing back YaProcessDataResponse
...
Everything around `ProcessData` is now fully implemented and should in
theory work.
2020-12-16 18:14:28 +01:00
Robbert van der Helm
7e40d70ff4
Update the TODO list in the readme
2020-12-15 20:07:03 +01:00
Robbert van der Helm
a516309d17
Implement IEventList
2020-12-15 18:32:43 +01:00
Robbert van der Helm
92c37f71db
Implement IParameterChanges
2020-12-15 14:24:55 +01:00
Robbert van der Helm
026595d99f
Implement IParamValueQueue
2020-12-15 14:23:55 +01:00
Robbert van der Helm
e7d7317f60
Add a partial AudioBusBuffers implementation
2020-12-15 13:08:12 +01:00
Robbert van der Helm
c815b3903b
Implement IAudioProcessor::getTailSamples()
2020-12-14 21:43:38 +01:00
Robbert van der Helm
e653142e45
Implement IComponent::getState()
...
With this the basic IComponent interface is fully implemented. Next will
be `IAudioProcessor` and `IConnectionPoint` as additions to IComponent.
We'll use the same `known_iids` mechanism as used in the plugin factory.
2020-12-14 12:38:35 +01:00
Robbert van der Helm
32c1028736
Implement IPluginFactory3::setHostContext()
...
Now the plugin factories are fully implemented (at least, functionality
wise, we still can't create most kinds of objects).
2020-12-13 15:53:39 +01:00
Robbert van der Helm
7c5f7a2e0e
Fully implement IPluginBase::initialize()
...
We can now pass host contexts around.
2020-12-13 15:16:11 +01:00
Robbert van der Helm
0c64aabeea
Add a partial YaHostApplication implementation
2020-12-13 14:46:17 +01:00
Robbert van der Helm
919987298c
Add the base for YaHostApplication
2020-12-13 13:46:00 +01:00
Robbert van der Helm
ca91cf041d
List the progress of interface implementations
2020-12-13 12:47:18 +01:00
Robbert van der Helm
4f8fe21fa9
Merge branch 'master' into feature/vst3
2020-12-12 13:33:36 +01:00
Robbert van der Helm
afd777b583
Mention the Discord in the common issues section
2020-12-11 18:16:17 +01:00
Robbert van der Helm
b815fb0c34
Add a Discord badge to the readme
2020-12-11 18:14:37 +01:00
Robbert van der Helm
9554bbc12d
Merge branch 'master' into feature/vst3
2020-12-11 16:25:53 +01:00
Robbert van der Helm
ced3608e91
Update the tested REAPER version
2020-12-11 13:21:29 +01:00
Robbert van der Helm
170cd53c27
Add todo about readme changes after merging
2020-12-07 18:28:16 +01:00
Robbert van der Helm
ff2807c939
Add all the boilerplate for the Vst3PluginBridge
...
And now that I also have an idea of what the communication model will
look like, this can server as a base for instantiating plugins.
2020-12-07 18:28:16 +01:00
Robbert van der Helm
a4af1a2535
Fix compiling VST3 module system with winegcc
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
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
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
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