Python音频wav文件分析

时间:2017-02-08 21:40:40

标签: python filter fft wav analysis

我正在开发一个需要30分钟wav文件的程序,并针对各种事件进行分析。我有一堆30分钟的体育赛事wav文件,并试图自动找到某些事件发生的时间。

例如,以下是我希望尝试识别的事件: - 当目标或事件发生时,人群中会有噪音和欢呼声。我想返回这些事件发生的时间。 - 或者当吹口哨时 - 能够长时间识别完全沉默会很有帮助

我一直在玩这些音频样本的FFT图表,并得出结论,这并没有让我对这些事件有最好的了解。什么是最好的过程呢?

非常感谢任何指导。

由于

1 个答案:

答案 0 :(得分:1)

希望以下步骤可以帮助您。

  1. 阅读WAV文件:

    Reading *.wav files in Python

    Python Wave byte data

  2. 检测声音:

    Detect and record a sound with python

    Detect tap with pyaudio from live mic

    Python record audio on detected sound

  3. 确定声音块中的第一个异常点,如:

    sample_rate = 44100
    wav_file_duration = 30*60   #in sec.
    first_abnormal_point_index = 20000
    
    然后声音的开始是:

    onset = first_abnormal_point_index/sample_rate * wav_file_duration
    
  4. 或者您也可以使用其他python包来执行此操作,例如 Modalaubio