由于当前使用的一套openAL的声音播放代码在播放音效的时候略显卡顿,于是今天一直在研究openAL,终于在下午,将所有声音都cache出来后,卡顿问题彻底解决。
首先open AL的处理方式类似于open GL。
入门请移步这里
http://wenku.baIDu.com/vIEw/f4db9c270722192e4536f6c8.HTML
http://apps.hi.baIDu.com/share/detail/41860487
由于我一开始使用的ogg方式为音频压缩格式,且压缩比率较高,所以即时解码,对于ios设备来说略显卡顿,iPad2如果在单线程中处理则会出现卡顿,由于iPad2为双核处理器,所以多线程会有着不俗的表现,所以改用多线程,卡顿完全解决,但由于iPad1 cpu速度较慢,且又不是双核,多线程会导致在播放声音的时候略有延迟,很影响游戏效果,于是经过分析我决定采用在loading过程中全部cache的方式解决该问题。缺点:loading时间加长,内存增加。优点:毫无卡顿出现。
另外一开始我曾经想改用wav的方式来播音效,因为wav相对于ogg及mp3这种压缩比率较高的音频文件,解码时占用cpu较小,但后来经过上步处理后,发现问题完全解决,于是放弃wav方式。
总体来说,open AL是一个不错的跨平台的声音解决方案,推荐。
总结以上是内存溢出为你收集整理的openAL跨平台开发,解码方式 wav & ogg全部内容,希望文章能够帮你解决openAL跨平台开发,解码方式 wav & ogg所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)