有没有人有一个如何在不使用 preloaderJS 的情况下使用 SoundJS 的示例。
我很遗憾地看到在Git hub上他们只有使用我不需要的预加载器的示例。
我正在尝试以下操作,但声音实例未播放:
var instance = createjs.SoundJS.play("/sounds/mysound.mp3"); //instance.playState 的值导致“playFailed”
任何人都知道如何获得更具体的错误信息?
有没有人有一个如何在不使用 preloaderJS 的情况下使用 SoundJS 的示例。
我很遗憾地看到在Git hub上他们只有使用我不需要的预加载器的示例。
我正在尝试以下操作,但声音实例未播放:
var instance = createjs.SoundJS.play("/sounds/mysound.mp3"); //instance.playState 的值导致“playFailed”
任何人都知道如何获得更具体的错误信息?
我知道这是一个非常古老的帖子,但是:
如果你没有使用 PreloaderJS,你需要先通过 registerSound() 注册声音:
createjs.Sound.registerSound("/sounds/mysound.mp3", "mysoundID");
然后,当你想触发它时:
createjs.Sound.play("mysoundID");
此外,您可能希望创建文件的 ogg 版本(“|”作为分隔符)并在同一 ID 下注册两者:
createjs.Sound.registerSound("/sounds/mysound.mp3|/sounds/mysound.ogg", "mysoundID");
*SoundJS 将根据当前浏览器确定调用哪一个。
欲了解更多信息: http ://www.createjs.com/Docs/SoundJS/classes/Sound.html
是的,从死里复活,因为这个问题本身仍然是正确的(哈!双关语)。
从 SoundJS 0.6.1 开始(来自http://createjs.com/docs/soundjs/classes/Sound.html的文档):
"注册和预加载 在播放声音之前,必须先注册它。您可以使用 registerSound 执行此操作,或使用 registerSounds 注册多个声音。如果您在尝试使用 play 播放之前未注册声音,或者使用创建它createInstance,音源会自动注册,但是播放会失败,因为源还没有准备好。如果你使用PreloadJS,在预加载声音时会为你处理注册。建议在内部使用注册函数或预加载声音在外部使用 PreloadJS,以便在您想要使用它们时准备好它们。”
在内存有限的移动设备(例如 512MB iPad Mini)上开发声音丰富的应用程序时,这是相当成问题的。
这就是其他声音库(如 Howler)成为不错选择的地方。