Music recognition (main view - dummy)
Music recognition (implementation)
Music recognition while recording audio
When a song got recognized successfully
Song recognition (implementation) - ACRCloud does not provide album art :/
Discover period over view - after the discovery period the new song is revealed to the whole group
Shared Playlist - this is where the songs of a group get stored
Last but not least: The leaderboard
Our Tech-Stack (Yes! We're using SQL ;))
A couple of weeks ago I was with a friend and he showed me this "new" band he discovered (it was Jungle btw. 😉). I told him, that I really like that band but that I also know them for more than 4 years already. I also like Shazam – a lot! But the total time I spend using the app is probably around 5 min per WEEK. So, I came into thinking: Why not extend the functionality of Shazam, so that you can share your latest discoveries directly with your friends. As this alone is quite boring though, I put some thoughts into a gamified Version.
What it does
You can search for songs by using the microphone of your phone (basic Shazam functionality). But if you create a group and add your friends, the challenge starts: For each song, that is recognized for the first time in a group, a discovery period starts. If at least one other person of the group looks up that song within that discovery period as well, the person who looked it up first gets points. The more friends of the group discover the song, the more points the first person gets. After that discovery period, songs will also be added to a shared playlist. Of course, we have a leaderboard as well 😁
How we built it
Challenges we ran into
- Integrating the ACRCloud-API, unfortunately, cost us tons of time, that’s also the reason why we were not able to finish the whole app.
- The ACRCloud doesn’t provide album art and we did not have enough time to integrate the Spotify API
Accomplishments that we're proud of
Using the HTML5 audio API to record audio and obviously integrating ACRCloud 😅 Also getting the firebase authentication to successfully logging in users and getting back the user’s profile pictures from their google accounts was quite nice.
What we learned
Soo much! Our backend devs were using node for the first time. The frontend devs got into React (which is just so amazing, always wanted to learn that). And also working 100% remotely over three timezones (California, India, Germany) was just an incredible experience (even though we barely slept within the last 36 hours 🙈😴).
What's next for Somudi
- User management
- Going native - React was more of an emergency decision
- Integrating Spotify API for album art – ACRCloud already provides us the song id, that we need to fetch album art from Spotify
- Streaming audio to ACPCloud so we get back a response as soon as the song was recognized successfully (right now you have to stop recording manually after a couple of seconds)
- Finding partners, we could team up with, so that the users can exchange points for ticket discounts for example (Ticketmaster, Eventbright would be amazing partners)