Я видел много сообщений здесь о частотном анализе и, казалось, очень помог мне, , но я попытался записать свой голос и распечатать частоту и кажется, что значения не имеют отношения к тому, что записано, попытался поднять мой голос вверх и вниз, чтобы узнать, что происходит с значениями частоты, , но частота, напечатанная, как вы можете видеть в логарифмическом сообщении, имеет свою собственную волю, возможно, причину фонового шума :)Анализ частоты FFT, кажется, ошибочно.
Вот код, как я получаю от частоты:
fftArray = FFT.fft(fftTempArray);
MAX = 0;
int index= 0;
for (int i = 0; i < fftArray.length/2; i++) {
if (fftArray[i].magnitudes() > MAX) {
MAX = fftArray[i].magnitudes();
index = i;
}
double freq = index * sampleFreq/fftArray.length;
System.out.println(freq);
}
Вот LogCat:
11-12 16:01:40.678: I/System.out(23397): 150.0
11-12 16:01:40.678: I/System.out(23397): 150.0
11-12 16:01:40.678: I/System.out(23397): 150.0
11-12 16:01:40.678: I/System.out(23397): 150.0
11-12 16:01:40.678: I/System.out(23397): 150.0
11-12 16:01:40.678: I/System.out(23397): 150.0
11-12 16:01:40.678: I/System.out(23397): 150.0
11-12 16:01:40.678: I/System.out(23397): 150.0
11-12 16:01:40.678: I/System.out(23397): 150.0
11-12 16:01:41.409: I/System.out(23397): 0.0
11-12 16:01:41.409: I/System.out(23397): 0.0
11-12 16:01:41.409: I/System.out(23397): 0.0
11-12 16:01:41.409: I/System.out(23397): 0.0
11-12 16:01:41.409: I/System.out(23397): 0.0
11-12 16:01:41.409: I/System.out(23397): 0.0
11-12 16:01:41.409: I/System.out(23397): 64.0
11-12 16:01:41.409: I/System.out(23397): 75.0
11-12 16:01:41.409: I/System.out(23397): 75.0
11-12 16:01:41.409: I/System.out(23397): 75.0
11-12 16:01:41.419: I/System.out(23397): 107.0
11-12 16:01:41.419: I/System.out(23397): 118.0
11-12 16:01:41.419: I/System.out(23397): 118.0
11-12 16:01:41.419: I/System.out(23397): 118.0
11-12 16:01:41.419: I/System.out(23397): 118.0
11-12 16:01:41.419: I/System.out(23397): 161.0
11-12 16:01:41.419: I/System.out(23397): 161.0
11-12 16:01:41.419: I/System.out(23397): 161.0
11-12 16:01:41.419: I/System.out(23397): 161.0
Это не остается на этом диапазоне значений независимо от того, что я делаю.
Не могли бы вы помочь? Как может случиться так, что частота не меняется, когда я делаю звуки высокого тона или различные типы шумов для микрофона?
Вы перешли на полярные координаты? Я не понимаю, каков будет ваш выход в журнал. – Radiodef
ваш журнал странный, почему он в цикле? – njzk2
Что вы используете? Ваш собственный или один из другого места? Что такое массив, который возвращается? Я не думаю, что вы действительно дали достаточно информации, чтобы быть в состоянии сказать, что неправильно (если что-нибудь). – Radiodef