1

我有一个我正在开发的应用程序,它的一个功能是通过 录制声音iPhone microphone并能够回放给我。

问题:在我录制之后,比如说我说话,播放级别非常低。现在我确实切换AudioToolbox到了AVFoundation,这发生在切换之后。我需要在音量参数中编码AVFoundation吗?我在documentation.

我很感激任何帮助。

4

3 回答 3

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”,我就没有问题了。

于 2012-09-10T21:24:14.817 回答
0

在录制音频或配置 Record 或 PlayAndRecord Audio Session 时,iPhone 从使用扬声器(位于底部)切换到使用较小的耳机(靠近前顶部),这会产生较低的音量。

您的应用可以通过将音频会话 kAudioSessionProperty_OverrideAudioRoute 属性设置为 kAudioSessionOverrideAudioRoute_Speaker 来覆盖此默认设置。有关详细信息,请参阅 Apple 的音频会话 API 文档。

于 2012-08-25T04:31:29.190 回答
-1

在设置中打开飞行模式。你的声音会高很多。

于 2014-12-16T21:43:21.217 回答