问题描述
这是得到峰值频率的FFT_YIN算法代码
public PitchDetectionResult getPitch(final float[] audioBuffer) {
final int tauEstimate;
final float pitchInHertz;
// step 2
difference(audioBuffer);
// step 3
cumulativeMeannormalizedDifference();
// step 4
tauEstimate = absoluteThreshold();
// step 5
if (tauEstimate != -1) {
final float betterTau = parabolicInterpolation(tauEstimate);
// step 6
// Todo Implement optimization for the AUBIO_YIN algorithm.
// 0.77% => 0.5% error rate,// using the data of the YIN paper
// bestLocalEstimate()
// conversion to Hz
pitchInHertz = sampleRate / betterTau;
} else{
// no pitch found
pitchInHertz = -1;
}
result.setPitch(pitchInHertz);
return result;
}
但是我想通过 tarsosdsp 的 FFT_YIN 算法得到当前声音的所有频率。谢谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)