hello everyone,
I would like to use the new AudioRecord class to record in PCM format.
Create class and setRecordPositionUpdateListener to it, then start
recording, I can't get any notification from system forever,why?(I
didn't get any error when running)
please help me, thanks.
the next is my code.
public class Recorder {
private static final int AUDIO_SAMPLE_FREQ = 8000;
private static final int AUDIO_BUFFER_SIZE = 200000;
private AudioRecord recorder;
public Recorder()
{
try
{
// init recorder
recorder = new
AudioRecord(MediaRecorder.AudioSource.MIC,
AUDIO_SAMPLE_FREQ,
AudioFormat.CHANNEL_CONFIGURATION_MONO,
AudioFormat.ENCODING_PCM_16BIT,
AUDIO_BUFFER_SIZE);
}
catch (IllegalArgumentException e)
{
e.printStackTrace();
}
recorder.setRecordPositionUpdateListener(mNotification);
recorder.setPositionNotificationPeriod(50);
recorder.setNotificationMarkerPosition(AUDIO_SAMPLE_FREQ);
}
public OnRecordPositionUpdateListener mNotification = new
OnRecordPositionUpdateListener(){
public void onMarkerReached(AudioRecord arg0) {
// read PCM buffer here
byte[] audioBuffer = new byte[AUDIO_SAMPLE_FREQ];
arg0.read(audioBuffer, 0, AUDIO_SAMPLE_FREQ);
}
public void onPeriodicNotification(AudioRecord arg0) {
// read PCM buffer here
byte[] audioBuffer = new byte[AUDIO_SAMPLE_FREQ];
arg0.read(audioBuffer, 0, AUDIO_SAMPLE_FREQ);
}
public void StartRecord()
{
recorder.startRecording();
}
public void StopRecord()
{
recorder.stop();
}
public void ReleaseRecord()
{
recorder.release();
}
};
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---