微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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,而且我没有使用姜饼设备,我将把这个项目放到一边,直到以后.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐