对于我的Android应用程序,我试图每秒钟获得不同的频率音频。是否可以每秒录制一次音频?
int bufferSizeInBytes = 1024;
AudioRecord audioInput = new AudioRecord(MediaRecorder.AudioSource.MIC, sampleRate, AudioFormat.CHANNEL_IN_MONO,
AudioFormat.ENCODING_PCM_16BIT, 2* bufferSizeInBytes);
buffer = new short[bufferSizeInBytes];
audioInput.startRecording();
int bufferReadResult = audioInput.read(buffer, 0, bufferSizeInBytes); // record data from mic into buffer
之后,我使用FFT将转换缓冲区数据应用于频率
double freq = 44100 * max_index / bufferSizeInBytes;
我获得了频率。但是我在一秒钟内多次获得相同的频率