Повторение короткого звука очень быстро с помощью CreateJS

69
7

Цель

Я пытаюсь создать быстрый тикающий звук в приложении Cordova с помощью Createjs.

Скорость тикания звука изменяется в зависимости от пользовательских настроек. В настоящий момент время является неустойчивым

Настроить

У меня есть mp3 файл с одним тиковым звуком длиной 50 мс.

Целевая скорость повторения может достигать 10 раз в секунду.

Вопрос

Как я могу заставить звук играть равномерно и последовательно с такой скоростью?

Дополнительные технические детали

Создавать.
createjs.Ticker.framerate = 30;

Приветствия за любую помощь

спросил(а) 2017-12-18T10:32:00+03:00 2 года, 9 месяцев назад
1
Решение
81

Это должно быть довольно просто. Я настраивал быструю скрипку, чтобы воспроизводить звук определенное количество раз в секунду. Это кажется довольно надежным, даже при игре со скоростью 60 кадров в секунду.

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;
}

ответил(а) 2017-12-21T19:22:00+03:00 2 года, 9 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема