比较声音文件(如果不完全相同) [英] Comparing sound files if not completely identical

查看:135
本文介绍了比较声音文件(如果不完全相同)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有没有办法编程比较两个声音文件,以确定它们是否相同,或几乎相同?这些不是mp3文件,没有任何ID3或其他元数据,而是纯wav文件。比较校验和值可能不起作用,因为它们可能不完全相同。

Is there any way to programatically compare two sound files to determine if they are identical, or nearly identical? These are not mp3 files and do not have any ID3 or other meta data, but plain wav files. Comparing the checksum values may not work as they may not be completely identical.

推荐答案

关于声学指纹的维基百科文章提到了一些产品,包括开源libfooid。基本上你正在寻找进入频域,粗略的水平在相对较少的频段(如32),给你一个字符串,代表像25ms的声音,这样做的整个文件,然后做一个对不同文件的那些字符串进行模糊比较。这是相当复杂,但需要做 - 比较实际的样品不会让你在任何地方,因为像一个体积移位几个百分点的简单,将抛弃整个匹配。

The wikipedia article on acoustic fingerprinting mentions a number of products, including the opensource libfooid. Basically you're looking at going into the frequency domain, taking rough levels over a relatively small number of bands (say 32), to give you a string that represents something like 25ms of sound, doing that for the whole file, then doing a fuzzing comparison of those strings for different files. It's fairly complex, but needs doing - comparing the actual samples won't get you anywhere as something as simple as a volume shift by a few percent will throw out the whole match.

这篇关于比较声音文件(如果不完全相同)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆