比较两个音频文件。声音匹配。

7
我想开始一个大项目,需要比较两个音频文件以获取匹配度的百分比。
例如:
1. 音频A是原始音频。 2. 音频B是从麦克风录制的(除了声音,其他都与音频A相同)。 3. 我想知道B与A的接近程度百分比。 (100%=相同) 有人知道如何做到这一点吗?
也许可以通过比较文件A的频谱与文件B的频谱来实现。

1
这完全取决于你对“比较两个音频文件”的理解。100%的匹配很容易想象,但0%呢?正如你所看到的,“音频文件比较”的定义并不明确,因此你的解决方案也无法被定义。应该从感知角度计算比较(在两个音频文件中相似的声音),还是仅基于字节之间的算术差异进行比较? - Gianluca Ghettini
你可能会写一本关于声音处理和比较的书,因此被投票关闭为“过于宽泛”。 - Andrew Thompson
对你来说,“比较”是什么意思?你需要检查声音和乐器。这个链接可能会有所帮助:https://dev59.com/KXA65IYBdhLWcg3wuRB8 - SomeJavaGuy
1
您已经在提问时添加了四个编程语言标签。请 选择一个 ,这样您才能得到一些有用的帮助。我可以预先告诉您,PHP 几乎没有音频处理库,因此您应该寻找其他编程语言。 - Charles
嘿,你最终解决了这个问题吗?我也在寻找同样的东西。 - stackPusher
1个回答

2
我曾在本科课程项目中做过类似的事情,但是使用的是图像文件。你需要研究的是交叉相关。通过它可以测量两个信号之间的相似性。此外,你可能还想对音频文件进行预处理,例如:归一化,应用一些低通滤波器以消除噪声。
我建议阅读Oppenheim的《数字信号处理》以深入了解信号处理。但是,这些技术都很模糊,直到你知道要查找什么类型的相似性为止。

关于图像比较的跟进,有一家名为LTU的公司开发了一款基于向量比较图像的应用程序,然后比较这些向量,以反映两个图像之间的差异。这不是一个字节/字节的比较,它匹配裁剪和反转的图像。也许他们的技术可以适用于音频文件。话虽如此,我怀疑你能否获得他们的算法。 - Nick.T
@Nick.T 不过,我认为一定有一些开源项目可以做这些事情。 - Aamir Abro
我只知道它是因为一个客户对我说“我想要LTU”。所以我没有研究开源项目。我同意这种类型的算法必须存在于开源项目中。也许问题可以重新表述并在“mathematica”堆栈中提问... - Nick.T
是的,正如@charles所说,问题应该带有像matlab这样的标签。 - Aamir Abro

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接