Usage

trail mix accepts mono PCM plus analysis configuration. Use the trailmix facade for one versioned result, or call an analyzer crate when an application only needs tempo, key, or waveform data.

Command line

Run trailmix-cli from the repository root:

cargo run -p trailmix-cli -- song.mp3

Run the DSP-only key estimator by disabling default features:

cargo run -p trailmix-cli --no-default-features -- song.mp3

Decode an audio file

Use trailmix-codecs when trail mix should open and decode the audio file:

let analysis = trailmix_codecs::analyze_path(
    "song.mp3",
    trailmix::AnalysisConfig::default(),
)?;

Analyze PCM

Use the trailmix facade when an application already has mono PCM:

let analysis = trailmix::analyze(audio, trailmix::AnalysisConfig::default());

Choose one analyzer

Call beat-salad for tempo and beats, key-lime for key analysis, or sampler-platter for waveform columns. See Architecture for the input and output details.