我最近试图实现这里找到的节拍检测代码,即Derivation和Combfilter算法#1 :: http://archive.gamedev.net/reference/programming/features/beatdetection/page2.asp
我不太确定我是否成功实施,因为我没有取得好成绩.我想知道是否有人成功地实现了这一点,或者仅仅是想要帮助一般的好人.这是我的实现:
//Cycle through Tempo's (60 to 200) incrementing each time by 10
for (int i = (int)mintempo; i <= maxtempo; i += 10)
{
//Clear variables to be used
curtempo = i;
fftPulse.Clear();
offset = 0;
energy = 0;
short[] prevBuffer = null;
//Calculate ti
ti = (60 / curtempo) * 44100;
ti = Math.Round(ti, 0);
//Generate pulse train
for (int j = 0; j < pulseTrain.Length; j++)
{
if ((j % ti) == 0)
pulseTrain[j] = …Run Code Online (Sandbox Code Playgroud)