我目前通过 FFT 运行实时音频,并且库 (vDSP) 返回 FFT 箱中数据的幅度和相位值(极坐标)。
具有最高幅度的 bin 是否总是代表基频?
关于音频,频率仓的相位究竟可以用于什么?它代表什么?这将用于音频识别,例如在不同音频段的相同箱内匹配幅度和相位对吗?
我目前通过 FFT 运行实时音频,并且库 (vDSP) 返回 FFT 箱中数据的幅度和相位值(极坐标)。
具有最高幅度的 bin 是否总是代表基频?
关于音频,频率仓的相位究竟可以用于什么?它代表什么?这将用于音频识别,例如在不同音频段的相同箱内匹配幅度和相位对吗?
很难为 FFT 中的各个相位值分配意义。如果您想使用 FFT 中的每个频率分量重建原始信号,您将使用相位值对每个正弦曲线进行时间对齐,以便获得适当的破坏性和相长干扰来再现原始信号。改变频率分量的相位关系可以显着改变信号的时域表示(峰和谷可以通过这种方式移动)。
当应用于频带时,相位更有意义。相移在频带上的累积效应可以延迟音频信号的起音和/或衰减。这在音频系统尤其是扬声器设计中可能很重要。
您可以查看“群延迟和相位延迟”(谷歌或进入维基百科)以讨论这些概念如何影响音质。
通过比较 FFT 结果的值很难对音频信号进行有意义的匹配。如果时间正确对齐,您可以进行精确匹配,但即使是音频信号的微小变化也可能导致 FFT 值发生重大变化。对于声音的识别或匹配,使用了更复杂的方法。例如,语音识别使用 CEPSTRAL 分析,该分析涉及多个变换、滤波器组和对数计算,以创建可以比较相似性的“特征”系数集(Mel 频率倒谱系数)。
具有最高幅度的频率箱通常不是基本音高频率,特别是对于较低(男性)声音和较大的弦乐器。相反,它可以代表强烈的泛音或谐波。
FFT 相位结果对于表示任何瞬态波形形状或时序非常重要,例如在 FFT 帧的开头或结尾处是否发生了音符开始或敲击。因此,它在匹配声音方面不是很有用,除非 FFT 帧时序以某种方式非常精确地与声音的时序匹配。
对于在具有已知时间偏移的多个 FFT 帧中静止的非常窄带的信号,FFT 相位结果也可以潜在地用于比 FFT bin 间距分辨率更精细的频率估计。