android – 多个AudioTracks,单线程还是多个?

在我的应用程序中,我将创建多个音频轨道,其中一些将需要同时播放.我将使用MODE_STREAM并在应用程序运行时写入数据.声音将动态生成,这就是我使用Audio Track而不是其他任何东西的原因.
我相信有4种选择:

> AsyncTask
>一个UI线程和一个管理所有AudioTrack播放的线程
>每个AudioTrack一个UI线程和一个线程
>一个UI线程和一个Thread Pool

四种方法中哪一种是管理多个AudioTracks的最佳方式?

我认为线程池是可行的方法,但我并不积极,因为我没有真正使用它.

任何建议将不胜感激

解决方法:

为简单起见,我每次播放AudioTrack时都只创建一个新线程.

但是,不管它真的没关系.我发现当尝试一次播放多个AudioTrack时,会发出噼里啪啦声.我相信这只是Android系统的一个问题,而不是我的应用程序.

从API级别9(姜饼)开始,我可以将会话ID应用到音频轨道,我相信我可以使用SoundPool播放它,这样可以使多个AudioTracks的播放更加顺畅.

现在,由于有多少用户仍在使用2.2,而且我没有使用姜饼设备,我将把这个项目放到一边,直到以后.

上一篇:DFA 算法的PHP实现


下一篇:Java并发对象池?