Skip to content

durangatan/midi-markov-python

Repository files navigation

WORK IN PROGRESS

Python Midi Markov

Uses the music21 Python library to generate semi-improvised melodies.

If you run python3 runner.py, right now it will

  • Read all the compositions of JS Bach into a Markov chain data structure (implemented in Python)
  • Start on a random note and write a midi file approximately 1000 notes in length
  • Play the generated midi file

Future feature ideas include a command-line interface for choosing a different composer, phrase length, and making optimizations on the data structure (it's very slow).

bach.mid is an example of the output file generated by this script.

Usage

pip install -r requirements.txt

python runner.py

About

Improvises melodies based on MIDI input using music21 Python library

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages