A curated list of awesome WebAudio packages and resources.
Inspired by the awesome list thing.
Please raise a Pull-Request to add an awesome WebAudio thing to this list.
Packages
Frameworks
- Tone.js - A framework for making interactive music in the browser.
- Gibberish - A JavaScript DSP library that creates JIT optimized audio callbacks using code generation techniques.
- lissajous - A tool for programmatic audio performance.
- SSSynthesiser.js - A wavetable synthesizer for interactive music and sound effects.
- Bap - A toolkit for making beats and composing sequences, inspired by the classic MPC60/2000.
- WAAX - Build Music Apps for browsers.
Libraries
- reverbGen - A JavaScript library for generating artificial reverb impulse responses.
- TuneJS - A tuning library of microtonal and just intonation scales. Supports over 3,000 historical tunings.
- Beet.js - A sequencer library for creating euclidean rhythms and polyrhythms.
- AudioKeys - A QWERTY keyboard for web audio projects.
- smoothfade - A library for smoothly fading between two AudioNodes.
- web-audio-test-api - A Web Audio test library for CI.
- virtual-audio-graph - Library for declaratively manipulating the Web Audio API.
- javascript-karplus-strong - JavaScript/Web Audio implementation of Karplus-Strong guitar synthesis.
- XSound.js - Full stack library.
- osc-msg - OSC message decoder/encoder with fault tolerance.
- Meyda - Audio feature extraction library including a variety of widely used audio features.
- Pizzicato - A library that aims to simplify the creation and manipulation sounds in the browser.
- Mooog - Tools that simplify working with AudioNodes, inspired by jQuery and mixing tables.
- Wavesurfer.js - Interactive navigable audio visualization using Web Audio and Canvas.
- envelope-generator - Simple ADSR envelope generator for web audio.
- Audiojs - An object that enables you to store, read, and write PCM audio data more easily.
- audio contour - A 5 stage audio envelope generator.
- Tuna - An audio effects library.
- web-audio-recorder-js - A library that records audio input (Web Audio API AudioNode object) and encodes to audio file image (Blob object).
- audiolet - A JavaScript library for real-time audio synthesis and composition from within the browser.
Utilities
- resampler - A utility for resampling audio.
- bpm-detective – Detects the BPM of a song or audio sample.
- web-audio-utils - Commonly needed utility functions for Web Audio API.
MIDI
- midimessage - A simple MIDI Message parser.
- midi-ports - handy library to make it easier to work with attached MIDI devices.
- Midi Logger - This Midi Logger will print all midi input to your browser for debugging.
Apps
- LoopDrop App - MIDI looper, modular synth and sampler app built using Web Audio and Web MIDI APIs.
- X Sound - Multi Sound Application that uses XSound.js.
- Molgav - Musical Step Sequencer for melodies exchange.
- Code Player - An experimental app that makes your codes sing for you.
- mod-synth.io - Create your own modular synthesizer, or emulate different synths.
Resources
Tutorials
- WebAudio School - A series of self-guided workshops to learn WebAudio.
- The Web Audio API: What Is It? - Intro to WebAudio.
- Web Audio Basics - A growing set of light code samples with CodePen links for each.
- Web Audio Perf - Performance of various AudioNodes and strategies for efficient resource usage (from WAC2016).
- Percussion Synthesis Using Web Audio - This tutorial will introduce the basics of web audio programming by writing code to synthesize simple percussion sounds (from WAC2016).
Books
- Web Audio API Book - A book that brings the reader through the basics of WebAudio.
Newsletters
- Web Audio Weekly Newsletter - A weekly review of what's happening in Web Audio.
Community
- Slack - A Slack for discussing Web Audio.
from https://github.com/notthetup/awesome-webaudio