Bindings for aubio
Node.js bindings for aubio, a library for audio and music analysis, synthesis, and effects. aubio features include pitch tracking, onset detectin, beat tracking (tempo), phase vocoder, biquad and IIR filters.
$ npm install aubio
Or add it to the
"dependencies" section of your package.json file.
node-aubio uses ffi to load aubio's dynamic library and use directly the aubio functions as well as ref to access C pointers efficiently. To find out more about ffi and ref, read the Node FFI Tutorial.
node-aubio simply adding a require statement:
var aubio = require('aubio');
examples contains different examples.
source_reader.js will open and read a sound file, counting the number of
$ node node-aubio/examples/source_reader.js mediafile.wav
mfcc.js will open a sound file and extract the MFCC coefficients from a file.
$ node node-aubio/examples/mfcc.js mediafile.wav
filter_source.js will process a sound and filter it using an A-weighting
filter. The program takes two arguments: an input media file, and an output
file to write to:
$ node node-aubio/examples/filter_source.js input.wav output.wav
node-aubio is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.