Menlo Hacks III Submission, 11 March 2018. Winner - 4th-6th Place!
Try AudiSea by going to bananiumlabs.github.io/AudiSea.
While we were thinking of ideas, we started listening to music for inspiration, and then we came up with the idea of visualizing music to immerse and enhance the listening experience.
What it does
AudiSea is an ocean whose waves sync up to the beats of whatever music is playing, letting the user sea the music they're listening to. It also has fish and dolphins that appear periodically in sync with the music. We also added voice recognition to allow the user to play their music hands-free, although this only works with Spotify.
How we built it
We used A-Frame as a framework for the VR component, giving us immersion into our world. For the music syncing, we used a library called AudioAnalyzer in K-Frame, an extension of A-Frame. We used Blender to create and render some of the models and looked for open source models online for the rest.
Challenges we ran into
We had issues gathering audio files. We tried to use Spotify and YouTube, but both services secure their audio, making it very difficult to use the files in AudiSea. We also ran into lag on mobile devices due to the large amount of entities being rendered, which may be too much for phones to handle. We also had to grasp the HTML prototype elements, which were difficult to learn.
Accomplishments that we're proud of
We've created a beautiful and complex environment that is responsive to audio. We have a cohesive art style and managed to sync up elements of the environment to the music. Overall, we're proud of making something that we can enjoy and had fun while doing so.
What we learned
We learned how to use A-Frame, which can help us with future VR projects. We also learned about the power of WebGL, allowing us to run VR apps straight from a website, increasing user convenience.
What's next for AudiSea
We have a lot of things we could improve and expand on. We can add more elements to the world and continually refine them, giving it more life and beauty. We can also add more user interaction, letting the user experience their music by playing with it, increasing immersion. Other than that, there is a lot of potential for new ideas that could further enhance the experience.