Files
yabridge/src/common/serialization/vst3
Robbert van der Helm b6304c83b5 Implement IAttributeList
2020-12-25 00:54:08 +01:00
..
2020-12-25 00:54:08 +01:00
2020-12-25 00:54:08 +01:00
2020-12-19 20:18:45 +01:00
2020-12-22 13:26:54 +01:00
2020-12-22 13:26:54 +01:00
2020-12-19 20:18:45 +01:00
2020-12-25 00:54:08 +01:00

VST3 interfaces

TODO: After merging into master, update this link to just point to GitHub

See docs/vst3.md for more information on how the serialization works.

VST3 plugin interfaces are implemented as follows:

yabridge class Included in Interfaces
YaPluginFactory IPluginFactory, IPluginFactory2, IPluginFactory3
Vst3PlugViewProxy All of the below:
YaPlugView Vst3PlugViewProxy IPlugView
Vst3PluginProxy All of the below:
YaAudioProcessor Vst3PluginProxy IAudioProcessor
YaComponent Vst3PluginProxy IComponent
YaConnectionPoint Vst3PluginProxy IConnectionPoint
YaEditController Vst3PluginProxy IEditController
YaEditController2 Vst3PluginProxy IEditController2
YaPluginBase Vst3PluginProxy IPluginBase

VST3 host interfaces are implemented as follows:

yabridge class Included in Interfaces
Vst3HostContextProxy All of the below:
YaHostApplication Vst3HostContextProxy IHostApplication
Vst3ComponentHandlerProxy All of the below:
YaComponentHandler Vst3ComponentHandlerProxy IComponentHandler
Vst3PlugFrameProxy All of the below:
YaPlugFrame Vst3PlugFrameProxy IPlugFrame

The following host interfaces are passed as function arguments and are thus also implemented for serialization purposes:

yabridge class Interfaces Notes
YaAttributeList IAttributeList
YaEventList IEventList Comes with a lot of serialization wrappers around the related structs.
YaParameterChanges IParameterChanges
YaParamValueQueue IParamValueQueue
VectorStream IBStream Used for serializing data streams.

And finally YaProcessData uses the above along with YaAudioBusBuffers to wrap around ProcessData.