At VolHacks, our team worked on a program called MyTime. This program looks at what you are doing on your computer and then generates a knowledge graph to see what you really did that day. The main motive of this was to show people how they spend their time each day; that person can use the information to help them become more productive.

For this project, we wanted to keep working on MyTime, but doing something a little different. We wanted to mess around with music, so we decided to try and represent how you spend your time, through music.

What it does

MyTimeMusic will look at screenshots of your day on the computer, and take the average of the color of the screen. This will translate into a single RGB pixel. Based on this RGB pixel, we convert it to MIDI data. Then we can just play the notes and listen to our day. For Vandyhack, we incorporated FitBit data into the music generation. You can hear your health data such as steps, calories, minutes sedentary as variable volume, speed, tone or mixed together in the music.

How we built it

Using our MyTime screenshot taker, we were able to get the full images of our screen easily. From that, we used image libraries to get the pixel values, and then we averaged all the pixel data to one RGB pixel. From there, we use python-midi to help us write the midi file. For FitBit, the values are mapped to MIDI data by x%180.

Challenges we ran into

Some of the challenges we ran into was writing out the RGB pixel to an image file. Additionally, there were some hurdles to overcome understanding MIDI. And music theory. While it doesn't sound (musically) that great, it is a start to something.

Accomplishments that we're proud of

Actually getting a MIDI file to play, and not just be a stream of single notes.

What we learned

Learning how MIDI files work and their limitations.

We found out that the Myo Armband doesn't really have support anymore... Their website doesn't have the executable to actually use the hardware.

What's next for MyMusicTime

The next thing for MyMusicTime would be learning how to make it sound better.

Built With

Share this project: