|
Savant is a music improvisation program that makes use of a computational model of music to be able to analyze chords, generate chords, and turn a set of disordered notes in real-time into good-sounding music.
One favorite use of Savant is its "duet mode", in which a musician plays on the left hand side of the piano, and anyone can play on the right hand side of the piano, with Savant tweaking the right hand notes to ensure that they always match the left hand regardless of what is played, thus the music always sounds good. |
Watch Savant in action in a video by the Stanford School of Engineering!
Listen to the recording of Savant in action! In the MIDI files below, several measures of right hand pattern is first inputted to the program. Afterwards, Deri plays chords on the left hand side and Savant improvises the melody on the right hand side.
2009 10 22 Savant Improv 1 medium.mid |
Savant obtains input from a MIDI controller, analyzes the input in real-time, and generates different kinds of output depending on the mode.
Savant is developed by Tony Wu, Jay Ni, and Deri Kusuma using Java for CS 194 class offered in Spring 2009. The duration of the project from inception to exhibition is around 9 weeks.
In the 2009 software faire, Savant won casual prizes from Apple, Microsoft, Facebook, VMware, and Yahoo, and won 2nd prize from Stanford CS department.
The code is not provided because it is currently largely underdocumented and has a pretty messy structure, since the nature of the project is experimental rather than consumer-oriented. The software also depends on a set of piano sound samples totaling around 60 MB.



