相位声码器 - 需要合成窗口?

时间:2014-03-08 00:01:32

标签: signal-processing fft phase ifft

我已经在阶段声码器上挣扎了几个星期。最终目标是实现信号的时间延长。我已经取得了很多进展,但我还有两个问题需要解决。

Issue1 :我需要合成窗口吗? 我从输入信号(正弦波)中获取具有任何跳跃大小的重叠帧(例如,N / 2,N =每帧采样)。我将Hanning窗口应用于帧并将结果提供给FFT。 为了实现时间延长,我执行iFFT并使用与分析期间使用的跳跃大小不同的跳跃大小重叠添加输出帧。
问题是输出跳跃因子= 0.5(跳跃大小= N / 2)时输出是平滑的,但是对于更大的跳跃大小,我可以听到“振动”。图像显示8帧的输出,跳跃因子= 1(零重叠)。很明显为什么声音振动。对于小跳跃大小,帧重叠得更多,声音更平滑。我已经阅读了很多关于相位声码的信息,但我似乎没有得到如何获得大跳数的平滑输出。我错过了什么?

enter image description here

Issue2 :相位校正。
目前,相位校正的输出听起来更糟,但我会把它留给另一个帖子。

提前感谢您抽出时间。

1 个答案:

答案 0 :(得分:1)

我是一个业余爱好者,但是如果你开始有更大的重叠,你不会得到更好的结果,例如N / 10的“跳跃大小”或类似的东西?然后,您可以更自由地在输出上进行调整,同时仍保持实质性重叠。

此外,根据您扩展/压缩时间的多少来调整窗口的陡度可能是值得的。