
# chords2midi
Given it a chord progression, get a MIDI file!
Take your MIDI file, drop it into your favorite DAW and [make a beat!](https://clyp.it/drltahki) Or [two](https://clyp.it/f0g1ko5b).
## Installation
$ pip install chords2midi
## Usage
$ c2m I V vi IV --key C
$ ls
C-I-V-vi-IV.mid
More usage:
$ c2m I V vi iii IV I IV V --key D --bpm 128 --octave 5 --duration .25 # Pachabel's Canon in D, Staccato EDM Version
$ ls
D-I-V-vi-iii-IV-I-IV-V-128.mid
You can also use named chords directly:
$ c2m Am Em F G --bpm 80
$ ls
Am-Em-F-G-80.mid
You can place rests with `X`:
$ c2m I X V X vi X IV
Further options:
```
usage: c2m.py [-h] [-b BPM] [-t OCTAVE] [-i INPUT] [-k KEY] [-n NOTES]
[-d DURATION] [-H HUMANIZE] [-o OUTPUT] [-v]
[U [U ...]]
chords2midi - Create MIDI files from written chord progressions.
positional arguments:
U Please supply chord progression!. See --help for more
options.
optional arguments:
-h, --help show this help message and exit
-b BPM, --bpm BPM Set the BPM (default 160)
-t OCTAVE, --octave OCTAVE
Set the octave (default 4)
-i INPUT, --input INPUT
Read from an input file.
-k KEY, --key KEY Set the key (default C)
-n NOTES, --notes NOTES
Notes in each chord (default all)
-d DURATION, --duration DURATION
Set the chord duraction (default 1)
-H HUMANIZE, --humanize HUMANIZE
Set the amount to "humanize" (strum) a chord, in ticks
- try .11 (default 0.0)
-o OUTPUT, --output OUTPUT
Set the output file path. Default is the current key
and progression in the current location.
-v, --version Display the current version of chords2midi
```
## Common Progressions
The classic:
$ c2m I V vi IV
50's progression:
$ c2m I vi IV V
12 bar blues:
$ c2m I I I I IV IV I I V V I I
or:
$ c2m I I I I IV IV I I V VI I V
Smoke on the water:
$ c2m ii IV V
Wild thing:
$ c2m I IV V IV
Flamenco:
$ c2m vi V VI V
Gently weeps:
$ c2m ii I V6 VIIb VI
Sad:
$ c2m vi IV I V
And [lots more](https://www.hooktheory.com/theorytab/common-chord-progressions)!
## Playback
If you're on OSX:
$ brew install timidity
$ timidity your-midi.mid
## Related
* [UltimateTemplate](https://github.com/Miserlou/UltimateTemplate) - Production-ready Ableton Live project templates.
* [ADGMaker](https://github.com/Miserlou/ADGMaker) - Make Ableton ADG instruments from Free Philharmonia Orchestra samples
Rich Jones, 2018. MIT.
# chords2midi
Given it a chord progression, get a MIDI file!
Take your MIDI file, drop it into your favorite DAW and [make a beat!](https://clyp.it/drltahki) Or [two](https://clyp.it/f0g1ko5b).
## Installation
$ pip install chords2midi
## Usage
$ c2m I V vi IV --key C
$ ls
C-I-V-vi-IV.mid
More usage:
$ c2m I V vi iii IV I IV V --key D --bpm 128 --octave 5 --duration .25 # Pachabel's Canon in D, Staccato EDM Version
$ ls
D-I-V-vi-iii-IV-I-IV-V-128.mid
You can also use named chords directly:
$ c2m Am Em F G --bpm 80
$ ls
Am-Em-F-G-80.mid
You can place rests with `X`:
$ c2m I X V X vi X IV
Further options:
```
usage: c2m.py [-h] [-b BPM] [-t OCTAVE] [-i INPUT] [-k KEY] [-n NOTES]
[-d DURATION] [-H HUMANIZE] [-o OUTPUT] [-v]
[U [U ...]]
chords2midi - Create MIDI files from written chord progressions.
positional arguments:
U Please supply chord progression!. See --help for more
options.
optional arguments:
-h, --help show this help message and exit
-b BPM, --bpm BPM Set the BPM (default 160)
-t OCTAVE, --octave OCTAVE
Set the octave (default 4)
-i INPUT, --input INPUT
Read from an input file.
-k KEY, --key KEY Set the key (default C)
-n NOTES, --notes NOTES
Notes in each chord (default all)
-d DURATION, --duration DURATION
Set the chord duraction (default 1)
-H HUMANIZE, --humanize HUMANIZE
Set the amount to "humanize" (strum) a chord, in ticks
- try .11 (default 0.0)
-o OUTPUT, --output OUTPUT
Set the output file path. Default is the current key
and progression in the current location.
-v, --version Display the current version of chords2midi
```
## Common Progressions
The classic:
$ c2m I V vi IV
50's progression:
$ c2m I vi IV V
12 bar blues:
$ c2m I I I I IV IV I I V V I I
or:
$ c2m I I I I IV IV I I V VI I V
Smoke on the water:
$ c2m ii IV V
Wild thing:
$ c2m I IV V IV
Flamenco:
$ c2m vi V VI V
Gently weeps:
$ c2m ii I V6 VIIb VI
Sad:
$ c2m vi IV I V
And [lots more](https://www.hooktheory.com/theorytab/common-chord-progressions)!
## Playback
If you're on OSX:
$ brew install timidity
$ timidity your-midi.mid
## Related
* [UltimateTemplate](https://github.com/Miserlou/UltimateTemplate) - Production-ready Ableton Live project templates.
* [ADGMaker](https://github.com/Miserlou/ADGMaker) - Make Ableton ADG instruments from Free Philharmonia Orchestra samples
Rich Jones, 2018. MIT.
Release files for chords2midi 0.7.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| chords2midi-0.7.0.tar.gz | 4.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| chords2midi-0.7.0-py2-none-any.whl | Python 2 | none | any | Details |
Total release size: 9.5 kB
Release files / chords2midi-0.7.0.tar.gz
| Download URL | chords2midi-0.7.0.tar.gz |
|---|---|
| Size | 4.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a5937a5ac3faddb16948298704fc9590b50f07c5c552b104c2a677dbf57dc966
|
|
BLAKE2b-256 checksum How to use checksums |
bdec73f2f847cab52b6eed12be1d4ca068e04454bcbbd076210b4f5f90234526
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
Python-urllib/2.7
|
Release files / chords2midi-0.7.0-py2-none-any.whl
| Download URL | chords2midi-0.7.0-py2-none-any.whl |
|---|---|
| Size | 4.9 kB |
| Tags | Python 2 |
|
SHA-256 checksum How to use checksums |
19f69b26f9b5bed554e24bd8d5cf773adbb298aafd683b6eded573f434593c2d
|
|
BLAKE2b-256 checksum How to use checksums |
c64f51396dbbfc874e49a3792b858eef2bc3555736c21903836ad561afd67e6e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
Python-urllib/2.7
|