C++ 如何在加载的样本上使用FFTW?

C++ 如何在加载的样本上使用FFTW?,c++,fft,wav,fftw,sample,C++,Fft,Wav,Fftw,Sample,我的最终目标是从单波文件中提取所有低于15KHz的声音信息。该程序将样本加载到内存中,并将其表示为16位有符号整数数组 我使用FFTW,它有几个功能,如复多维fft、实多维fft、实一维fft、复一维fft 我应该用什么方法来做这个 谢谢。您需要先转换为浮点/双数组,然后可能使用1D实到复模式(请参阅)。如何使用FFT取决于您需要的信息。仅在音频上使用1D实时FFT,就有时间-频率分辨率权衡、每格滤波器响应权衡,以及您需要首先回答的其他问题。您还需要知道数据的采样率。窗口在信息上是有损的,因此不

我的最终目标是从单波文件中提取所有低于15KHz的声音信息。该程序将样本加载到内存中,并将其表示为16位有符号整数数组

我使用FFTW,它有几个功能,如复多维fft、实多维fft、实一维fft、复一维fft

我应该用什么方法来做这个


谢谢。

您需要先转换为浮点/双数组,然后可能使用1D实到复模式(请参阅)。

如何使用FFT取决于您需要的信息。仅在音频上使用1D实时FFT,就有时间-频率分辨率权衡、每格滤波器响应权衡,以及您需要首先回答的其他问题。您还需要知道数据的采样率。

窗口在信息上是有损的,因此不允许“提取所有声音信息”,只有特定的子集是“改进的”。