MusicBrain

Active Rust

Concept

A music-information-retrieval pipeline that takes an audio file and produces both a low-level FeatureSet (rhythm, harmony, timbre, dynamics) and a high-level SemanticResult (genre-specific interpretation — what the piece is doing, in human-readable terms).

Source separation runs first: HT-Demucs splits the input into stems so every downstream analyser sees a clean isolated track rather than fighting source overlap. Each stem is then analysed independently and the results are recombined into a single time-aligned feature surface.


Architecture

flowchart TD IN["Audio Input
file or stream"] SEP["HT-Demucs Separation
drums · bass · vocals · other"] A1["Per-Stem Analysis
spectral · rhythmic · harmonic"] FS["FeatureSet
frame-level structured features"] SR["SemanticResult
genre-specific expert analysis"] IN --> SEP SEP --> A1 A1 --> FS FS --> SR

The FeatureSet is the data contract between mid-level (mechanical) and high-level (interpretive) analysis. Genre experts read the FeatureSet, not the audio, so new genre modules can be added without re-running source separation.


← Back to Data & Analytics