我有一个我正在研究的应用程序,它的一个功能是通过iPhone microphone
录制声音并能够播放给我。
问题:我记录之后可以说,例如,我说话,播放电平非常低。现在我确实从AudioToolbox
切换到AVFoundation
,这发生在切换之后。我是否需要为AVFoundation
的卷参数编码?我在documentation
中没有看到任何内容。
我感谢任何帮助。
答案 0 :(得分:1)
我已经解决了这个问题。在AppDelegate.m中,我在didFinishLaunchingWithOptions
[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayAndRecord error: &setAudioError];
if (setAudioError) { NSLog(@"error setting audio: %@", setAudioError); }
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty (
kAudioSessionProperty_OverrideAudioRoute,
sizeof (audioRouteOverride),
&audioRouteOverride);
这里的重要部分是,它不起作用,因为我最初有AVAudioSessionCategoryPlayer error:&setAudioError
一旦我将其更改为“PlayandRecord”,我就没有任何问题。
答案 1 :(得分:0)
录制音频或配置录音或PlayAndRecord音频会话时,iPhone会从使用扬声器(在底部)切换到使用较小的耳机(靠近前部顶部),从而产生较低的音量。
您的应用可以通过将音频会话kAudioSessionProperty_OverrideAudioRoute属性设置为kAudioSessionOverrideAudioRoute_Speaker来覆盖此默认设置。有关详细信息,请参阅Apple的Audio Session API文档。
答案 2 :(得分:-1)
在“设置”中启用“飞行模式”。你的声音要高得多。