AudioRecord行为问题

时间:2012-02-26 23:12:30

标签: android memory-leaks audiorecord android-audiorecord

我正在努力使用AudioRecord来解决问题。

基本上我想要做的是很少从我的Android设备上的音频录制。 我不必从音频源获得连续的字节流,但我必须每隔5分钟左右输入一个缓冲区。

问题是我的程序使用的内存每次录制时都会增加(我使用DDMS调查我的内存问题)。我将代码缩减为以下几行,以便更好地理解该问题。

    buffersizebytes = AudioRecord.getMinBufferSize(SAMPPERSEC,
            channelConfiguration, audioEncoding);
    tabbAudioBuffer = new byte[buffersizebytes];

    setContentView(R.layout.main);

    audioRecord = new AudioRecord(
            android.media.MediaRecorder.AudioSource.MIC, SAMPPERSEC,
            channelConfiguration, audioEncoding, buffersizebytes);

    int i=1000;
    while(i-->0) {  
        audioRecord.startRecording();
        audioRecord.stop();
    }

    audioRecord.release();
    audioRecord = null;

如果您能解决我的问题,请告诉我。 感谢。

1 个答案:

答案 0 :(得分:0)

我有一个类似的问题,如果你可以挖出一些东西,我真的很感兴趣。 我想代码的想法是在你调用startRecording()时显示内存增加,然后执行某些操作,然后stop() ...多次。