1. 什么是节拍?
节拍(beat)是音乐在时间上的基本单位,它指强拍和弱拍的组合规律。如每隔一个弱拍出现一个强拍时是一种节拍,每隔两个弱拍出现一个强拍时是另一种节拍。当我们在听一首歌时,总会不自觉的摇头晃脑,或跟着节奏抖腿,或击掌打拍子,这些动作的时刻点,对应到音乐的时间里,就是节拍了。
2. 应用方向
音频可视化:如根据音频的节拍变换切换视频场景
游戏方向:如节奏大师、beatmaps
音乐风格化:如QQ音乐的超嗨DJ
3. 节拍检测算法
如开源的librosa采用节拍检测算法librosa.beat.beat_track,是基于动态规划算法实现的,其参考文献是:Ellis, Daniel PW. “Beat tracking by dynamic programming.” Journal of New Music Research 36.1 (2007): 51-60.
其实现过程主要是以下3个步骤:
Measure onset strength
Estimate tempo from onset correlation
Pick peaks in onset strength approximately consistent with estimated tempo
3.1 Onset检测
音符起始点检测(onset detection)是