在Python中检测音频流中的噪声

时间:2019-11-08 22:26:51

标签: python audio audio-streaming pyaudio python-sounddevice

我的目标是能够使用Python检测通过PC扬声器发出的特定噪音。用伪代码表示以下内容:

  1. 例如通过游戏之类的应用程序从扬声器中播放声音
  2. 发生“检测声音”声音,我想检测到声音并采取措施

我想为example can be found here检测的特定声音。

如果我将其分解,我相信我需要两件事:

  1. 一种采样流式传输到音频设备(perhaps something based on this?或潜在的声音设备)的音频的方法,但是我无法通过查看their api来确定如何使其工作?
  2. 一种将每个样本与我的“音频检测”声音文件进行比较的方法。

检测不必精确-只需将其关闭即可。例如,同时会发生许多其他噪音,因此它更能够检测各种声音的音频流中“要检测的音频”的足迹。

对此进行了调查,我发现本post on SO和本interesting article on Chromaprint中提到的技术。 Chromaprint文章使用fpcalc生成指纹,但是由于我的“要检测的音频”大约需要1-2秒,因此fpcalc无法生成指纹。我需要可以在较小时空上工作的东西。

我的问题是-有人可以帮我解决问题的两个部分吗?

  1. 如何使用python在PC上采样音频设备
  2. 我应该如何尝试进行比较(最好是举个例子)

非常感谢。

0 个答案:

没有答案