An intro to the Web Audio API by a series of self-guided workshops.
We will primarily focus on using the Web Audio API for music, but the concepts here could be applied to game sound and other creative uses.
This workshop was built for CampJS V!
mmckegg.github.io/web-audio-school
- Handle user code errors and display in editor
Install via npm
Global install:
$ npm install web-audio-school -g
Start the server:
$ web-audio-school
Now navigate to localhost:9966.
Works in latest versions of Chrome, Firefox, Safari.
Internet Explorer doesn't support the Web Audio API yet.
- Play a pitched sawtooth wave
- Play a short sequence of notes
- Add a high-pass filter
- Modulate filter cutoff
- Add an envelope
- Vibrato
- Decode and play an audio file
- Set in and out points
- Looping samples
- Set sample pitch
- Play a sequence of pitched samples
- Tremolo
- Stereo Tremolo
- Echo / Delay
- Overdrive (part 1)
- Overdrive (part 2)
- Ping Pong Delay
- Simple Reverb
- Drop the Bass
- AudioContext
- AudioBuffer
- AudioParam
- AudioDestinationNode
- OscillatorNode
- AudioBufferSourceNode
- GainNode
- WaveShaperNode
- StereoPannerNode
- ConvolverNode
- BiquadFilterNode
- DelayNode
- ChannelSplitterNode
- ChannelMergerNode
- AudioWorker (not yet supported by any browsers)
- ScriptProcessor (deprecated)
- OfflineAudioContext
- DynamicsCompressorNode
- AudioListener
- PannerNode
- AnalyserNode
MIT
This is an OPEN open source project. See CONTRIBUTING.md for details