RAD tool for VST GUI development.

DSP, Plugin and Host development discussion.
Post Reply New Topic
RELATED
PRODUCTS

Post

Hello,
I've been writing a plugin in JUCE and after I had to add several windows to it and few dozens of knobs, the code became so unreadable, I couldn't look at it anymore. I really dislike how it forces me to put my code into generated sections and the design of the application became even more unclear and tricky after several windows were added. I'm looking for some alternative to it (although only for GUI development). It would be best if it was a RAD tool, like QtCreator or wxFormBuilder. I've written many applications in Qt before, but I can't find any good article in the internet on how to integrate it into a properly working VST plugin. Buying a commercial Qt license to built into a single dll is not a problem for me, but from what I've read people have encountered some serious problems running the vst plugin in hosts (it worked standalone though). I have no experience with wxWidgets whatsoever. I'm planning to release the plugin both on Windows and Mac and I don't want to share source code, so the GUI solution has to have a proper license for it.
Could you help me choose some healthy GUI developement alternative to JUCE for making VST plugins? I'd be very thankful if you could find or advise some Qt tutorials or wxWidgets tutorials.

Post

You could try out VSTGUI from the VST3.6.x SDK. It has the UIDesc Editor, where you basically don't write any UI code at all. But you're forced to write a VST3 plug-in, but VST3 has wrappers for AudioUnit and VST2.4.

Post

Thank you very much for your reply. I downloaded VST3 SDK v3.6.5 from Steinberg's website, but I can't find the RAD tool in the package. Where can I download it?

Post

Check out the example plugin in vstgui4/vstgui/tests/uidescription vst3/. The RAD tool is compiled in. You activate it via right click on the plugin-gui when instantiated in a host.

Post

I successfuly compiled the tool, but it doesn't seem to work properly. There is no selection for elements to add, I can just move around the existing elements. Is there some way to integrate Qt or wxWidgets with VST?

Post

I've seen it done with Qt, so is feasible, but very overkill. wxWidgets, I'm not sure.
In any case, you will need to code your custom widgets anyway, won't you ? As soon as you want something beyond a basic knob or button... a RAD tool won't help you there.

Over time I've ended up building my own skin engine on top of vstgui.

Post

aethersis wrote:I successfuly compiled the tool, but it doesn't seem to work properly. There is no selection for elements to add, I can just move around the existing elements.
Just drag the view you want to add from the 'views' section into the plug-in area.

Post

This isn't exactly what you were asking, but you can keep using JUCE just fine if you want. Those generated sections only apply if you're using the IntroJucer to manage everything over the lifetime of the project. JUCE itself doesn't depend on that setup at all, only the IntroJucer does. It is 100% fine to create an initial project with the IntroJucer, then forget about it from then on, restructure your code however you want, and just use JUCE like any other framework or library.

I hated the generated scaffolding too and quit using it fast. You do lose the ability to change JUCE's settings from the Jucer GUI, but you can just change them manually. Almost all of them are in JuceHeader.h and AppConfig.h. It doesn't take very much poking around to figure out how everything works

Once you make the switch, as long as you mostly stay away from the other JUCE internal module code, you can pretty much use its pieces however you'd like.

Post Reply

Return to “DSP and Plugin Development”