Inspiration

Harmonibites started as a desire to create a way of marking a file with a unique musical melody. A large portion of the inspirational credit goes out to the old PlayStation game, Monster Rancher.

What it does

Harmonibites uses Sha256 hashing to generate a unique 64 character hex code that is specific to the file being fed to our algorithm. Through this value, a melody is generated and harmonized using conventional classical music theory to create a song that is not only pleasing to the ear, but can be used to verify that two files contain the exact same data. Even a character difference will result in a completely different song.

How we built it

Using concepts from classical musical theory, we programmed a song control algorithm. Native Java libraries provided the means to create our GUI and sound synthesizer. We used GitHub for our version control and Gradle for our build scripts.

Challenges we ran into

Coordinating five members proved to be the greatest challenge. It was difficult to get the ideas from the person with the knowledge of music theory into the hands of other capable coders in the team. Aside from this, controlling our build through GitHub was something that most of the team were new at. We had to learn a great deal very quickly to keep the schedule on track.

Accomplishments that we're proud of

For most of the us, this was the first time working with a development team. Even though there were challenges, everyone kept a wonderful attitude as we persevered through one road block after another. We are all extremely proud that we finished our project, seeing that this is most of the team's first hackathon.

What we learned

We've all learned a great deal about GitHub and version control, GUI development, sound-bank and synthesized midi programming, and how to stay up through the night.

What's next for Harmonibites

Harmonibites is in it's most basic, proof-of-concept state. We can expand the complexity, add better sound-banks, improve our algorithm to expand to different modes of the musical scales, and add the ability to tailor the user experience of Harmonibites. We want the user to be able to not only hear a unique song that can validate a file's integrity, but we want it to be from a genre in which they are accustomed. Maybe, one day, we would love to see a website implement our file validation strategy on their site.

Built With

Share this project:

Updates