AutoCharterModel β€” Clone Hero Chart Generator

Encoder-decoder Transformer that generates Clone Hero .chart files from raw audio.

Model description

AutoCharterModel takes per-beat audio features (MERT embeddings + Log-Mel spectrogram) and autoregressively generates a tokenised chart for Guitar, Bass and/or Drums at any difficulty level (Easy β†’ Expert+++).

Architecture

Hyperparameter Value
Parameters 8,038,017
d_model 256
Encoder layers 4
Decoder layers 4
Attention heads 8
FFN dim 512
Dropout 0.2
Vocab size 187
Max sequence length 8,192 tokens
Max beats 1,024
MERT input dim 1,024
Log-Mel frames 32 Γ— 128

Input features (per beat)

  • MERT embeddings β€” [N, 1024] from m-a-p/MERT-v1-330M
  • Log-Mel spectrogram β€” [N, 32, 128] (22 050 Hz, 128 mels)
  • BPM, time signature numerator/denominator, beat duration (scalar per beat)
  • Instrument ID β€” guitar=0, bass=1, drums=2
  • Difficulty ID β€” Easy=0, Medium=1, Hard=2, Expert=3, Expert+=4 …

Vocabulary (187 tokens)

PAD=0  BOS=1  EOS=2  UNK=3
BEAT_BOUNDARY=4  MEASURE_START=5
INSTR_GUITAR=6  INSTR_BASS=7  INSTR_DRUMS=8
WAIT(1-48)=9-56
GUITAR_NOTE=57-87  MOD_HOPO=88  MOD_TAP=89  MOD_OPEN=90  MOD_FORCE_STRUM=91
DRUM_NOTE=92-122
SUS(0-59)=123-182
STAR_POWER_ON=183  STAR_POWER_OFF=184  SOLO_ON=185  SOLO_OFF=186

Training

  • Dataset: ~42,600 Clone Hero charts (Guitar, Bass, Drums)
  • Optimiser: AdamW (lr=3e-4, weight decay=0.01, cosine schedule)
  • Best validation loss: 1.0534 at step 145,188

Intended use

Use the auto-charter pipeline to generate charts for new songs:

python src/auto_charter/scripts/gradio_multigen.py \\
    --checkpoint path/to/checkpoint \\
    --port 7860

Or programmatically:

from auto_charter.model.charter_model import AutoCharterModel
model = AutoCharterModel.from_pretrained("thejorseman/CloneCharter")

License

MIT

Downloads last month
47
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support