我正在尝试使用AudioRecord API录制音频,并且试图将时域转换为频域。如果我想每10毫秒记录一次音频,那么缓冲区和FFT的大小是多少?
audioRecord = new AudioRecord(MediaRecorder.AudioSource.MIC,
44100, AudioFormat.CHANNEL_IN_MONO,
AudioFormat.ENCODING_PCM_16BIT, what is the buffersize?);
short = new short[what is the buffer size ?];
int fftSize = ?;
最佳答案
如果您的采样率为44.1 kHz,则10 ms将为0.01 * 44100 = 441个采样。
如果FFT库仅支持2的幂次方,则可以将N = 512作为FFT大小,并填充零或使用重叠的窗口。
关于java - 每10毫秒记录一次音频的音频缓冲区大小和FFT大小是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43000205/