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

This version
History Node

1.0

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
EasyMIDI-1.0-py3.4.egg (50.9 kB) Copy SHA256 hash SHA256 Egg 3.4 Oct 4, 2017
EasyMIDI-1.0-py3-none-any.whl (26.2 kB) Copy SHA256 hash SHA256 Wheel py3 Oct 4, 2017
EasyMIDI-1.0.tar.gz (24.0 kB) Copy SHA256 hash SHA256 Source None Oct 4, 2017

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page