我当时将AndroidSoundPool
视为在通用游戏开发库中实现音效的机制。这似乎是理想的。
但是,一点点研究表明,有所有 种类的 的 错误在SoundPool
。这些错误SoundPool
仍然相关吗?
因为我正在开发一个库,所以任何错误都会SoundPool
变成我库中的错误,因此我想使用户与之隔离。
所以我的问题基本上是:应该使用哪种API进行音频播放?
使用AudioTrack
和编写自己的混音器并不是没有问题的。但是显然最好避免这样做。是否有任何API可以为我提供解码?
我需要能够播放合理数量的同时声音效果(至少可以说16个),并且还要更加开放。声音需要以低延迟开始播放。WAV
需要支持的文件(MP3 / Ogg不重要)。音效需要支持无缝循环以及动态,独立的音量调节。需要正确支持Android应用生命周期。
我听说某处有1MB的限制SoundPool
,这对于每种单独的声音效果来说都可以接受,但对于所有的缓冲区/声音来说,这是可以接受的。有人可以确切地告诉我限制是多少吗?
最后,我还需要能够以较低的CPU负载以压缩格式播放背景音乐。我认为这MediaPlayer
是理想的。可以与其他API并行使用吗?
我知道有一些人一直MediaPlayer
在填写SoundPool
。但是它支持我需要的功能吗?
我还错过了其他音频API吗?