You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hello,
I found an issue with the VST3 com interface where any calls to create_instance() appear to return an IComponent, ignoring the IID that was requested. Typically this isn't a problem as the IComponent requested first, but the Steinberg AUWrapper requests an IAudioProcessor first, which wreaks havoc. For example, calls to audioProcessor->setProcessing() actually invoke get_bus_info() with nonsensical parameters. This was pretty difficult to figure out!
The vst3-sys project seems aware of this which I assume is why macros require IComponent to be listed first. Related issue for reference: RustAudio/vst3-sys#14
Here's a quick-and-dirty fix in wrapper/vst3/factory.rs. I'm sure there's a better way to do this, but I'm new to Rust.
That's an oversight on my part, sorry! Don't know how I missed this, normally I'm super thorough with these kinds of things. I fixed this in a97c8ea. The caller can now properly create a properly object for any interface supported by the plugin.
Hello,
I found an issue with the VST3 com interface where any calls to create_instance() appear to return an IComponent, ignoring the IID that was requested. Typically this isn't a problem as the IComponent requested first, but the Steinberg AUWrapper requests an IAudioProcessor first, which wreaks havoc. For example, calls to audioProcessor->setProcessing() actually invoke get_bus_info() with nonsensical parameters. This was pretty difficult to figure out!
The vst3-sys project seems aware of this which I assume is why macros require IComponent to be listed first. Related issue for reference: RustAudio/vst3-sys#14
Here's a quick-and-dirty fix in wrapper/vst3/factory.rs. I'm sure there's a better way to do this, but I'm new to Rust.
Thanks for the wonderful work you're doing on NIH-plug, I'm really loving the combo with egui. 🍻
The text was updated successfully, but these errors were encountered: