Skip to main content

A simple, easy to use algorithmic composition MIDI creator.

Project description

EasyMIDI

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.addTrack(track1)
easyMIDI.writeMIDI("output.mid")

Installation

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

Documentation

Documentation can be found here: http://easymidi.readthedocs.io

Project details


Release history Release notifications | RSS feed

This version

1.0

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