【发布时间】:2014-07-30 11:40:06
【问题描述】:
我对音频处理很感兴趣,我想进行 FFT 计算。 许多资料和教程都说 vDSP 很棒。 但我不明白为什么计算后实部和虚部的大小是 N/2 ? 如何在 1024 个样本上获得 1024 个实值和虚值。例如this计算服务正确执行FFT。
【问题讨论】:
标签: ios objective-c fft core-audio vdsp
我对音频处理很感兴趣,我想进行 FFT 计算。 许多资料和教程都说 vDSP 很棒。 但我不明白为什么计算后实部和虚部的大小是 N/2 ? 如何在 1024 个样本上获得 1024 个实值和虚值。例如this计算服务正确执行FFT。
【问题讨论】:
标签: ios objective-c fft core-audio vdsp
当 FFT 的输入为实值(如音频)时,输出关于中点 (N/2+1) 对称,因此输出缓冲区的后半部分是冗余的。大多数担心速度的 FFT 算法通过不实际计算那些输出样本来利用这一点,从而将计算时间减少了近一半。
如果您查看 vDSP 参考资料,您会发现有很多 FFT 变体。那些接受复杂输入的将计算所有输出样本,因为没有这样的冗余。
【讨论】: