Why we do it
Example of a midi file opened in Garage Band
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
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!