I suppose, in human’s voice and in violin’s sound first harmonic’s fft abs is greater than half the maximum
You are supposing wrong. The harmonic structure can be quite complicated and sometimes the fundamental is entirely missing or very weak.
The sound has a pitch, but the FFT doesn’t have one. In fact FFT is not a great method for pitch detection because of limited frequency resolution and spectral leakage
What’s the best snipet for catch first batch greater than half the “FFTabs”?
index = find(FFTabs > 0.5*max(FFTabs)); will give the indices of all values in the FFT that exceed half the max, but it’s not going to help you much, I’m afraid.
Read more here: Source link