就像用户harikris建议的那样,我强烈建议您使用OpenSL ES库将所有音频播放和处理代码移至Android NDK,以获得最佳性能。
据我了解,AudioTrack API建立在OpenSL ES缓冲区队列音频播放器之上。因此,您可以通过直接与NDK合作,编写从Java /
Android层调用以处理声音的C代码来提高性能。
上面提到的本地音频示例包含的代码将向您展示如何直接从URI播放声音文件。以我的经验,这种方法的结果要好于静态模式下的AudioTrack。
通常,Soundpool保留用于可以从内存播放的非常短的声音,它不是定序器的可扩展解决方案,尤其是在引入大文件时。
以下是一些有助于我完成应用程序工作的链接:-有关适用于Android的OpenSL
ES的常规信息:http :
//mobilepearls.com/labs/native-android-
api/opensles/
-带有一些出色示例代码的Android音频博客:http : //audioprograming.wordpress.com
编辑:旧的移动珍珠链接似乎已关闭。这是一个有效的方法:http : //mobilepearls.com/labs/native-android-
api/ndk/docs/opensles/index.html



