在FFT之前应用汉明窗口

时间:2013-05-31 10:31:18

标签: ios signal-processing

我目前正在使用FFT检测频率。我知道在进行FFT之前我需要应用一个窗口,但我不确定如何做到这一点。

应用窗口应该做些什么。

我malloc正在使用

float * hammingWindow = (float *) malloc(sizeof(float) * numberOfFrames);
vDSP_hamm_window(hammingWindow, n, 0);

但我不确定如何从这里开始。

当我用我的args打电话给vmul时

vDSP_vmul((COMPLEX*)outputBuffer, 1, hammingWindow, 1, (COMPLEX*)outputBuffer, 1, n);

即使我正在调用其他vDSP方法,也会出现vDSP_vmul不存在的错误。

我在FFT函数之后调用它

vDSP_zvmags((COMPLEX *)outputBuffer, 1, (COMPLEX *)outputBuffer, 1, bufferCapacity);

我得到同样的问题 - No matching function for call to vDSP_zvmags

我做错了什么?我的论点是不正确的。看起来(COMPLEX *)outputBuffer不应传递给两个args。

0 个答案:

没有答案