MicropRunnable.java:
import android.media.AudioFormat;
import android.media.AudioManager;
import android.media.AudioRecord;
import android.media.AudioTrack;
import android.media.MediaRecorder;
public class MicropRunnable implements Runnable {
// 是否录放的标记
boolean isRecording = false;
static final int frequency = 44100;
@SuppressWarnings("deprecation")
static final int channelConfiguration = AudioFormat.CHANNEL_CONFIGURATION_MONO;
static final int audioEncoding = AudioFormat.ENCODING_PCM_16BIT;
// 定义录放音缓冲区大小
int recBufSize, playBufSize;
// 实例化录音对象
AudioRecord audioRecord;
// 实例化播放对象
AudioTrack audioTrack;
public MicropRunnable() {
// 调用getMinBufferSize方法获得录音的最小缓冲空间
recBufSize = AudioRecord.getMinBufferSize(frequency, channelConfiguration, audioEncoding);
// 调用getMinBufferSize方法获得放音最小的缓冲区大小
playBufSize = AudioTrack.getMinBuffer