AudioWorklet polyfill

OBXD and DEXED demos run now in stable Chrome, Firefox and Safari. Edge testing is still pending, can someone try it please?

AudioWorklet polyfill source code is available at github. It is loosely based on Houdini’s AnimationWorklet polyfill, repurposed for running AudioWorkletProcessor (and AudioWorkerGlobalScope) in a Web Worker, and AudioWorkerNode in main thread. Audio output is through main thread ScriptProcessorNode (SPN). Worker and SPN are interconnected via SharedArrayBuffer.

SharedArrayBuffer is very cool. Chrome stable seem to work with 256 sample buffer size without audio glitches in OSX 10.12.4. Firefox requires 512 or 1024 to be glitch-free, but that may be related to SPN deprecation, not its SAB implementation.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">