2017-03-24 5 views
0

AudioRecord APIを使用してオーディオを録音しようとしていますが、時間ドメインを周波数ドメインに変換しようとしています。バッファとFFTサイズよりも10ミリ秒ごとにオーディオを録音したいのですが?10msごとにオーディオを記録するためのオーディオバッファサイズと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 = ?; 

答えて

0

サンプルレートが44.1 kHzの場合、10 msは0.01 * 44100 = 441サンプルになります。

FFTライブラリで2倍の累乗しかサポートしていない場合は、FFTサイズにN = 512を使用し、ゼロでパッドするか、重複するウィンドウを使用します。

+0

返信ありがとうございます。fftサイズ512次に、正しいaudioRecord = new AudioRecord(MediaRecorder.AudioSource.MIC、44100、AudioFormat.CHANNEL_IN_MONO、AudioFormat.ENCODING_PCM_16BIT、512(0r)2 * 512)。 – Siddharthan

関連する問題