Как я могу остановить / приостановить работу узла WebAudio ScriptProcessor?
Я могу генерировать звуки, используя только createJavaScriptNode(...) в моем приложении HTML5. Мне нужно генерировать белый шум на лету. Проблема, с которой я сталкиваюсь, заключается в том, что я не могу остановить / приостановить генерацию, например, установив нулевое значение для процессора или контекста.
Я видел этот пост: как я могу остановить обработчик скриптов Web Audio и очистить буфер? и мне было интересно, есть ли лучшее решение, чем установка нуля для узла усиления.
Должен ли я беспокоиться о том, чтобы оставить процессор включенным, если он мне не нужен? Я не хотел бы иметь "призраков" в моем коде. Было бы здорово, если бы я мог обнулить объекты, которые я больше не буду использовать.
Спасибо.
2 ответа
Вы должны использовать ScriptProcessorNode
, поскольку JavaScriptAudioNode
устарела. Отключение узла от графа должно вызвать onprocess
больше не перезванивать.
На самом деле, вы должны ЯВНО удалить обработчик события onaudioprocess из объекта; иначе он может не получить мусор.