MediaRecorder.AudioSource中VOICE_COMMUNICATION和MIC之间的区别

时间:2017-11-20 14:44:19

标签: android audio-recording android-mediarecorder android-audiorecord

我正在使用媒体录制器在Android中使用VOICE_COMMUNICATION& MIC模式或者。

RECORD_SOURCE = MediaRecorder.AudioSource.VOICE_COMMUNICATION; //RECORD_SOURCE = MediaRecorder.AudioSource.MIC; iAudioRecorder = new AudioRecord(RECORD_SOURCE, NATIVE_SAMPLE_RATE, AudioFormat.CHANNEL_IN_MONO, AudioFormat.ENCODING_PCM_16BIT, RECORD_BUF_UNIT);

我看到MIC录制的音频数据的增益远远高于某些设备的VOICE_COMMUNICATION(约2/3倍)。此外,VOICE_COMMUNICATION捕获的背景音乐不如MIC

为什么这两种录制模式的音质(如增益,响应性)不同?

1 个答案:

答案 0 :(得分:1)

根据Android Developer ReferenceMICVOICE_COMMUNICATION,某些预处理,例如回音消除噪音抑制应用于使用VOICE_COMMUNICATION捕获的音频,这反过来会对数据造成一些衰减。此外,在进行这种预处理时,由于这种衰减,具有低振幅的音频信号变得甚至更弱。因此,当某些设备太低时,我们觉得背景音频有点消失。

另一点是设备之间的不同特征。从this link开始,它完全取决于设备制造商,他们可以自由决定哪种预处理应该适用于哪种模式以及如何使用。