Inspiration

Have you ever felt a strong emotion but was missing that perfect song to help you let it all out? Are you looking for a product that could recommend to you songs based on how you were feeling, without you needing to do a thing? What you're looking for is MoodBlaster! Just enjoy that moment, scream or cry out to a sound catered to you.

What it does

MoodBlaster takes pictures of your face with a webcam and uses Machine Learning to detect your facial expression and your currently dominant emotional state. It then finds the perfect song on Spotify and automatically plays it on your Bose Stereo to complement whatever mood it thinks you're in right now.

How we built it

We built a front-end application, allowing a user to record themselves and easily control what song plays through their facial expression. This visual information is then given to a python flask web server, which communicates with the Google Vision API to analyze the emotional state of the person in the picture. The flask application then determines the best song to play and plays it to a Bose Speaker through the SoundTouch API.

Accomplishments

We are very happy with how the project turned out, we were able to finish most of the features we planned at the beginning of the hackathon.

  • We first focused on the python flask web server and translating an incoming image to songs playing on the Bose speaker.
  • Afterwards, we focused on delivering a front-end application to increase usability for the end-user.

What we learned

MoodBlaster is a project that incorporates and works with many different tech stacks and APIs! As a group, many of us gained the opportunity to learn a variety of new things. This includes learning React, python Flask, and the various API used. The technical knowledge gained from this project makes it a truly unique experience!

What's next for MoodBlaster

The current state of the project is a starting point for many other possible features:

  • implementing better song selection: Currently, the song selection is static and based on songs we've picked. Ideally, these songs would be recommended dynamically, searching through Spotify's catalog to find the best possible song to play.
  • Implementing finer control over the music playback and controls
  • Using front-end libraries (material, etc.) to improve the look and feel of the website
  • and many more.

Built With

Share this project:

Updates