Я пытаюсь записать данные с аудиоинтерфейса моего мобильного телефона.Я использовал функцию аудиозаписи.Вот мой код:
public void Initialize () {
buffersizebytes = AudioRecord.getMinBufferSize(SAMPPERSEC,channelConfiguration, audioEncoding); // 4096 on ion
buffer = new short[buffersizebytes];
buflen = buffersizebytes / 2;
audioRecord = new AudioRecord(
android.media.MediaRecorder.AudioSource.MIC, SAMPPERSEC,
channelConfiguration, audioEncoding, buffersizebytes);
acquire();
for(int i=0; i<4096; i++) buffer[i]=1;
}
public void acquire() {
try {
audioRecord.startRecording();
mSamplesRead = audioRecord.read(buffer, 0, buffersizebytes);
audioRecord.stop();
} catch (Throwable t) {
// Log.e("AudioRecord", "Recording Failed");
}
}
Я хочу поместить полученные данные в буфер размером 4096 байт.Но моя программа только помещает данные в 1024 байта.Также первые 432 байта также нули.Но я посылаю данные постоянно.В чем может быть проблема?