Convert chord progressions from midi files to Plugin Boutique's Scaler 2 sets.
This little tool iterates through all midi files from a given folder and exports the chord progressions in XML files to easily create Scaler 2 chord packs.
Considerations:
- If a midi file has multiple tracks, only the first track with notes will be used.
- Tested only with midi files that have no overlaps (further testing and pull requests are welcome!).
Go to the examples
folder to see a converted midi file like this one:
Converted chord set loaded in Scaler 2
- Download the latest release for your platform (Windows or MacOS) and unzip it.
- Group your .mid or .midi files in folders and add them to the midis folder. Each folder will be converted to a set (a demo set with a single chord progression is provided for a quick demo).
- Continue depending on your OS:
-
Open a Command Prompt (cmd.exe) and navigate to the unzipped folder, for example:
cd C:/Users/YOUR_USER/Downloads/midi-to-scaler-chord-sets_1.0.0_windows
-
Run the tool by typing in the cmd:
midi-to-scaler-chord-sets.exe
-
The converted files should be in the sets folder, copy each folder set to the custom sets folder and start using them: C:/Users/Public/Documents/Plugin Boutique/Scaler2/Sets
-
Open the Terminal and navigate to the unzipped folder, for example:
cd /Users/YOUR_USER/Downloads/midi-to-scaler-chord-sets_1.0.0_macos
-
Grant execute permission to the tool by typing in the terminal:
chmod +x midi-to-scaler-chord-sets
-
Run the tool by typing in the terminal:
./midi-to-scaler-chord-sets
-
The converted files should be in the sets folder, copy each folder set to the custom sets folder and start using them: /Users/Shared/Plugin Boutique/Scaler2/Sets
Be sure to have Node.js installed, then:
- Download or clone the repo.
- Run
npm install
in the root folder to install dependencies. - Group your .mid or .midi files in folders and add them to the midis folder. Each folder will be converted to a set.
- Run
npm run convert
to run the conversion. - The converted files should be in the sets folder, copy each folder set to the custom sets folder and start using them:
- Windows path: C:/Users/Public/Documents/Plugin Boutique/Scaler2/Sets
- MacOS path: /Users/Shared/Plugin Boutique/Scaler2/Sets
The input, output and threshold for chord detection can be changed in: config.json
- threshold: time interval in MIDI ticks to determine the maximum amount of time between note-on and note-off events for the events to be considered part of the same chord.
- inFolderPath: folder used to read the midi files, it must contain subfolders with the midi files for each set. The name of each subfolder will name the set.
- outFolderPath: folder used to save the converted sets.