一种高效的音乐节拍检测算法及其在DSP中的实现

An efficient algorithm of beat detecting and the implement on DSP

  • 摘要: 音乐节拍是乐曲中表示固定单位时值和强弱规律的组织形式,亦称拍子。音乐节拍的连续性表现为音乐的平均速度,其单位为bpm(beat per minute)。音乐节拍实时检测并在液晶屏上显示是数字撮盘机必需的功能之一。但是现有的音乐节拍检测算法运算量太大,在数字撮盘机中不可能提供大量的DSP芯片资源来实现作为数字撮盘机附加功能的音乐节拍检测功能。本文从人耳感知音乐节拍的规律和音乐信号的时频特性观察出发,导出了对特定bpm区间的音乐进行准确的bpm检测的最低采样率确定方法,给出了一种极为简单的降采样策略,以及从中提取节拍信息估计出bpm的原理和方法,构成了一种适合数字撮盘机等设备使用的高效的音乐节拍检测算法,并给出了在DSP芯片上的实现步骤和算法测试结果。该算法与现有的音乐节拍检测算法相比,由于既没有聚类检测,也没有高采样率下的多路滤波和频域特征提取等复杂的处理,因此,运算量大大减小,有效地降低了节拍检测对DSP处理速度的要求,使DSP可以更好地实现其它主要的信号处理功能。经验证,节拍检测准确率较高,完全能够满足数字撮盘机中音乐节拍实时检测的需要。

     

    Abstract:  The music beat denotes the organization of a fixed period of time with the strong beat and weak beat, which is also called as beat for short. The continuity of the music beat is expressed as the average speed of the music, and its unit is bpm(beat per minute).It is indispensable for digital turntable to detect the music beat and display the bpm on LCD screen, but the existing algorithms of beat detecting cost more runtimes. In the digital turntable, the DSP processor can not provide most of its resources on the beat detecting, which is not the main function of the digital turntable. A method is presented for searching the lowest sampling rate of beat detecting in a certain bpm extent, which is deduced from the rule of apperceiving music beat by human ears and observing the time-frequency characteristic of music, and then a very simple strategy of downsampling is presented. By extracting beat information from it, the principle and the method to estimate the bpm is proposed, which compose an efficient algorithm of beat detecting used in devices such as digital turntable. The principle of algorithm was described, as well as the process of implementation on a DSP processor and the testing results are also presented. Compared with traditional algorithms, due to without complex processing such as clustering detecting and multi-channel filtering and frequency characteristic extracting at higher sampling rate, so the proposed algorithm costs less runtime, so it is not necessary to use a higher speed DSP processor, the DSP processor can works on its other main tasks well. By experimenting on the digital turntable, It was verified that the accuracy rate is higher. So it can meet the needs of the playback equipments for real-time detecting beat.

     

/

返回文章
返回