我使用OpenSL ES在我的项目中播放音乐和声音。我已经使用原生音频样本作为开始,并且可以用于再现背景音乐和单个声音,但是当我尝试在同一时间再现两个或更多声音时,由于声音缓冲区已被排入播放所有以前的缓冲区时播放。使用OpenSL ES同时播放多种音效Android
然后,一个小小的研究后,我发现两种方法来解决它,简称:
- 使用几个音频播放器(因此缓冲队列)为再现声音。
- 将音效缓冲区混合到一个缓冲区中,然后入队。
我的问题是: 你认为什么是最好的方法?我忽略了一个更好的方法?
在此先感谢。
首先,谢谢你的回应。我在一个旧项目中使用了SoundPool,是的,它非常简单,即使使用C++也很容易实现,但是对于我来说SoundPool有两个大问题,**它在Galaxy S设备上崩溃**并且非常不稳定**(有些声音从未播放过,第一次播放没有奏效......)。 – gergonzalez