HTML5游戏多声道问题

最近在使用HTML5 <AUDIO>标签模拟多声道,结果不甚满意。方法是使用js在内存中生成大量的

<AUDIO>元素并播放,单火狐和谷歌浏览器会很卡,而IE9就十分流畅,CPU、内存消耗也小得多。
例如下面的播放MP3代码:
var audio = document.createElement("audio");
if (audio != null && audio.canPlayType && audio.canPlayType("audio/mpeg"))
{
audio.src = "test.mp3";
audio.play();

}

使用键盘控制,每秒按一次生成一个<AUDIO>元素播放,大概到3、4十个时火狐和谷歌浏览器就页面崩溃了而IE9就没事。打开windows任务管理器查看进程情况,发现火狐只开一个进程,内存使用量不断上升,到一定程度时,页面崩溃了;谷歌浏览器开4个进程,有一个进程的内存使用量不断上升,到一定程度时,另外一个进程有一个触发动作,使内存使用量立刻降低很多,估计是内存清理的动作,但每清理一次,页面就卡一下,很快页面也崩溃了;IE9开2个进程,有一个进程内存使用量不断上升,到一定程度时,使用量自动减少,如此重复,运行流畅,页面不会崩溃;当时玩那个《保护庄园》HTML5小游戏也有同样的问题,只在IE9下音效和声音才能流畅体验。现在升到最新的版本,这个问题火狐和谷歌浏览器都已经解决了!当时测试时火狐的版本是8,谷歌版本14;现在升到最新的版本:火狐版本是12,谷歌版本是18; 使用document.createElement("audio")生成大量的<AUDIO>元素也不会出现原来的情况,火狐和谷歌浏览器都很流畅不会崩溃了,再次试玩《保护庄园》HTML5小游戏,音效和背景音乐都很正常,很流畅。




发布了2 篇原创文章 · 获赞 2 · 访问量 4953
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览