【问题标题】:AudioUnit render callback called on iPhone simulator, but not on phone在 iPhone 模拟器上调用 AudioUnit 渲染回调,但不在手机上
【发布时间】:2011-11-28 09:09:36
【问题描述】:

我有一个相当简单的设置,其中 RemoteIO 单元接收输入,进行一些处理,将其发送到输出,并将输出写入文件。现在,我只是在 RemoteIO 渲染回调中生成测试信号,所以我并不真正关心来自“实际”输入的任何内容。我的渲染回调被调用并在模拟器中工作,但在手机上运行时根本不会被调用。我应该从哪里开始寻找任何想法?很高兴发布代码——只是不确定每个人都想看到什么......

【问题讨论】:

  • 你能显示设置音频单元的代码吗?打开设备时还会记录任何错误吗?这可能是因为您要求的格式在模拟器上有效,但在设备上无效。
  • 既然@mattjgalloway 这么说,我还记得有些单元在模拟器和设备上支持不同的格式。因此,评估并记录 CoreAudio 方法中的所有错误以找到此错误至关重要。

标签: iphone ios core-audio audiounit


【解决方案1】:

我知道过去是可行的,所以我开始挖掘 repo。愚蠢的是,我将我的AudioSessionkAudioSessionProperty_AudioCategorykAudioSessionCategory_PlayAndRecord 更改为kAudioSessionCategory_RecordAudio,却忘了改回来。希望这可以帮助其他人避免同样的愚蠢错误......

【讨论】:

    【解决方案2】:

    就在一个小时前,我还在解决同样的问题。问题是我在头文件中定义了 AudioUnit 类型变量,所以在我使用 AudioComponentInstance 而不是 AudioUnit 之后,它也开始在我的设备上工作。 所以可能是这样的。

    【讨论】:

      猜你喜欢
      • 2015-07-20
      • 1970-01-01
      • 2013-02-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-13
      相关资源
      最近更新 更多