课程名称:即时通讯项目里面的语音处理-基础实现篇
课程章节:2-6 Android-录音函数的关键参数分析
主讲老师:Piasy
课程内容:
今天学习内容有:
- 回顾文件模式和流模式关键函数
课程收获:
回顾文件模式关键函数
- 从麦克风采集
mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
- 麦克风:MIC
- 语音识别:VOICE_RECOGNITION
- 语音通话:VOICE_COMMUNICATION
- 保存文件为MP4格式
mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
- 文件容器:MediaRecorder.OutputFormat.MPEG_4
- 声音编码:MediaRecorder.AudioEncoder.AAC
- 所有安卓都支持的采样率
mMediaRecorder.setAudioSamplingRate(44100);
- 说话声音是模拟信号,需要转换成数字信号(01)
- 采样率频率越高,声音质量越好,文件也会更大
- 通用的AAC编码格式
mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
- 音质比较好的频率
mMediaRecorder.setAudioEncodingBitRate(96000);
字节流模式采集
- 从麦克风采集
int audioSource = MediaRecorder.AudioSource.MIC;
- 所有安卓都支持的频率
int sampleRate = 44100;
- 单声道输入
int channelConfig = AudioFormat.CHANNEL_IN_MONO;
- 音频的采集和播放可以叠加
- 分别从多个音频源采集,分别输出到不同扬声器
- 单声道(Mono)双声道(Stereo)
- PCM16所有安卓都支持
audioFomat = AudioFormat.ENCODING_PCM_16BIT
- 量化精度:原始PCM数据,每个采样点的数据大小
- 4bit,8bit…位数越多,音质越好,数据越大
- 16bit兼容所有安卓机