We love music and free content as much as you do, and we thought it would be cool to give people the opportunity of having their own computer generated music to do whatever they want.

What it does

It returns a completely new computer generated song everytime you want.

How we built it

We used Flask for running a local server because TensorFlow is easily managed from Python. We trained the machine with over 1000 midi files that we got from public libraries. Midi (that's why we are called MIDIocre) is a perfect format because it only saves information about duration and the tone, so it is ideal for training. We used a sequence learning model and a recurrent neural network (first time we heard this terms) because usually neural networks accept a fixed size input, but here we accept a sequence of information (notes).

Challenges we ran into

It was our first time using Flask (not much of a challenge, but still you have to learn something new) but also our first time with TensorFlow. It's been a pain in the ass getting to work with this new thing but it's soooo awesome to see the final songs :D

Accomplishments that we're proud of

We managed to implement a frontend that tells the backend to generate a new song, not impressive at all. But it actually creates a song and it sounds pretty good! (awesome to us, MIDIocre for you, maybe? :D ).

What we learned

We learned Python a bit better (we were more of a javascript guys), we learned Flask (awesome, deffinetly use it more often for hackathons) and most importantly, we learned TensorFlow. Possivilities are endless.

What's next for MIDIOCRE

We would really love to teach the machine to generate different genres of music. Especcialy "arcade" songs like the old Atari, nintendo and other machines used to have. This way game developers wouldn't have to worry about their game's music anymore! Free for everyone!

Built With

Share this project: