OpenAL随机停止播放一些声音,只能通过重启修复

时间:2012-02-22 15:25:22

标签: ios audio cocos2d-iphone openal

THE APPS:两款拥有庞大客户群的Cocos2d通用iOS游戏。

问题:几个月前(2011年)报道开始报道,声音会随机切断,只有部分声音会在应用中播放,有些则不然。此问题只能通过设备重启来解决。

重要注意事项&详情:

  • 相同的SAME代码和SAME声音文件播放一年多了 没有此类错误报告。我希望我能确定一个约会,但我 相信问题始于iOS更新。

  • 这个错误难以复制。我亲眼见过它 曾经,但我再也没有运气了。然而我们得到1-2 每天支持同一个问题的电子邮件,其中一些来自 形成一个糟糕的评论。如果我不得不把数字拉出来,我会 我猜我们正在考虑1000分之一的发病率。似乎可能更多 在iPad上很常见,但我不确定。

  • 重启设备是 ONLY 解决问题的方法。 重新启动应用程序不会执行任何操作,删除应用程序并重新安装 什么都不做,必须是一个停电并重新开启。

  • 几个星期前试图盲目修复我倾倒了Cocos2d 声音引擎并将其中一个应用程序切换到ObjectAL(另一个 基于openAL的声音引擎),希望它可能已经解决了这个问题。 它没有,同样的问题正在发生。正如你所说,这两个 只是OpenAL的接口。

  • 声音文件本身已经从wavs转换为cafs使用 Apple的推荐方法( https://developer.apple.com/library/ios/#codinghowtos/AudioAndVideo/_index.html ),虽然我们也使用-c 1标志使它们成为单通道。

  • 为了清楚起见,这个bug与通常的声音无关 问题(静音开关,音量)。一部分声音继续 打得很好,但是在设备出现之前他们永远不会再玩 断电并重新启动。

如果有人有任何想法,我会非常感谢你的帮助。我在这里试图修复一个我无法重新创建的持久性错误,这似乎是由我无法控制的东西造成的。

1 个答案:

答案 0 :(得分:2)

正如评论者所说,我与OpenAL有类似的问题。我们在不同的硬件和不同的OS版本上都存在虚假问题。真的,重现几乎是不可能的。我们发现问题的唯一原因是遇到崩溃或其他严重音频问题的用户占很大比例。我们尝试了几个月试图使其工作,但最终我们遇到的稳定性问题是不可控制的。我们最终选择了另一个图书馆并完全取消了OpenAL。我当然不会推荐它用于新项目。