Using ABC Notation for Band Backing (Offline)

This guide outlines a practical, offline‑ready workflow for using ABC notation to generate drum and bass backing tracks for live band performance. It focuses on the components you need and how to get them working together efficiently.


1. Required Components

Tip: All components work fully offline once installed.
Draw The Dots does not work offline.

2. Basic File Structure

Use one ABC file per song, with at least two voices:

Example Layout

Strange ABC Notation Percussion Trick We have to write drum parts this way because ABC uses MIDI note numbers, not real drum notation.
X:1
T:Example Backing
M:4/4
L:1/16
Q:1/4=170
K:C

V:DRUMS clef=perc
%%MIDI channel 10
[V:DRUMS] C,,8 D,,8 | C,,8 D,,8 |

V:BASS
%%MIDI channel 1
[V:BASS] C,4 E,4 G,4 E,4 | C,4 E,4 G,4 E,4 |
        
Note: Drum note letters (e.g., C,,) trigger different kit pieces depending on your drum sound source.

3. Workflow Options

3.1 EasyABC Workflow

  1. Open the ABC file in EasyABC.
  2. Check playback using its built‑in MIDI output.
  3. Export to MIDI when ready.
  4. Play the MIDI directly or load it into a DAW.

3.2 Text Editor + abc2midi

  1. Edit the ABC file in any text editor.
  2. Convert using: abc2midi song.abc -o song.mid
  3. Load the MIDI into your DAW or hardware module.

4. Live Setup

Setlist Tip: Number your files (e.g., 01_Song.abc) for fast navigation on stage.

5. Rehearsal Checklist


6. Quick Edits

Once your workflow is set, updating songs becomes a matter of editing a few lines of text and regenerating the MIDI.

Other Options

  1. MIDI - Real Band - Part of Band in the Box (2021)

Appendix: Comparison of Backing‑Track Tools

Tool / Workflow Needs Internet Exports to MP3 Works on Smartphone Requires Smartphone Accurate Playback Engine Notes
ABC + abcMIDI + DAW No Yes No No Yes Fully offline; text‑based; highly editable
EasyABC No No (MIDI only) No No Yes Good editor; uses abc2midi for playback
Draw The Dots Yes No Yes No No Excellent notation renderer; playback is simplified and not fully accurate
Band‑in‑a‑Box (2021) No Yes No No Yes Large library; auto‑arranger; commercial
RealBand (BIAB companion) No Yes No No Yes DAW‑style; integrates with BIAB tracks
Smartphone Drum Apps Varies Varies Yes Sometimes Varies Often limited; not ideal for full songs

Appendix: Taming General MIDI for Reliable Backing Tracks

MIDI is not audio. It is a set of instructions: which notes to play, when, how loud, and which instrument number to use. The actual sound comes from your synth, sound module, or software instrument. This appendix explains how to make those sounds predictable and stop your device from turning pianos into squeaky onions.

Key idea: ABC writes the instructions. Your synth provides the sound. General MIDI (GM) is the agreement between them about which instrument numbers mean what.

1. What General MIDI (GM) Actually Does

Program GM Instrument Typical Use
1 Acoustic Grand Piano Default piano voice
33 Acoustic Bass Jazz / upright bass
34 Electric Bass (finger) Pop / rock bass lines
49 String Ensemble 1 Pad-like strings
Important: GM standardises which instrument number means what, but not the sound quality. A cheap synth and a high-end module will both call Program 1 "Piano", but they will not sound alike.

2. Why Devices Sometimes Play the Wrong Sound

The device is not guessing or being clever. It is obediently following whatever bank and program numbers it receives.

3. Forcing a Safe, Predictable Piano in ABC

You can explicitly tell your synth: "Use the default GM piano in the default bank." Add this inside the relevant voice in your ABC file:

V:PIANO
%%MIDI channel 1
%%MIDI control 0 0      % Bank Select MSB = 0
%%MIDI control 32 0     % Bank Select LSB = 0
%%MIDI program 1        % Acoustic Grand Piano (GM)
        

For a bass voice using the standard GM electric bass:

V:BASS
%%MIDI channel 2
%%MIDI control 0 0
%%MIDI control 32 0
%%MIDI program 34       % Electric Bass (finger)
        
Tip: Put these %%MIDI lines in your template so every song starts from a known, safe state. This keeps your synth from wandering into strange banks or user patches.

4. Keeping Drums Consistent

General MIDI reserves channel 10 for drums. In ABC:

V:DRUMS clef=perc
%%MIDI channel 10
        

Then use the standard drum notes (e.g., 36 = kick, 38 = snare, 42 = closed hat). Your synth will use its default GM drum kit, which is usually stable and predictable.

5. The “Renaissance Palace” Setup

Once your synth is in GM mode and your ABC files explicitly set bank and program numbers, the "magic box" stops being a trickster. It becomes a reliable, obedient backing band, leaving you free to be a musician again.