Upload README.md with huggingface_hub
Browse files
README.md
CHANGED
|
@@ -1,16 +1,48 @@
|
|
| 1 |
---
|
| 2 |
license: mit
|
|
|
|
| 3 |
tags:
|
| 4 |
-
-
|
|
|
|
| 5 |
- chart-generation
|
| 6 |
-
- model_hub_mixin
|
| 7 |
- music
|
| 8 |
-
-
|
| 9 |
-
|
| 10 |
-
- taiko
|
| 11 |
---
|
| 12 |
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
-
|
| 16 |
-
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
---
|
| 2 |
license: mit
|
| 3 |
+
library_name: softchart
|
| 4 |
tags:
|
| 5 |
+
- taiko
|
| 6 |
+
- rhythm-game
|
| 7 |
- chart-generation
|
|
|
|
| 8 |
- music
|
| 9 |
+
- audio-to-symbolic
|
| 10 |
+
pipeline_tag: audio-to-audio
|
|
|
|
| 11 |
---
|
| 12 |
|
| 13 |
+
# SoftChart Generator
|
| 14 |
+
|
| 15 |
+
An 8.1M-parameter encoder–decoder Transformer that generates **Taiko no Tatsujin**
|
| 16 |
+
charts from music. Given a log-mel spectrogram and conditions (difficulty, density,
|
| 17 |
+
and an optional song-level plan), it autoregressively produces a sequence of timed
|
| 18 |
+
chart events. Part of the [SoftChart](https://github.com/JacobLinCool/SoftChart) system.
|
| 19 |
+
|
| 20 |
+
This checkpoint (`pr12`) supports: **course/level/density conditioning, prev-window
|
| 21 |
+
context, easy⊂hard sibling hints, style codes, and song-level plan control**
|
| 22 |
+
(density envelope, breathing gaps, climax placement). Perfect difficulty
|
| 23 |
+
monotonicity (Spearman 1.0) and controllable "same song → multiple valid charts".
|
| 24 |
+
|
| 25 |
+
## Usage
|
| 26 |
+
|
| 27 |
+
```python
|
| 28 |
+
from softchart.hf import SoftChartGenerator
|
| 29 |
+
from softchart.generate import load_hf, generate_song
|
| 30 |
+
|
| 31 |
+
model = load_hf("JacobLinCool/softchart-generator", device="cuda")
|
| 32 |
+
# mel: (128, T) log-mel at 22050 Hz, hop 256
|
| 33 |
+
chart = generate_song(model, mel, course="oni", level=9, density_bucket=7, greedy=True)
|
| 34 |
+
# chart["hits"] = [{"t": seconds, "type": "don"/"ka"/...}, ...]
|
| 35 |
+
```
|
| 36 |
+
|
| 37 |
+
Full audio→chart→TJA pipeline: [`scripts/infer.py`](https://github.com/JacobLinCool/SoftChart)
|
| 38 |
+
or the [demo Space](https://huggingface.co/spaces/JacobLinCool/softchart).
|
| 39 |
+
|
| 40 |
+
## Companion models
|
| 41 |
+
|
| 42 |
+
- [softchart-planner](https://huggingface.co/JacobLinCool/softchart-planner) — audio → song-level plan
|
| 43 |
+
- [softchart-beat](https://huggingface.co/JacobLinCool/softchart-beat) — beat/downbeat for barline anchoring
|
| 44 |
+
|
| 45 |
+
## License & data note
|
| 46 |
+
|
| 47 |
+
Code and weights are **MIT**. Trained on charts derived from a commercial game;
|
| 48 |
+
released for research and personal use.
|