【问题标题】:What are some good libraries for extracting data from audio files?从音频文件中提取数据有哪些好的库?
【发布时间】:2010-11-19 22:55:51
【问题描述】:

最近我开始在我的 iPhone 上使用Shazam app。对于那些不知道的人,这个应用程序通过听一小段正在播放的歌曲来识别歌曲。我对它的准确性和速度感到惊讶,所以我决定进行一些挖掘。

我找到了他们的一位开发人员here 写的论文。在这篇论文中,开发人员详细介绍了 Shazam 中使用的指纹算法。

作为一个宠物项目,我想制作自己的歌曲指纹识别应用程序,这样我就可以获得一些音频编程的经验。

有哪些音频库可以帮助您提取音频剪辑或 mp3 歌曲在其持续时间内的频率、幅度和其他特征?

我正在使用 .NET,但我对其他语言库持开放态度。我对开源库和付费库都很好。只要我能可靠地以编程方式提取音频特征,我就会很高兴。

另请参阅:
How Shazam Works
Shazam Journal Paper

【问题讨论】:

  • 很棒的文章,谢谢。我一直想知道 Shazam 是如何工作的,现在我知道了。我在 C# 中做了很多音频编程,包括 FFT 和其他 DSP,我有兴趣帮助你。您可以通过我个人资料中的网站与我联系。

标签: .net audio shazam


【解决方案1】:

ffmpeg 库支持很多音频编解码器,但要与之交互却很痛苦,恕我直言。

为了提取音频属性,您应该考虑一个适合信号分析的体面的库。例如,您将特别需要快速傅立叶变换 (FTT) 来从音频样本中提取频率数据。 A search 在该主题上给出了很多结果。

/edit:对于.NET,我相信有一个ffmpeg 接口。您还可以找到适用于 .NET 的信号分析工具。

【讨论】:

  • 他正在寻找的是一个工具箱来提取所谓的“音频特征”或“音频描述符”。音频描述符的设计属于“音乐信息检索”研究领域。
【解决方案2】:

尝试查看 NAudio。它可能没有您预先寻找的所有音频分析,但它非常可扩展,如果您使用 .Net 语言,它将是一个很好的起点。

【讨论】:

    【解决方案3】:

    要开始使用音频功能,您应该先阅读this paper

    许多实验室都开发了自己的库来提取音频特征。 你可以看看 yafee, aubio, jaudio ....

    【讨论】:

    • 很高兴得到对此答案投反对票的人的评论
    • +1 - 看到有人在没有任何反馈的情况下对我们的问题/答案投反对票,这很烦人。我们如何在不知道问题是什么的情况下改进我们的 Qn/Ans(我没有投票给你)
    • 最糟糕的是,MrMage 否决了我的答案,因为我确实否决了他的……但至少当我这样做时,我解释了为什么我的答案没有被占用!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-10
    • 1970-01-01
    • 2022-08-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多