我正在创建一个应用程序,该应用程序使用iPhone底部麦克风录制或没有插入耳机。我的问题是插入耳机录制比使用耳机录制要低得多耳机未插入。
当耳机插入,这样录制的音量就和不带耳机时一样。我试过调整AVAudioSession.inputGain,但效果相同。
根据应用程序的意图,会想到一些事情。
- 我发现,如果用户不想将设备靠近面部(即打电话),使用Front麦克风更适合录音
- 配置数据源极性模式&根据使用环境的不同,定向也会产生巨大的影响。查看AVAudioSessionDataSourceDescription的类引用
-
如果您愿意使用音频单元进行输入处理,启用语音处理IO效果单元可以显著提高捕获的质量和音量。请参阅下面的示例。
AudioComponentDescription desc; desc.componentType = kAudioUnitType_Output; desc.componentSubType = kAudioUnitSubType_VoiceProcessingIO; desc.componentManufacturer = kAudioUnitManufacturer_Apple; desc.componentFlags = 0; desc.componentFlagsMask = 0;
我将类别模式设置为AVAudioSessionModeMeasurement。将其设置为AVAudioSessionModeDefault解决了我的问题。