aubiojs is a real-time audio processing library based on aubio, now including:
- pitch detection
- tempo detection
- fft forward and inverse
(put aubio.js and aubio.wasm on the same folder as your html)
<script src="aubio.js"></script>
<script>
Module().then(function (module) {
var aubioTempo = new module.AubioTempo('default', bufferSize, hopSize, sampleRate)
// ...
var pitch = aubioTempo.do(audioBuffer)
})
</script>
This project uses emscripten to compile aubio, make sure you have installed.
Also feel free to install Ninja for faster builds.
emcmake cmake -Bbuild -H. -GNinja && ninja -Cbuild