I am trying to write a VST3 plugin using the Steinberg VST3 SDK, that uses the FFTW library to perform a Fast Fourier Transform on an incoming audio signal. I have followed all the stepts for including the FFTW library in my project and the linker resolves it correctly.
Whenever I use one of the functions that the library provides, such as fftw_malloc
for example, the moduleinfotool.exe fails to generate the moduleinfo.json file, exiting with code 1 and failing the build with a very undescriptive error message.
Here is a part of the process
function where I tried using the FFTW functions:
tresult PLUGIN_API kw_SquarifyProcessor::process (Vst::ProcessData& data)
{
if (data.numInputs == 0 || data.numOutputs == 0)
{
return kResultOk;
}
fftw_complex* in, * out;
// This is the code that, when included, makes the build crash.
// Using any other function provided by the FFTW library also crashes the build.
in = (fftw_complex*)fftw_malloc (sizeof (fftw_complex) * 1024);
}
I have no idea what to do right now, and am amazed there are virtually zero resources about the VST3 SDK (apart from the documentation which does not seem to cover cryptic errors like these), so if anyone could point me to some of those/some guide on how to perform FFTs in the VST3 SDK that would be much appreciated as well!