android如何计算每分钟的节拍数

Posted

技术标签:

【中文标题】android如何计算每分钟的节拍数【英文标题】:android how to calculate beats per minute 【发布时间】:2010-09-25 18:34:32 【问题描述】:

我想从设备麦克风录制,然后能够计算录制音频的每秒节拍,这可能吗?如何?有什么开源项目我可以看看吗?

【问题讨论】:

【参考方案1】:

Essentia C++/Python 库提供了几种节拍跟踪算法:

http://essentia.upf.edu/documentation/reference/std_RhythmExtractor2013.html

该算法发表于:J.R. Zapata、M. Davies 和 E. Gómez,“多功能节拍跟踪器”,IEEE/ACM Transactions on Audio、Speech and Language Processing。 22(4),第 816-825 页,2014 年。

多特征节拍跟踪器的Matlab实现是:https://github.com/JoseRZapata/MultiFeatureBeatTracking

【讨论】:

【参考方案2】:

要从麦克风录制音乐,请使用MediaRecorder 并存储样本(几秒钟就足够了)。

找到节拍比较棘手,GameDev 有一个很好的解释,但如果您没有信号处理方面的背景,那就不容易了。

您可能还必须使用本机库来快速实现 FFT (search here)

另请参阅此相关问题:c++ FFT Beat detection library?

祝你好运!

【讨论】:

以上是关于android如何计算每分钟的节拍数的主要内容,如果未能解决你的问题,请参考以下文章

歌曲的BPM (Beat Per Minute)--每分钟节拍数

如何每分钟更新一个 Android 应用小部件

是否有用于确定大多数 mp3 音乐文件的每分钟节拍 (bpm) 的 AS3 库?

如何在 Android 中使用后台服务每 5 分钟获取一次设备位置?

电池高效的 android 小部件,每分钟更新一次

Android:如何让我检索到的(来自 mysql)JSON 解析数据添加到 ListView 每分钟刷新一次