diff --git a/Setup/lib32/libfftw3f-3.dll b/Setup/lib32/libfftw3f-3.dll index e40d992..ce32bea 100644 Binary files a/Setup/lib32/libfftw3f-3.dll and b/Setup/lib32/libfftw3f-3.dll differ diff --git a/Setup/lib64/libfftw3f-3.dll b/Setup/lib64/libfftw3f-3.dll index 3244b4f..ba8bd07 100644 Binary files a/Setup/lib64/libfftw3f-3.dll and b/Setup/lib64/libfftw3f-3.dll differ diff --git a/filters/ConvolutionFilter.cpp b/filters/ConvolutionFilter.cpp index 2321d41..a07e9f0 100644 --- a/filters/ConvolutionFilter.cpp +++ b/filters/ConvolutionFilter.cpp @@ -87,6 +87,7 @@ vector ConvolutionFilter::initialize(float sampleRate, unsigned maxFram bufs[i] = buf; } + fftwf_make_planner_thread_safe(); filters = (HConvSingle*)MemoryHelper::alloc(sizeof(HConvSingle) * channelCount); for (unsigned i = 0; i < channelCount; i++) { diff --git a/filters/GraphicEQFilter.cpp b/filters/GraphicEQFilter.cpp index c0ca925..0b6fc89 100644 --- a/filters/GraphicEQFilter.cpp +++ b/filters/GraphicEQFilter.cpp @@ -48,6 +48,7 @@ vector GraphicEQFilter::initialize(float sampleRate, unsigned maxFrameC channelCount = (unsigned)channelNames.size(); + fftwf_make_planner_thread_safe(); fftwf_complex* timeData = fftwf_alloc_complex(filterLength * 2); fftwf_complex* freqData = fftwf_alloc_complex(filterLength * 2); fftwf_plan planForward = fftwf_plan_dft_1d(filterLength * 2, timeData, freqData, FFTW_FORWARD, FFTW_ESTIMATE);