通过分析音频频谱进行节奏检测

时间:2011-03-27 16:57:02

标签: algorithm audio spectrum

我正在构建一个基于节奏的游戏,并且在节奏检测方面面临很多问题。我收到了一首播放歌曲的当前频谱。它看起来像一个浮点数组,有512个浮点数。 256表示左右声道表示。 FFT也可用。但我不知道如何处理这些数据,我已经做了一些可视化的实验,但它给了我很少的信息。我已经搜索了一些现成的算法,但没有任何内容。请,有人可以帮我,也许,一些参考,材料,与节奏检测相关的文章,使用音频频谱。代码也非常有用。谢谢。

3 个答案:

答案 0 :(得分:4)

也许您没有使用正确的搜索字词。尝试google'节奏检测'或'节拍检测',以及'代码'或'算法'。有很多论文,参考文献,代码示例等。

只需点击几下:

http://www.cs.princeton.edu/~lieber/cos325/final/

http://www.clear.rice.edu/elec301/Projects01/beat_sync/beatalgo.html

答案 1 :(得分:4)

您可能想查看Dancing Monkeys项目的源和项目报告。跳舞的猴子会自动生成DDR的步进文件,它使用一些相当复杂的节拍检测。它是用matlab编写的。

答案 2 :(得分:2)

你应该看看拍频谱算法:http://www.rotorbrain.com/foote/papers/icme2001/icmehtml.htm 它通过计算小样本谱图的相似性来提取有关节奏和音乐结构的信息。它实现起来相对容易,并且可以检索健壮的信息。