如何使用Android上的tarsosDSP(使用FFT_-YIN)获取当前声音的所有频率
这是FFT_-YIN算法获取峰值频率的代码 公共PitchDetectionResult getPitch(最终浮点[]音频缓冲区){ 但我想通过TarsosDSP的FFT_-YIN算法获得当前声音的所有频率。谢谢如何使用Android上的tarsosDSP(使用FFT_-YIN)获取当前声音的所有频率,android,fft,tarsosdsp,Android,Fft,Tarsosdsp,这是FFT_-YIN算法获取峰值频率的代码 公共PitchDetectionResult getPitch(最终浮点[]音频缓冲区){ 但我想通过TarsosDSP的FFT_-YIN算法获得当前声音的所有频率。谢谢 final int tauEstimate; final float pitchInHertz; // step 2 difference(audioBuffer); // step 3 cumulativeMeanNormaliz
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;
}