0

我使用 AVAudioRecorder 创建了一个 .caf 音频文件,如果我尝试使用 AVAudioPlay 播放它,我在 iPhone 上听不到声音(如果在模拟器中播放效果很好)。如果我关闭我的应用程序并重新打开文件播放正常。此外,除非我关闭并重新打开我的应用程序,否则我无法在录制后调整手机音量。有任何想法吗?

4

2 回答 2

4

面临同样的问题。通过将 AVAudioSession 类别设置为 AVAudioSessionCategoryPlayback 模式解决了该问题。这是我的工作代码:

AVAudioSession *audioSession = [AVAudioSession sharedInstance];
audioSession.delegate = self;
[audioSession setCategory:AVAudioSessionCategoryPlayback error:NULL];
[audioSession setActive: YES error: nil];

还要确保通过执行以下操作成功完成了录音:

   -(void) audioRecorderDidFinishRecording:(AVAudioRecorder *)recorder successfully:(BOOL)flag
{
    NSLog(@"Recording success:%@",flag ? @"YES" : @"NO");
}

并检查您是否已添加<AVAudioSessionDelegate,AVAudioRecorderDelegate,AVAudioPlayerDelegate>

在您的接口声明中。

于 2010-12-02T12:43:42.053 回答
0

我对aac文件有同样的问题。我之前使用过 ima4,效果很好!我想区别在于,aac 是硬件,而 ima4 是软件解码的。当后面的文件被重新录制时,您是否尝试重新初始化播放器?这对我有用!

马库斯

于 2010-05-03T08:47:31.390 回答