iOS-iPhone使用AVFoundation录制声音后音量过低
我有一个我正在开发的应用程序,它的功能之一是通过iOS-iPhone使用AVFoundation录制声音后音量过低,ios,audio,avfoundation,Ios,Audio,Avfoundation,我有一个我正在开发的应用程序,它的功能之一是通过iPhone麦克风录制声音,并能够向我播放 问题:在我录制之后,比如说,我说话,播放级别非常低。现在我确实从AudioToolbox切换到了AVFoundation,这是在切换之后发生的。是否需要为AVFoundation编码音量参数?我在文档中没有看到任何内容 谢谢你的帮助 录制音频或配置录制或播放和录制音频会话时,iPhone会从使用扬声器(底部)切换到使用较小的耳机(靠近前顶部),从而产生较低的音量 通过将音频会话kAudioSessionP
iPhone麦克风录制声音,并能够向我播放
问题:在我录制之后,比如说,我说话,播放级别非常低。现在我确实从AudioToolbox
切换到了AVFoundation
,这是在切换之后发生的。是否需要为AVFoundation
编码音量参数?我在文档中没有看到任何内容
谢谢你的帮助 录制音频或配置录制或播放和录制音频会话时,iPhone会从使用扬声器(底部)切换到使用较小的耳机(靠近前顶部),从而产生较低的音量
通过将音频会话kAudioSessionProperty_OverrideAudioRoute属性设置为kAudioSessionOverrideAudioRoute_,您的应用程序可以覆盖此默认设置。有关详细信息,请参阅苹果的音频会话API文档。我已经解决了这个问题。在AppDelegate.m中,我在didfishlaunchingwithoptions
[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayAndRecord error: &setAudioError];
if (setAudioError) { NSLog(@"error setting audio: %@", setAudioError); }
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty (
kAudioSessionProperty_OverrideAudioRoute,
sizeof (audioRouteOverride),
&audioRouteOverride);
这里重要的一点是,它不起作用,因为我最初有AVAudioSessionCategoryPlayer错误:&setAudioError
一旦我将其更改为“播放和录制”,我就没有任何问题。在“设置”中打开飞行模式。你的声音会高得多。我试着使用上面的建议,但由于某些原因,它不起作用。