/midi-chords-and-scales-pack

Generates MIDI chords and scales, which can be downloaded as a free MIDI pack.

Primary LanguageTypeScriptMIT LicenseMIT

MIDI Chords and Scales Pack

Description

This projects generates (~400) MIDI chords and (~300) MIDI scales, which can be downloaded as a free MIDI pack.

The goal is to have the MIDI files for quickly building a chord track, e.g. by searching for the chord in the DAW clip browser. When placed in the DAW the MIDI clips have a readable chord title. A MIDI scale could, e.g. help with quantizing the notes.

A non-goal (see background) is to generate chord progressions. If you are looking for this, consider instead:

If you are missing any chords or have other feedback, feel free to reach out via KVR Thread or GitHub issues.

Download

Downloads can be found in the releases page.

The can be multiple variants, depending on your needs. Currently there are:

  • chords (recommended)
    • Contains a MIDI track title, which some DAWs (e.g. Ableton Live) display in the imported Clip
    • The chord title may differ from the filename, as it can be shorter and case sensitive (which does not work well for the file names)
  • chords-without-title:
    • Contains no MIDI track title
    • For a DAW (e.g. Reaper) that displays both MIDI title AND filename, this might work better.
  • scales-full-range: Adds the scale notes from Octave 0 to 8 (recommended)
  • scales: Adds scale note only on Octave 4, like chords
  • scales-without-title

Tips and Tricks

Bitwig

Create a chord and / or a scale track and add the midi files there, e.g. by searching for them in Browser - Clips.

Use a Note Grid device to quantize notes to the chord or scale track.

Show the scale or chord track by using "layered editing" mode and locking the chord / scale track. See also video by Mattias Holmgren: Awesome Piano Roll Scale Tricks // Scale Guide in Bitwig Studio.

Installation

This is only necessary if you want to customize and build your own chord pack, or contribute.

Prerequisites

# Install Node.js dependencies
npm install

# Generate Chords -> will be written to ./dist/
npm start

The generator script can be found in src/generateChords.ts.

Background

Don't get scammed by paying money for chord packs :) There are free and better alternatives out there and this project should add one more that fits my own needs.

I explicitly did not want to add chord progressions because I believe that this is usually done better by understanding a bit of music theory (e.g. Circle of Fifths) or using music theory related tools. By being forced to explicitly construct chord progressions from individual chords, much more interesting things ("happy accidents") can happen.

Attribution