我需要分析许多音频 WAV 文件的特征噪声,有什么想法吗?

Jam*_*mes 1 audio static detect noise detection

我需要能够分析(搜索)数百个 WAV 文件并检测但不能消除静态噪声。正如目前所做的那样,我必须听每个对话并手动找到特征噪声/静电,这花费了太多时间。理想情况下,我需要一个程序,它可以读取每个新的 WAV 文件,并能够检测静态噪声的特征签名,例如白噪声或全音频带的突发周期、高振幅噪声(例如电话交谈中的 AM 无线电噪声)如白噪声墙)或正常声音背景中的高频高振幅突发(如电话线上的噼啪声)。我不需要消除噪音,只需检测它并标记录音以进行进一步的故障排除。有想法吗?

我可以听录音并找到静电或噼啪声,但这需要时间。我需要一个可以自行运行并标记有问题的通话录音(电话 PBX 的 WAV 文件)的自动化或批处理过程。这些是 SIP 和模拟对话,具体取决于对话的分支,因此 RTSP/SIP 数据包分析可能是一种选择,但原始 WAV 文件是最简单的。我可以使用 Audacity,但这仍然需要打开每个文件并查看音频频谱测量的视觉表示,并且只比收听每个呼叫快一点,但仍然很麻烦。

我目前没有用于此任务的代码或方法。我只是听每个通话的 wav 文件来查找噪音。

我需要批量 Wav 文件搜索,它可以渲染包含电话通话录音中特征噪声、静电或噼啪声的 wav 文件录音。

Luk*_*ski 6

除非您可以告诉程序噪声是什么样子,否则运行任何类型的批处理都将具有挑战性。我面临着类似的挑战,这促使我开发(免费和开源)软件来帮助用户进行音频探索、分析和信号分离:

本质上,它将音频可视化为二维散点图,而不仅仅是波形或频谱图中的“线性”。当您上传音频时,会发生以下情况:

  1. 根据您设置的阈值检测起始点(基于aubio的高频内容算法)。None如果您想要全部,请将其设置为。
  2. 根据每个音频片段,根据您的选择计算音频特征。没有通用的最佳功能集,一切都取决于应用程序。您可以尝试使用例如Pitch statistics. 考虑为带通滤波器和样本长度(即我们要使用的音频片段的长度)设置适当的值。样本长度将来可以动态确定。检查文档以获取更多信息。
  3. 结果是,对于每个片段,您都有许多特征,例如 6 或 60。这意味着我们有k维(其中k是特征数量)结构,然后我们使用您选择的降维算法将其投影到二维空间。均匀流形逼近和投影是一个不错的选择。
  4. 理论上,最终的嵌入应该使得相似的声音(根据我们选择的特征)紧密地结合在一起,而不同的声音则相距较远。您的噪音现在应该与您的“非噪音”分开并形成集群。
  5. 当您将鼠标悬停在图表上时,右上角会出现一组图标。一是套索选择。用它来标记点、检查频谱图以及例如下载具有描述该信号的特征的表。此时,您还可以以与 Audacity 类似的方式减少噪音(出现额外按钮) - 它会分析频谱并通过一些平滑来减少这些频率。

它目前并不能完全解决您的问题,但可能会严重减少工作量。完成数百个 wav 可能会花费一天的时间,但你会完成的。想要自动化吗?我同时正在开发CLI(命令行界面)。在不久的将来,它应该采用您标记为噪声信号的内容,然后使用监督机器学习以批处理模式处理所有内容。

建议/反馈?在GitHub上提出问题。