Как перезагрузить/сбросить Tone.js, когда он меня расстраивает?

У меня есть следующая интерактивная музыкальная визуализация:

https://aaronwatters.github.io/visualization_prototypes/player_piano/

и я заметил, что графический цикл событий и цикл событий Tone.js, кажется, мешают друг другу, когда музыка быстрая с большим количеством нот. Кажется, это вызывает царапающие звуки или постоянные неправильные ноты событий в Tone.js. Я могу воспроизвести это довольно часто, используя «Почему любовники разбивают друг другу сердца» в демонстрации, ссылка на которую приведена выше.

Эффект становится настолько плохим, что кажется, будто Tone.js иногда тихо сдается и отказывается издавать какой-либо звук (без сообщений в консоли Javascript). В этом случае я видел, как Tone.js отказывался восстанавливаться после того, как я останавливал музыку и пытался загрузить другой MIDI-файл.

Вопрос: Есть ли способ заставить Tone.js «перезагрузить» и сбросить его до чистого состояния так же, как если бы я перезагрузил страницу — из Javascript, конечно, без перезагрузки страницы?

Также любые комментарии по предотвращению звуковых аномалий в Tone.js. Может быть, мне нужно убедиться, что цикл графических событий не коррелирует с циклом событий Tone.js?

0 ответов

Другие вопросы по тегам