Hi, I’m creating a plugin that would be a wrapper of Waves “X-FDBK”, but I’m finding several problems on the road: I’d like to open it without scan every plugin in my component/vst directory and without creating a file that contains a knownPluginList, I look at code that @Xenakios very kindly posted on my old discussion:
desc.fileOrIdentifier = "C:\\Program Files\\VST_Plugins_x64\\ValhallaRoom_x64.dll";
desc.pluginFormatName = "VST";
desc.uid = 0;
m_plug = plugman.createPluginInstance(desc, 44100.0, 512, error);
But how can I do this on OSX (my platform) if waves’ plugin are organized in shell?
Another thing is: Actually I’m able to find waves plugins through “PluginDirectoryScanner” but when I create window through this code to see the editor:
auto* pluginEditor = instance->createEditorIfNeeded();
pluginWindow.setBounds(pluginEditor->getBounds().getX(), pluginEditor->getBounds().getY(), pluginEditor->getWidth(), pluginEditor->getHeight() + pluginWindow.getTitleBarArea().getHeight());
some of them are smaller that the size of my window (for example reverb is 1/4 of the window and is positioned at bottom-left).
Really thank you in advice!
Using KnownPluginList, PluginDirectoryScanner etc is the correct way to do it. My code was meant only as an example of the most minimal way to load VST2 plugins. (I later noticed it doesn’t even work for VST3 plugins without some changes.)
Problems with the plugin GUI size are an often mentioned problem and could be a bug in Juce and/or the plugin itself. (These problems have started appearing especially now with the Retina/HighDPI stuff.)
You may need to do tricks like resize your plugin container window a bit after the plugin and the editor have been created. You could use Timer or MessageManager::callAsync for that. Simply sleeping in the GUI thread won’t most likely work. That doesn’t necessarily help with the Retina/HighDPI issues, though.
Really thank you, so there’s no way to instantiate that plugin (X-FDBK) inside mine immediately when I instantiate my plugin?
I don’t own any Waves plugins, so I can’t test their particular behaviors with the Juce plugin hosting. Hopefully someone else has experience with them.
Ok sorry , maybe I can create an xml file that only contains that plugin to load in knownPuginList.
Thank you again!
Yeah, to avoid the issue of having to scan through the plugins each time you start your software, you have to use a file to store the scan results.
Did you ever solve the issue with Waves Plugins only 1/4 the size? The strange thing is the mouse works over the entire window (meaning you need to click towards the upper right in the red to move the output knob).
No one has had this issue before hosting waves plugins?
This is an issue with Waves plug-ins loaded in hosts built against recent macOS SDKs. Waves are aware of the issue and are presumably working on getting a fix out, but for the time being you’ll need to build the host app with a base SDK of 10.13 or earlier.
I tried both 10.13 and 10.12 (as base and deployment target) using the projucer and I am having the same issue. Any other ideas?
Do you have the SDKs installed on your machine and in the correct location?
I re-downloaded Xcode 9.4.1 and copied over the SDK again. It now works (not sure why it did not before since I did have 10.13 sdk installed).
Thanks for your help.