vDSP和FFT计算

Mol*_*one 0 fft objective-c core-audio ios vdsp

我对音频处理感兴趣,我想进行FFT计算.许多资源和教程都说vDSP很棒.但是我不明白为什么计算后的实部和虚部的大小是N/2?如何在1024个样本上获得1024个实数和虚数值.例如,这种用于计算的服务正确地执行FFT.

Jas*_*n B 5

当FFT的输入是实值(如音频)时,输出关于中点(N/2 + 1)是对称的,因此输出缓冲器的后半部分是冗余的.大多数担心速度的FFT算法通过不实际计算那些输出样本来利用这一点,从而将计算时间减少近一半.

如果你看一下vDSP参考,你会发现有很多FFT变化.采用复杂输入的那些将计算所有输出样本,因为没有这样的冗余.