VST and Modern OS X

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

Post

A few questions.

VST 2.4 SDK and Modern OS X, can it be done?
2.4 code seems to rely on the GCC compiler (macros/defines everywhere) that has been kicked to the curb by Apple. Still possible to compile with the command line? Does anyone do this? Oh, and the whole Carbon being depreciated thing - advantage or disadvantage? (see below)

VST 3.0/3.5
What are people's experiences here? Does it lean heavily on Cocoa? The thing I sort of like about Audio Units is that they force you to go through the Cocoa API directly to build your GUI - which helps when Apple breaks/changes things - and I can see the latest builds of VST getting broken at some point by an OS X update, if it hasn't already happened.

VST in general
Is it worth taking the time to make VST plugins for the Mac? I feel like most DAWS either support Audio Units or AAX, and likely the only one that solely supports VST is Cubase. Conversely, do you think it's worth the time to make AAX plugins for (Protools) Windows?

Even though 2.4 isn't supported anymore, I still use it to make Windows plugins because it just works on everything from Windows 7 to Windows 10, and continues to be widely supported.

Post

adammonroe wrote:A few questions.

VST 2.4 SDK and Modern OS X, can it be done?
2.4 code seems to rely on the GCC compiler (macros/defines everywhere) that has been kicked to the curb by Apple. Still possible to compile with the command line? Does anyone do this? Oh, and the whole Carbon being depreciated thing - advantage or disadvantage? (see below)
Yes - LLVM/clang is a drop-in replacement for GCC, so everything should work.

Don't have much experience with Cocoa, because most use multiplatform toolsets that allow one code for all platforms (like IPlug, JUCE).

Post

Sure it builds, just doesn't seem to work. Causes a vst scan in Ableton to hang, and it seems like VSTPluginMain never gets called.
Considered using JUCE or something similar, but I've already spent all the time learning all these different API's and operating systems - it just sucks that Apple keeps depreciating things and changing their frameworks/operating system all the time.

Post

If it hangs, then it means that your function is called (if Live can't find the official entry point, it will skip the library) and then it spins there for something.

Post

adammonroe wrote:Sure it builds, just doesn't seem to work. Causes a vst scan in Ableton to hang, and it seems like VSTPluginMain never gets called.
Considered using JUCE or something similar, but I've already spent all the time learning all these different API's and operating systems - it just sucks that Apple keeps depreciating things and changing their frameworks/operating system all the time.
People use frameworks like JUCE exactly to avoid that situation ;)

If it affects the VST scan cycle, you can be sure VSTPluginMain is called. Set a breakpoint on the function from within the project, and start the program directly from your debugger. If this isn't supported somehow, you can hack in an MessageBox in the sdk program before your plugin class is instantiated, so you have the time to attach your debugger.

Post Reply

Return to “DSP and Plugin Development”