检测倾斜的声音

时间:2014-11-25 22:10:37

标签: algorithm audio fft detection pitch

我有一个试图从音频数据中检测警报器的应用程序。但是,我对音频概念和术语的理解是基本的。

我的应用程序的第一步是检测倾斜的声音。我为此实现的算法如下:

  • 将音频数据拆分为窗口
  • 使用FFT将每个窗口中的数据转换为频域
  • 提取主频的幅度(忽略桶0)。让这个是maxMag
  • 提取所有FFT桶的平均幅度(忽略桶0)。让这是卑鄙的
  • 如果maxMag / meanMag>一些门槛,然后窗口包含音调

这个算法有意义吗?我的术语是否正确?

谢谢。

1 个答案:

答案 0 :(得分:0)

如果您正在检测单音(或一小组音调),则无需进行完整的FFT。您可以使用Goertzel Algorithm检测特定音调。你可能不关心你所寻找的音调水平相对于其他一切,所以你应该能够避免“主导频率”测试,除非你有一些理由只检测音调,如果它是最响亮的音调在环境中。