2011-11-28 89 views
3

我有一个相当简单的设置,其中RemoteIO设备正在接受输入,做一些处理,将其发送出去并将输出写入文件。现在,我只是在RemoteIO render回调中生成测试信号,所以我并不真正关心来自“实际”输入的任何内容。我的回调函数被调用,并且在模拟器中起作用,但在手机上运行时根本不会被调用。任何想法,我应该开始寻找?我很高兴发布代码 - 只是不确定每个人都希望看到...AudioUnit渲染回调在iPhone模拟器上调用,但不是在电话上

+1

可以显示设置音频单元的代码吗?打开设备时是否还记录了任何错误?这可能是因为您要求的格式在模拟器上有效,但在设备上无效。 – mattjgalloway

+0

现在@mattjgalloway说了,我还记得有些单位在模拟器和设备上支持不同的格式。因此,评估和记录CoreAudio方法中的所有错误以找到此错误至关重要。 – DarkDust

回答

3

我知道事情在过去有效,所以我开始通过回购挖掘。愚蠢的是,我把我的AudioSessionkAudioSessionProperty_AudioCategorykAudioSessionCategory_PlayAndRecord更改为kAudioSessionCategory_RecordAudio,并忘记将其改回。希望这可以帮助别人避免相同的愚蠢的错误...

0

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

相关问题