前言:
其实在Android中录音可以用MediaRecord录音,操作比较简单。但是不能对音频进行处理。考虑到项目中做的是实时语音只能选择AudioRecord进行录音。然后实时播放也只能采用AudioTrack进行播放。
下文为具体实现:
public class AudioTrackManager { public static final String TAG = "AudioTrackManager"; private AudioTrack audioTrack; private DataInputStream dis; private Thread recordThread; private boolean isStart = false; private static AudioTrackManager mInstance; private int bufferSize; public AudioTrackManager() { bufferSize = AudioTrack.getMinBufferSize(8000, AudioFormat.CHANNEL_OUT_MONO, AudioFormat.ENCODING_PCM_16BIT); audioTrack = new AudioTrack(AudioManager.STREAM_MUSIC, 8000, AudioFormat.CHANNEL_OUT_MONO, AudioFormat.ENCODING_PCM_1