As part of the Hackathon at UC in october 2016, I worked with Vuong Khuat and Wyatt French to create a program that would take a MIDI file and improvise. A MIDI file is a musical file that saves note sounds.

The program can read in either specially written text files that represent a music sheet or from midi files with different tracks for chords and the melody. Then, the program will take the results from this data and use the melody and chords to compose a song.

In order to use the application, you can use the GUI launched when the FakeMidi.jar is executed (found in builds). The GUI will present the user with two text boxes for input and output. The path of the input can be directly typed into the load box or it can be selected using the dialog created when the select file button is pressed. Once a file is selected, it must be loaded by pressing the load file button. After the file is loaded, it can be exported to the file specified in export file text box. A export location can be specified using the select export button.

The full project is posed to devpost.

Samle of project