我想了解如何在Android中使用AudioRecord功能录制并回放声音,而不是使用MediaRecorder。
请提供示例代码或URL。提前感谢。
我想了解如何在Android中使用AudioRecord功能录制并回放声音,而不是使用MediaRecorder。
请提供示例代码或URL。提前感谢。
我认为您可以通过使用以下原型代码来开始
import android.media.AudioFormat;
import android.media.AudioRecord;
import android.media.MediaRecorder;
import android.util.Log;
public class AudioListener {
public static final int DEFAULT_SAMPLE_RATE = 8000;
private static final int DEFAULT_BUFFER_SIZE = 4096;
private static final int CALLBACK_PERIOD = 4000; // 500 msec (sample rate / callback //period)
private final AudioRecord recorder;
public AudioListener() {
this(DEFAULT_SAMPLE_RATE);
}
private AudioListener(int sampleRate) {
recorder = new AudioRecord(MediaRecorder.AudioSource.DEFAULT,
sampleRate, AudioFormat.CHANNEL_CONFIGURATION_DEFAULT,
AudioFormat.ENCODING_DEFAULT, DEFAULT_BUFFER_SIZE);
}
public void start() {
recorder.setPositionNotificationPeriod(CALLBACK_PERIOD);
recorder.setRecordPositionUpdateListener(new
AudioRecord.OnRecordPositionUpdateListener() {
@Override
public void onMarkerReached(AudioRecord recorder) {
Log.e(this.getClass().getSimpleName(), "onMarkerReached
Called");
}
@Override
public void onPeriodicNotification(AudioRecord recorder) {
Log.e(this.getClass().getSimpleName(), "onPeriodicNotification
Called");
}
});
recorder.startRecording();
}