Rust library

Map Analyzer

Inspect stream and jump patterns in a local .osu file.

The published crate parses local beatmaps with rosu-map and exposes separate stream and jump analyzers. Version 0.2.9 is a library package; it does not publish a standalone command-line program.

Library usage
use std::path::Path;
use osu_map_analyzer::{analyze, rosu_map};

let path = Path::new("map.osu");
let map = rosu_map::from_path::<rosu_map::Beatmap>(path).unwrap();
let mut stream = analyze::Stream::new(map.clone());
let streams = stream.analyze();
let mut jump = analyze::Jump::new(map);
let jumps = jump.analyze();

Output

Stream and jump analysis

Version 0.2.9 returns stream and jump analysis as Rust values. Reports and dataset tools are still in development.

Stream analysis

Confidence, stream counts and lengths, density, and BPM consistency.

Jump analysis

Confidence, jump counts and lengths, density, and BPM consistency.

Install

Install the library

The published package is Apache-2.0 licensed and depends on rosu-map. It does not contain a binary target, socargo install is not an installation path for this release.

Open on crates.io
$ cargo add [email protected]toml osu-map-analyzer = "0.2.9"