所以我已经使用了libgdx一段时间,并且我正在游戏中播放音乐。现在出现的问题是我无法分配音频缓冲区错误。
以下是我如何处理这种情况的详细信息。
当游戏开始并且状态开始运行时,我正在设置音量并播放音乐。此外,如果状态改变,我正在改变音量水平。现在问题到了,如果我赢了游戏,然后我继续,在我卸载所有资产后,当我再次加载资产进入屏幕时,它给了我Unable to allocate audio buffers.
所以这就是问题如果有任何机构要求查看代码请求它!!
答案 0 :(得分:0)
事情是libgdx的音频类有这样的逻辑:
什么时候调用play();方法是将对象添加到数组并给出一个id。当你试图处理它时,使缓冲区为空(并删除缓冲区);当你试图阻止它时,它从数组中删除对象。
你需要保持这个生命周期。 如果您不再使用它,请将其丢弃。或先停止音乐然后处理它。
如果我错了,请纠正我。
此外,我只是找到另一种解决方案,你可以播放音乐,你在哪里开始并暂停。并且将设置缓冲区。然后在你需要的地方玩它。这也有效