Sox(Swiss Army Knife)用于沉默和噪音去除的algorithm是什么

我曾尝试Sox从audio文件中删除沉默和噪音。 我想知道它的技术细节来理解它。 在专业软件可以依靠它之前,这对于理解它是很重要的(我知道它很好用,并且被许多人所使用)

当使用Noise Profile对Noise进行采样,然后使用Noisered进行去除时,Sox在这个过程中究竟做了什么? 类似地,当添加VAD效果时。 有没有技术上的解释或一些我可以阅读理解它的文件。

由于我的研究(语音和音乐的科学基础知识,通信科学),我有一个信号处理的背景,只是看了一下sox的降噪算法的代码。

如果不进行太深的分析,似乎是对噪声轮廓和原始信号进行FFT,然后从后者中减去第一个信号,再次执行FFT合成,重新生成类似于原始信号的信号。

通过这个过程,它应该减少所有的频率出现在噪声信号的数量。

整个过程似乎是一个一个窗口,应该允许流式传输。

正如我刚才所说,这只是基于我的背景知识和我在代码中所做的简短的一瞥,所以可能有一些我没有掌握的方面。

编辑:

我也浏览了VAD代码。 那个人似乎监视出现在指定范围内的频率的频谱,如果是的话,就声明这是“声音”。 所有没有声明“声音”的部分(窗口)然后沉默(AFAICS)。 有效地,这将消除纯语音记录中的所有背景噪音。