检测音频文件中的声音边界

hek*_*ran 2 python audio opencv

我有一个音频文件,我想将其拆分为多个文件。这些文件被构造成由静音分隔的声音对。时间线看起来像这样,用 - 代表沉默:

-----声音A1-----声音A2-----声音B1-----声音B2-----

我想找到声音A2和声音B1之间的边界。我想要一个最好使用 Python、OpenCV 和 FFmpeg 组合的解决方案,但任何有效的工具都可以。

hek*_*ran 5

感谢米基提供的链接。 Aubio是一个运行完美的工具。程序 aubioquiet 将检测静音边界并打印它们的时间戳:

$ aubioquiet temp.wav NOISY: 0.638549 QUIET: 2.008526 NOISY: 4.992290 QUIET: 6.286803 NOISY: 9.258957 QUIET: 10.559275 NOISY: 13.531428 QUIET: 14.622766 NOISY: 17.623945 QUIET: 18.953287 NOISY: 21.931248 QUIET: 23.260590 NOISY: 26.238548 QUIET: 27.643356 NOISY: 30.632925 QUIET: 31.915827 NOISY: 34.882175 QUIET: 36.165081