如何用C或python找出mp3的bpm

Xk0*_*Sid -3 c python audio ios

嘿伙计们我正在研究一个项目,我需要一个加载mp3文件的程序,发现它是bpm(每分钟节拍)并返回给我这个值.首选语言是C,但python也可以.我真的被困在这可能真的使用你的帮助.这是一个IOS应用程序(音乐播放器),我想用这首歌的bpm来帮助创建播放列表.不寻找Xcode解决方案.需要在C中编程然后在我的IOS应用程序中嵌入C. 可以真的使用一些帮助人.

pra*_*411 5

没有简单的方法可以通过读取mp3文件来检测节拍.您首先需要探索各种节拍检测算法,并找到适合您的要求.你可以从中得到一些帮助.

如何在php中检测一首歌的BPM

这篇特别的文章还很好地解释了一种这样的节拍检测算法 http://www.flipcode.com/misc/BeatDetectionAlgorithms.pdf

您还需要获取一些音频/视频框架来解码mp3文件.FFMS2为您提供来自mp3文件和视频文件的解码音频样本.

https://code.google.com/p/ffmpegsource/

要处理这些原始样本,您可以获得Portaudio开源框架的帮助,或者您可以自己完成.

http://www.portaudio.com/

上述框架都易于使用和设置.

除此之外,您还可以查看Audacity中现有的beat finder实现,这是一种分析音频的优秀开源工具.

http://audacity.sourceforge.net/

我希望以上信息有所帮助.