Skip to content
forked from Aozhi/melodia

Melodia is a Python library for MIDI music creation

License

Notifications You must be signed in to change notification settings

toomanynates/melodia

This branch is up to date with Aozhi/melodia:master.

Repository files navigation

Melodia

Documentation Status Tests Status

Melodia is a Python library for MIDI music creation.

It provides four core concepts – tone, time signature, note and track and various abstractions built on them, such as chords and chord progressions. Library contains MIDI writer which allows to output tracks to MIDI files in order to export them to any DAW.

Installation

Melodia is fully typed and requires Python 3.7 or greater.

pip install melodia

Documentation

Documentation is available at melodia.readthedocs.io.

Example

from melodia.core import Track
from melodia.music import chord
from melodia.io import midi

track = Track(signature=(4, 4))

track.add(chord.maj('C3', (1, 1)))
track.add(chord.maj('D3', (1, 1)))
track.add(chord.min('A3', (1, 1)))
track.add(chord.maj7('G3', (1, 1)))

with open('chords.mid', 'wb') as f:
    midi.dump(track, f)

Ableton Live 10 with imported chords

About

Melodia is a Python library for MIDI music creation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%