【问题标题】:Identify audio sample in a file识别文件中的音频样本
【发布时间】:2011-10-26 12:01:10
【问题描述】:

我希望能够在我拥有的音频文件 (mp3) 中识别音频样本(由用户提供)。

mp3 文件是我为测试目的而保留的无线电流,我有该节目的前贴片广告。我想在文件中识别它并获取它在文件中播放的时间戳。

注意:解决方案可以使用以下任何一种编程语言:Java、Python 或 C++。我不知道如何分析视频文件,任何有关此主题的参考资料都会有所帮助。

【问题讨论】:

标签: java c++ python audio signal-processing


【解决方案1】:

此问题属于音频指纹识别的范畴。如果您已将样本与歌曲匹配,那么您肯定会知道样本在歌曲中出现的时间戳。 Shazam 背后的人有一篇很棒的论文描述了他们的技术:http://www.ee.columbia.edu/~dpwe/papers/Wang03-shazam.pdf 他们基本上在频谱图中挑选出局部最大值,并根据它们的相对位置创建一个散列。

这里是音频指纹算法的一个很好的评论:http://mtg.upf.edu/files/publications/MMSP-2002-pcano.pdf

无论如何,您可能会大量使用 FFT 和频谱图。 This post 谈论如何在 Python 中做到这一点。

【讨论】:

    【解决方案2】:

    我将从计算 haystack 和 needle 文件的 FFT 频谱图开始(可以这么说)。然后您可以尝试(模糊地)匹配频谱图 - 如果您将它们格式化为图像,您甚至可以使用现成的算法。

    不确定这是规范还是最佳方式,但我觉得应该可以。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-15
      • 2013-06-29
      • 2013-03-08
      • 1970-01-01
      • 2010-12-20
      • 2017-10-30
      • 1970-01-01
      相关资源
      最近更新 更多