LOADING…
0%
Complete changelog

Commit

feat: add BPM, key, and loop detection using Essentia.js

Commit details

Commit notes

- Add LoopBpmEstimator and LoopBpmConfidence for loop detection - Enhanced EssentiaResult to include loop analysis: - isLoop: whether audio is a seamless loop - loopBpm: BPM detected specifically for loops - loopConfidence: confidence score for loop detection - bars: number of bars if beat-aligned - beatAligned: whether duration aligns with beat grid - Update hybrid-analyzer to use Essentia for all three: - BPM: Uses RhythmExtractor2013 or LoopBpmEstimator - Key: Uses KeyExtractor with EDMA/Krumhansl/Temperley profiles - Loop: Uses LoopBpmConfidence for loop quality assessment - Add loopBars, suggestedTrimMs, beatPositions to AudioFeatures interface - Update type declarations for essentia.js with new algorithms

Co-authored-by: armin.naimi <[email redacted]>

Files changed
4
Lines added
+296
Lines removed
−72
This page is a permanent record of commit a1cd471a.