Inspiration

We wanted to work outside of our comfort zones. Creating this application was a large challenge with many new obstacles.

What it does

This application uses the power of Markov Chain based prediction to create new music based on a file compiled of sample melodies as well as user supplied lyrics.

How we built it

We used python for the core of the application, from there we created a locally run site to host the product. All of the site was created in HTML5 and CSS. We linked our Python code to the site using Flask and from there we created a button to start the application and generate new song every time.

Challenges we ran into

We ran into issues with the Markov chain, we found that it was giving us bad results. We found a way to make the Markov chain use more notes and create a unique song every time. Then we had troubles getting the notes to create a song that had proper structures so that it replicates a real song. We ran into some issues with Flask, the website was not connecting to the next pages and sending back 404 errors, while not updating the system. We had some problems with the lyrics getting into the Markov chain to make a unique track for the user. Last we had issues with creating the file and syncing it with the sound file.

Accomplishments that we're proud of

We are happy that we could make something that creates its own unique music file and plays it back to you. Both of us came into this project as Python novices, through this project we managed to learn a great deal about the language and are proud of what we managed to accomplish despite are lack of experience.

What we learned

We learned a greater knowledge of python libraries. From there we learned Flask and how to integrate that into an HTML5 website. Learned how to properly setup API files and Python modules in our code. We learned that we work well together.

What's next for Maestrov

We will be getting this on the google play store very soon. Our hope for this project is to expand the set of musical samples it pulls from and to up the complexity of our generated songs. We want people to enjoy this program and laugh from it.

Share this project:

Updates