About the source code
Apptakes care of the UI
AudioFileis a simple wrapper around
Filethat provides utility functions such as
BPMWorkertakes audio data and computes the BPM using
How it works
- The main app (UI) is in
- When a file is selected, a new
Appcreates a web worker:
BPMWorker.jsand sends it the audio data.
BPMWorkercuts the audio data into 512-sample frames, and for each of them, applies FFT and sends it to an instance of
- When this is complete, the web worker sends the bpm back to
App, which then updates the UI.
This code is under GPL-License.