使用 CreateJS 快速重复短音

Repeating a short sound very fast with CreateJS

目标

我正在尝试使用 Createjs 在 Cordova 应用程序中创建快速滴答声。

滴答声速根据用户设置而变化。目前时间不稳定

设置

我有一个 50 毫秒长的单一滴答声的 mp3 音频文件。

重复的目标速度可以达到每秒 10 次。

问题

我怎样才能让声音以那个速度均匀一致地播放?

更多技术细节

createjs.Ticker.timingMode = createjs.Ticker.RAF_SYNCHED;
createjs.Ticker.framerate = 30;

欢迎任何帮助

这应该非常简单。我设置了一个快速 fiddle 以每秒播放特定次数的声音。看起来相当可靠,即使以 60fps 播放时也是如此。

https://jsfiddle.net/lannymcnie/ghjejvq9/

方法是只检查每个 Ticker.tick 是否自上次滴答声以来已经过去了一段时间。持续时间由 1000/ticksPerSecond.

导出
// Every tick
var d = new Date().getTime();
if (d > lastTick + 1000/ticksPerSecond) {
  createjs.Sound.play("tick");
  lastTick = d;
}