Search code examples
javascripthtmlaudioweb-audio-api

How to get access to the output buffer with the Web Audio API?


I'd like to access the audio data in the output/destination buffer. To be specific I would like to save the data to a file. I would also like to add custom effects as AudioNode's.

How can I achieve this with the Web Audio API? I don't see an AudioDestinationBuffer interface or a way to add a custom AudioNode in the specs.


Solution

  • You'll have to add one of these http://www.w3.org/TR/webaudio/#JavaScriptAudioNode right before connecting to the destination.

    This will give you access to the raw audio data, and any processing made by effect nodes etc. will already be applied. Just make sure this is the very last node before the destination.

    Here's a little something on how you use the JavaScriptAudioNode http://www.html5rocks.com/en/tutorials/webaudio/games/#toc-clip-detect, which I hope will illustrate how to access the audio data.