Skip to main content

Posts

Showing posts with the label audiorecord

audiorecord is not working properly while using audiotrack in galaxy y

i have written a code which records voice using audiorecord and at the same times it plays that recorded sound using AudioTrack. the main portion of the code is following - AudioRecord audioRecord = new AudioRecord( MediaRecorder.AudioSource.MIC, 8000, AudioFormat.CHANNEL_CONFIGURATION_MONO, AudioFormat.ENCODING_PCM_16BIT, 16 * 1024); audioRecord.startRecording(); AudioTrack audioPlayer = new AudioTrack(AudioManager.STREAM_VOICE_CALL, 8000, AudioFormat.CHANNEL_CONFIGURATION_MONO, AudioFormat.ENCODING_PCM_16BIT, 16 * 1024, AudioTrack.MODE_STREAM); audioPlayer.play(); for (int i = 0; i < 500; i++) { int n = audioRecord.read(recordBuffer, 0, 160); audioPlayer.write(recordBuffer, 0, n); } ........... This code works perfectly in other device . but in galaxy y , its creating problem. in galaxy y its showing obtainbuffer timed out in audiotrack. i run this code successfully in other devices. and i also checkhed that if i write the recorded sou

Issue with AudioRecord behaviour

I'm struggling to get things right using AudioRecord. Basically what I'm trying to do is seldomly record from the audio on my Android device. I don't have to get a continuous stream of bytes from the audio source, but I have to feed a buffer every 5 minutes or so. The problem is that the memory used by my program increases everytime I'm recording (I used the DDMS to investigate my memory issue). I reduced my code to the following lines to better understand the issue. 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();