3

在我的应用程序中,用户通过按下按钮来播放声音。有几个按钮可以同时播放。声音使用 AVAudioPlayer 实例播放。我想使用 AVAudioRecorder 记录这些实例的输出。我已经全部设置好并创建了一个文件并进行了记录,但是当我播放它时,它不会播放任何声音。它只是录音长度的无声文件。有谁知道我是否缺少 AVAudioPlayer 或 AVAudioRecorder 的设置?谢谢

4

4 回答 4

4

无法将 AVAudioPlayer 输出记录为 AVAudioRecorder 的输入以进行记录。您可以使用音频缓冲区来存储播放的文件并将其保存到文件中。

于 2012-12-13T09:04:53.113 回答
2

如果我们看到您的代码,可能会更容易提供帮助。

您还应该查看以下链接以查看您的 AVAudioRecorder 设置是否正确:如何使用 AVAudioRecorder 在 iPhone 上录制音频?

尽管该链接显示了如何从麦克风设置录音,但它仍然可能对您有所帮助。

于 2009-06-19T17:58:36.847 回答
1

希望它有所帮助,至少寻找其他东西。

我在这里遇到了同样的问题,我正在尝试录制在不同时间播放的不同声音的混合,并播放主音轨,我发现 AVAudioRecorder 只从麦克风录制,所以它可以工作。

我发现,仍然需要阅读文档并对其进行测试,是音频转换器服务,我认为这可能有效,但我刚刚阅读了几行。

再次抱歉告诉你,但你看错了,我希望我的回答对你有帮助

于 2010-12-26T00:09:45.787 回答
1

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

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

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

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

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

在您的接口声明中。

于 2010-12-02T23:35:38.553 回答