Consider the following code:
The ScriptProcessorNode EventHandler process
is not called. Consider adding processor.connect(audio.destination);
at the end, as shown in the following code:
The EventHandler process
is now called as expected.
The Web Audio API specification states that
audioprocess events are only dispatched if the ScriptProcessorNode has at least one input or one output connected.
Why must the ScriptProcessorNode be connected to the audio destination for its EventHandler to be called?
It's a known bug in Blink (Chrome). If you remove the "webkit" prefix (and you should!), this code works in Firefox.