前言
Android系统在实现录音以及录像的功能均是通过使用MediaRecorder实现的。本篇文章主要介绍如何借助MediaRecorder实现后台录音功能。
MediaRecoder
MediaRecoder主要方法介绍
void prepar():准备录制
void start():开始录制
void stop():停止录制
void reset():重置MediaRecorder
void release():释放MediaRecorder占用的资源
void setAudioEncoder(int):设置音频记录的编码格式
void setAudioSource(int):设置音频记录的音频源
void setOutoutFormat(int):设置记录的媒体文件的输出转换格式
void setOutputFile(String):媒体文件输出路径
audiosource的来源设定
来源
描述
CAMCORDER
录音来源于同方向的相机麦克风相同,若相机无内置相机或无法识别,则使用预设的麦克风
DEFAULT
默认音频源
MIC
录音来源为主麦克风
REMOTE_SUBMIX
用于远程呈现的音频流的子混音的音频源,需要Manifest.permission.CAPTURE_AUDIO_OUTPUT权限,第三方应用无法申请
UNPROCESSED
与默认相同
VOICE_CALL
记录上行与下行音频源,需要Manifest.permission.CAPTURE_AUDIO_OUTPUT权限,第三方应用无法申请
VOICE_COMMUNICATION
麦克风音频源针对VoIP等语音通信进行了调整,可以接收到通话的双方语音
VOICE_DOWNLINK、VOICE_UPLINK
上行下行的语音,需要Manifest.permission.CAPTURE_AUDIO_OUTPUT权限,第三方应用无法申请
VOICE_PERFORMANCE
捕获音频的来源意味着要实时处理并播放以进行现场演出
VOICE_RECOGNIT