HTML5 Воспроизведение аудио в произвольном порядке
Я использую звуковые эффекты в аудио HTML5, но через некоторое время он просто перестает воспроизводить любой звук. Тип файла правильный, потому что он начинается нормально, но затем, кажется, сдаётся.
var sound = new Audio(url);
function play() {
sound.play();
}
Есть ли лучший способ сделать это, чтобы он последовательно воспроизводил звук?
Вот ссылка на мою реализацию. Легко воспроизводить, нажимая пробел много, пока он в конце концов не сдастся (также снимайте свет для добавления звуков). http://craftyjs.com/elevatoraction/
Это происходит для меня в последней версии Chrome (8.0)
Изменить: Я сделал, как предложил Гаурав, и играл только один и тот же экземпляр каждого звукового файла, но такие же проблемы присутствуют. Он будет произвольно прекращать игру.
Изменить 2: Я только заметил, что всякий раз, когда я пытаюсь воспроизвести звук, networkState
всегда 1
, который согласно это означает, что он не полностью загружен. Это странно, поскольку он по-прежнему играет иногда, и даже когда он играет networkState
, всегда 1
Ответы
Ответ 1
Не создавайте новый аудио-объект каждый раз, когда хотите воспроизвести звук, повторно используйте один и тот же ресурс.
var sound1 = new Audio(url);
function playSound1() {
sound1.play();
}
Я думаю, что это связано с ошибкой http://code.google.com/p/chromium/issues/detail?id=57070