createjs.Sound.registerSound函数如何解决声音播放限制?

时间:2019-04-08 09:48:37

标签: javascript createjs

我正在使用动画cc和createjs创建内容。 问题在于内容播放的声音不超过29种。

它在PC上可以正常运行,但在某些android设备上只能运行29个。

我们发现这是由于设备和浏览器的限制所致。

现在,我有一个类似问题的提示(https://github.com/CreateJS/SoundJS/issues/40#issuecomment-26431399)。

因此,我将音频标签读入jquery,提取src,并将create.Sound.registerSound函数应用于每个声音文件(第三个参数设置为1)。

那真的播放了超过29种声音。

但是我不知道它是如何工作的。

createjs.Sound.registerSound的第三个参数是可以同时播放的声音数量。

这怎么可能?

我必须使用HTMLAudioPlugin。

HTMLAudioPlugin创建音频标签。

我提取了这些音频标签的src

我已经运行了registerSound函数。

我发现播放的声音超过29种。

$('audio').each(function(){
    var src = this.src.match(/[^\/]+.mp3/)[0]; // extract [[soundFileName]].mp3
    console.log('registerSound', src);
    var id = src.replace('.mp3', '');
    console.log('registerSound', id);
    createjs.Sound.registerSound("sounds/" + src, id, 1);
});

0 个答案:

没有答案