Skip to content

Latest commit

 

History

History
89 lines (57 loc) · 2.11 KB

File metadata and controls

89 lines (57 loc) · 2.11 KB

drumscript

Write drum patterns without VST lock-in.

Disclaimer: This DSL idea is released under CC0. Anyone is free to use, modify, or implement it without restriction.

Why drumscript?

Piano rolls are designed around pitch, not percussion.

In most drum VSTs, instruments such as kick, snare, and hi-hat are mapped to arbitrary MIDI notes (e.g. C2, D2, F2). These mappings are not standardized and vary between VSTs.

As a result, drum patterns written in a piano roll are often tied to a specific VST and are not portable. Musical intent becomes mixed with implementation details.

drumscript separates these concerns.

It treats drum patterns as notation first, and mapping as a backend detail. The same pattern can then be rendered as sheet music or compiled into VST-specific MIDI.

System Requirements

Usage

$ drumscript drum-pattern.txt

This generates:

  • drum-pattern.pdf (sheet music)
  • drum-pattern.ly (LilyPond source)
  • drum-pattern.mid (MIDI)

The generated MIDI file can be imported into any DAW and used with your preferred drum VST.

Drum Pattern Notation

Basic Symbols

  • bd (bass drum)
  • sn (snare)
  • hh (hi-hat)
  • tomh
  • tomml
  • toml
  • tomfl

The naming loosely follows Weinberg drum notation.

Structures

  • hh4
  • sn4
  • hh8
  • r4 (rest)

Example

hh8 hh8 hh8 hh8 hh8 hh8 hh8 hh8
bd4     sn4     bd4     sn4
---
bd c2
sn d2
hh f2

The pattern is written using instrument symbols (bd, sn, hh) and durations.

The mapping section (---) defines how instruments map to MIDI notes.

Command-Line Options

  • -v, --version — Show version information and exit
  • -h, --help — Show help message and exit
  • -o, --output — Specify output file name (without extension)

Contributing

Contributions are welcome.

Packaging the program for platforms such as Homebrew or Chocolatey would be especially helpful.

License

The program is licensed under MIT.

You retain full rights to your drum patterns and any generated artifacts.