Inspiration

Being a fairly experienced person with music and who loves playing instruments as a hobby, I've used tools like guitar tuning apps which use your phone's mic to detect the note played and lets you tune it accordingly. This made us realize that there's a way to detect the musical notes simply via a user's microphone and that opens up a solution for a widely experienced issue.

What it does

Musicia is a simple program that lets any user sing to their mic and then outputs the musical notes for that vocal. This means that there's no need to go look for an instrumental cover and its notes on youtube.

How we built it

After a little research, we found the right libraries that could be used for accomplishing what we aimed for. We then went through the documentation and did tons of trial and error to get the initial note detection working. Once this was done the part to plot the notes detected was pretty straightforward in our mind, but we ended up spending lots of time on finetuning that too.

Challenges we ran into

The first and easily the most common one was starting in windows and realizing it was unfit as the library installation threw tons of errors. Understanding the output we received and using it to create a plot was a big pain too.

Accomplishments that we're proud of

To us, this is personally a big achievement to have completed it in about 14 hours excluding our sleep time and this project is something that is so relevant to us that we may end up using it pretty often.

What we learned

Tons. To name a few:Linux, aubio library, matplotlib usage, etc.

What's next for Musicia

This project opens up to various more solutions than we can imagine. To start off the first improvement would be to execute this on a web-app or a mobile application. There can be users who store their notes like they store voice messages. The data from the users can be used to build a database that would support the feature of song identification. This app can technically beat shazam in a more effective way in our minds (we understand the complications in what we mentioned but we do believe it is possible to some extent with more support and time).

Built With

+ 2 more
Share this project:

Updates