Skip to main content

A simple, easy to use algorithmic composition MIDI creator.

Project description


Documentation Status

A simple, easy to use algorithmic composition MIDI creator for Python, based on midiutil.

Creating a MIDI file can be as simple as this:

from EasyMIDI import EasyMIDI,Track,Note,Chord,RomanChord
from random import choice

easyMIDI = EasyMIDI()
track1 = Track("acoustic grand pino")  # oops

c = Note('C', octave = 5, duration = 1/4, volume = 100)
e = Note('E', 5)
g = Note('G', 5)
chord = Chord([c,e,g])  # a chord of notes C, E and G
track1.addNotes([c, e, g, chord])

# roman numeral chord, first inversion (defaults to key of C)
track1.addNotes(RomanChord('I*', octave = 5, duration = 1))



EasyMIDI is only compatible with Python3. If you have setuptools for Python 3, you can install the package by running python3 install (use sudo python3 install on Linux or python3 install –user). TODO PyPI - pip install support


Documentation can be found here:

Project details

Release history Release notifications | RSS feed

This version


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for EasyMIDI, version 1.0
Filename, size File type Python version Upload date Hashes
Filename, size EasyMIDI-1.0-py3.4.egg (50.9 kB) File type Egg Python version 3.4 Upload date Hashes View
Filename, size EasyMIDI-1.0-py3-none-any.whl (26.2 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size EasyMIDI-1.0.tar.gz (24.0 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page