Jnana (Generative Ableton Live Plugin)
A generative musical accompaniment system integrated into Ableton Live, used to generate MIDI based on a markov-chain analysis of existing MIDI clips or live MIDI input.
Jnana Demo
The system is written in JavaScript with a bit of Max/MSP patching to get the UI for the plug-in working.
The Jnana system is primarily based on dynamically building Markov chains over the pitch, duration, and velocity of notes. These state machines are then used to generate new material. Some additional statistics can optionally be enabled that will track the first N (order of Markov tables) states of each input "phrase", using these statistics to choose a starting state in the system for each generated phrase.
For more information on the system's functionality, check out the project page.1