我正在尝试使用AudioRecord API录制音频,而我正在尝试将时域转换为频域。如果我想比缓冲区和FFT大小每10毫秒录制一次音频?
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 = ?;
答案 0 :(得分:0)
如果您的采样率是44.1 kHz,那么10 ms将是0.01 * 44100 = 441个样本。
如果您的FFT库仅支持2种尺寸的功率,那么您可以使用N = 512作为FFT大小,并使用零填充或使用重叠窗口。