首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >音乐指纹识别是如何工作的(对于Shazam和Lala.com这样的网站)?

音乐指纹识别是如何工作的(对于Shazam和Lala.com这样的网站)?
EN

Stack Overflow用户
提问于 2010-01-12 12:49:55
回答 3查看 7.3K关注 0票数 20

我的大容量(120 in )音乐收藏包含许多重复的歌曲,我一直在尝试对曲目进行指纹识别,希望能检测出重复的曲目。因为我是CS专业的,所以我很好奇外面发生了什么?我所做的任何事情都没有像Shazam或Lala.com那样的准确性。他们是如何“散列”曲目的?我对我所有的文件(26,000个文件)运行了一个标准的MD5散列,我在不同的轨道上发现了数百个相等的散列,所以这不起作用。

我对Lala.com更感兴趣,因为他们使用完整的文件,不像Shazam,但我假设两者都使用类似的技术。有人能解释一下如何为音乐生成唯一的标识符吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-01-18 13:45:05

关于音频指纹的开创性论文是Haitsma和Kalker在2002-03年的工作。对于每一帧音频,它都会进行预处理(时间帧和频带之间的差异),然后存储帧频谱的二进制版本。

此过程增加了健壮性。如果整个信号在时间上移位,它仍然有效(至少可以推导出性能下降的下限)。它对环境噪声有很强的鲁棒性。自从它诞生以来,已经有很多关于低级音乐相似性的论文,所以没有一个单一的答案。

你是否有完全相同的文件,例如,信号是时间对齐的,位深度相同,采样率相同?然后我会认为像MD5这样的散列应该是有效的。但是,如果这些参数中的任何一个被更改,散列也会被更改。在这种情况下,像前面提到的过程会工作得更好。

看看在线免费提供的ISMIR程序。有趣的东西。http://www.ismir.net/

票数 10
EN

Stack Overflow用户

发布于 2010-01-12 12:58:07

看看维基百科上的Acoustic Fingerprint页面。它有一些论文的参考,以及到实现的链接(包括开源fdmf)。

票数 3
EN

Stack Overflow用户

发布于 2010-01-12 12:59:00

经过更多的研究(尽管这根本不是决定性的!),我偶然发现了MusicBrainz.org的维基,其中详细介绍了他们使用的一些方法:

http://musicbrainz.org/doc/Audio_Fingerprint

http://musicbrainz.org/doc/How_PUIDs_Work

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2046771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档