Engine & source

rootbeet uses Essentia.js 0.1.3 by the Music Technology Group, Universitat Pompeu Fabra. The unchanged version 6.1 key detector analyzes a phase-safe mono signal at 44,100 Hz with a 4,096-sample frame/hop, 12-bin pitch profile, 25–3,500 Hz spectral range, and the default bgate profile. Krumhansl and edma profiles provide cross-checks; their votes do not override the primary profile.

For recordings longer than three minutes, three distributed 60-second windows are analyzed separately. Near-canceling stereo channels use the stronger channel, with a warning. A custom spectral analysis provides supporting notes and sparse-note warnings.

Each uploaded file is analyzed automatically. You can play the audio and export a JSON result with the analyzed file duration and engine version. A competing independent note-profile result now adds an uncertainty warning even when the three primary profile checks agree. Primary key ranking is unchanged. Relative keys are shown as comparisons, not additional detected answers. No proven accuracy increase is claimed for this release.

Version 6.3 keeps key scoring unchanged and improves independent BPM estimation. It combines Essentia RhythmExtractor2013 and PercivalBpmEstimator with low-, mid-, and high-frequency onset periodicity. A small linear ranker was fitted on 95 development recordings; a separate 48-recording validation set was not used to fit weights. Reference tempos came from filename labels where available and Tunebat Standard otherwise. Estimates use a whole/half-BPM grid; half/double-time comparisons remain explicit. Tempo still needs rhythmic evidence and at least eight seconds, and changing tempo or beat interpretation can cause errors. These dataset results are not a general accuracy guarantee.

MP3 files use mpg123-decoder 1.0.3 (MIT wrapper, mpg123 under LGPL); WAV and other supported formats use Web Audio decoding. A windowed-sinc converter preserves the requested analysis rate. Audio stays on your device. Key estimates and profile agreement are not calibrated accuracy probabilities. Relative major/minor alternatives may share the same scale notes. This is not Tunebat’s proprietary configuration or MusicalKeyCNN model.

This application is available under the GNU Affero General Public License, version 3 or later. License · Download application source · Essentia.js upstream source · Essentia upstream source and build instructions

Decoder: wrapper source · mpg123 source · mpg123 license

Back to the key finder