Shazam Music Recognition Online



On iPhone or iPad, add the Shazam widget to identify music in the Today View. Use Shazam on your Apple Watch to Shazam tracks. To identify music from the menu bar of your Mac, get Shazam for Mac from the Mac App Store. On HomePod, say “Hey Siri, Shazam this song.” Use the Shazam It action to add music recognition to your Shortcuts. Recognize Music by Recording Online. Identify songs by sound like Shazam, Genius and Musixmatch ( which integrates ACRCloud Music Recognition Services ). Play some music and click the button to recognize songs now.

While at university, I joined Shazam as part time web developer. I stayed at Shazam for 5 enjoyable years. This post is about one hackday project I worked on. The project involves plotting one billion Shazam recognitions onto a blank canvas, and then observing the result.

Shazam Music Recognition Online

This post also touches upon the process I used to create the visuals.

What is a ‘Shazam recognition’

  1. Shazam is an awesome music recognizer application for Android that has a great idea behind it. It uses your phone mic and an Internet connection to recognize any song or track and provide you with the artist and song name.
  2. Feb 07, 2002 later plug into an online server to identify the music 5,6. Audible Magic uses the Muscle Fish algorithm to offer the Clango service for identifying audio streaming from an internet radio station 7-9. The Shazam algorithm can be used in many applications besides just music recognition over a mobile phone.
  3. The Shazam music recognition service. Applied computing. Arts and humanities. Sound and music computing. Computers in other domains. Digital libraries and archives.

Think of a Shazam recognition like this. You open up Shazam, the mobile app, and have it ‘listen’ for a piece of music that’s playing in the background. A recognition is the successful identification of the song.

Location data

A user may opt-in to sharing their location data with Shazam. Shazam then makes some of the anonymised location data (latitude and longitude) available to employees, depending on their use case.

Having anonymised location data to visualise was a cool experience. It taught me a lot about processing large datasets, visualisations which tell a story, and visualisations which look pretty but don’t do anything else.

Shazam Music Recognition Service

The visualisation

One thing you need to know, all visualisations follow this idea: One dot represents one successful recognition. Dots are plotted onto a geographical coordinate system. This is not the same as taking a Google Map and then plotting location markers over it.

Chicago, London, New York, Full

Zoomed into New York

I have used colour to differentiate between Android and iOS. Can you guess which is which? Hint: Look at the major cities. Which device type do you think is prevalent there?

  • Android: Red
  • iOS: Blue

If you look closely the the dot maps, you can notice clear definitions for the roads. This can be explained by passengers who are Shazam’ing music playing from car speakers.

I also made maps with alternative colour schemes.

Chicago, Los Angeles, New York, United Kingdom

Interactive Maps

I thought it would be fun to visualise the map interactively. In the same way you would drag/zoom on a Google Map, what if you could also drag/zoom a Shazam map? This element of interactivity is what encourages people to use, explore and learn from the maps. Rather than just being something static that you never revisit.

To do this, I needed to generate millions of map ‘tiles’. For example, here are some tiles of London, taken from Google Maps.

Each tile is a separate image. Take note of the different zoom levels. As you might guess, when you drag and zoom on a Google Map, it presents many different images to you, the images are referred to as map tiles.

Here are the tiles of the Shazam Map.

In total, I created over 40GB worth of tile data. This is because of the zoom level I had specified. A high zoom level means those viewing the map are able to zoom into a greater level.

Upon reviewing the visualisations with colleagues, we kept wondering: What “place” was in the location of large clusters. For example, was it a music venue where people would frequently be using Shazam?

To help answer this question, I had an idea: What if I used a location service to determine what places are currently present. To do this, I used the Google Maps Places API. Every time you scroll to a new location, I query Google Maps API to ask the question: What places are within this location?

When using this feature, we began to realise that clusters of dots would typically be the result of: cafes, night clubs, shopping centers, convenience stores and others.

I also synced a Mapbox map (similar to Google Maps) so as you drag and zoom into the Shazam map, the other ‘regular’ map would move around also. This allows you to quickly identify what geographic location you are currently looking at

The code

Like with everything I do, I’m only benefiting from hard work done by others in our community. All credit goes to Eric Fischer for their excellent work on datamaps. If you follow the instructions on that Github repository, you’ll be able to make your own visualisations. You’ll need a dataset consisting of longitude and latitude points, you might find something on Github, for example, awesome-public-datasets.

If you end up trying it out: here are a few notes I made for myself which you might find useful.

First, you need a big long list of latitudes and longitudes. However to even get hold of that data, you might have to do extra work. In my case, I got it from an internal Shazam API. I used a Node module called fast-csv to parse data. Using streams in this fashion makes parsing large data (gigabytes worth) simple to do.

The handleRecord function does this:

The output looks something like:

At this point, you can begin to plug it into data maps (there are detailed instructions within the project documentation).

Following the documentation long enough, I arrived at a point where I could create the final image. To create a datamap of London, specify the bounding box as location coordinates that you wish to capture:

Because I created the same static maps so often (when experimenting with colour for example), I decided to script the whole process. Being a web developer, I did this all in Node.js, however a simple Bash script would have been fine. First, I made an object containing all the maps I wanted to render.

Data structure to render all maps

Shazam Music Recognition Online

Then it was a case of constructing the command you saw earlier, but for each location entry in that JSON block you see in the image above.

Presenting

At Shazam, there were multiple hack days. Then after a few months, was a demo day. You presented your hack day work on the demo day. Showing folks this particular project was well received.

To those developers creating command-line applications or going on code refactoring adventures during hack days, consider that a demo day audience may prefer more visual demos, rather than technical (this has been my experience). One way around this is: blog about what you’ve done and share the resources after, skipping a live demo entirely. Or even better, figure out how to distill technical concepts to a non-technical audience, introduce more visuals, and continue to give your demo to a live audience. It’s harder, but more rewarding.

High resolution images of the data maps

Note: You can zoom into these images with the Google Photos interface

  • World — Notice which countries/cities have high iOS usage
  • United Kingdom — Notice the cities

Conclusion

I’m grateful to Shazam for encouraging us to learn new skills and technologies. Also thanks to Eric Fischer for developing the datamaps project in the first place! If you have access to location data, consider the many interesting ways of visualising it. You could also try using Tweets from the Twitter API, just make sure they have location data attached to them.

Recognition

Want to see more like this?

Follow me on Twitter: @umaar and let me know! I try & tweet out lots of web development resources.

Please like and share if you enjoyed reading my article and leave a comment with your experiences in data visualisation.

Sometimes you listen to a certain song or music and instantly feel to add it to your playlist. However, you don’t know its name and feel stuck. In this case, the methods to identify songs online can help you to know more about it. So, you can listen to it whenever you want or even download it to listen offline.

If you have a habit of wondering “What Song is this?” this post is specially written to help you. Here, I will tell you about the 8 best methods to identify songs online. You can use these to recognize any song you listen to anywhere and add it to your playlist.

Contents

  • 1 How to Identify Songs Online?

How to Identify Songs Online?

Knowing how to identify songs online can be really helpful when you listen to either a part or the music of a beautiful song and want to know its name. There can be several instances when you’ll instantly start liking a song just after partially listening to it on someone’s Snapchat story, Instagram lives, Youtube stream, or anywhere else. The simplest way to identify the song is then to ask the person who is playing it. But, when it is not possible, then you have to use other workarounds.

Shazam

There are multiple special workarounds that you can resort to for that. I’ve collected all the best ones and will present them here as the best methods to identify songs online. There are many apps and websites especially dedicated to this, I’ll tell you about the best ones here.

1. Use Shazam to Identify Any Song or Music

Shazamis an amazing app specially dedicated to identify and provide full information about any song. It is now owned by Apple Inc. and is available for Android, iOS, macOS, Windows, watchOS and, tvOS. You can use it to identify songs online on any of the devices. Shazam even has an offline mode available. To recognize any song using Shazam, you have to launch the app and tap on the Shazam icon which says ‘Touch to Shazam.’ Make sure you place the microphone of your device near the speaker in which the song is playing.

That’s all you need to do. Shazam will then soon tell you the name of the song and artist within a few seconds. It is a very simple and fast method to know about any song. You can even use Shazam to identify movies, television shows, and advertisements.

2. Use Google Assistant to Identify Songs Online

Google Assistant can help you with lot of things. One of them is to identify any song or music playing nearby. You can use the Google Assistant in your smartphone to recognize the songs. To know how to do that, follow these simple steps.

Step-1: Firstly, tap on the ‘microphone’ icon present with the Google search bar to access Google Assistant.

Step-2: When Google Assistant starts listening, take the microphone of your device near the song. Once the “What’s this song?” option appears, tap on it.

Online

Step-3: Google Assitant will then listen to the song close and start recognizing it. Wait patiently for a few seconds.

Step-4: Once it is done, Google Assistant will tell you the name and artist of the song in the search results.

That’s it. This is a very simple way to know about any song you like.

3. Ask Siri to Name that Tune

Just like Google Assitant, Siri can also help you in a lot of things like calling, texting, setting alarms, playing songs, and many more. Some people find it even better than Google Assistant. Siri can also help you to identify songs that are playing near you. To do that, you simply need to take Siri (microphone of your iPhone) near the song that is playing and ask “What song is playing?” or “Name that tune” or “What is currently playing?” and Siri will then perform a search.

Siri will also seek help from Shazam, even when the app isn’t installed on your device and then it’ll tell you the name and information of the song you want to identify. You can then choose to play it on the Music app on your iPhone.

4. Use ACRCloud to Identify Songs

ACRCloudis a website dedicated to online song recognition. You can use it to know about any song you want. Just visit the website and tap on “Record Now.”

Then, you’ll have the recognition window in front of you. Next, click on the Green microphone and play the song near the microphone of your device to start the recognition process.

Once the recognition is complete, you will see the name and information of the song in the results. They even have a Chrome Extension known as AHA Music that we’ll talk about next.

5. Use AHA Music to know What Song is this

AHA Music is a browser extension that works as a song identifier. You can use it to identify any song you want. Just add it to your browser and click the button of this extension on a page with the audio playing. Then, it’ll start listening to the audio and will recognize it in a few seconds. After that, you’ll have the name and other information about the song you played.

It is a fast, simple, and very accurate method to identify any song or music in a browser.

6. Use SoundHound to Discover Any Song

Shazam Music Finder

SoundHound is another app like Shazam that is able to recognize any music or song playing nearby. It is available to use on Androidas well as iOS devices. To identify a song, you just need to launch the app, tap on the Orange button, and keep the device microphone near the playing audio. After a few seconds, SoundHound will tell you the name and information of that song.

Additionally, SoundHound can also work as a music player with voice control and lyrics on-screen. It is an amusing app that everyone should start using.

7. Use Midomi & Sing the Song

Midomi is a unique song identification website that helps you to find any song by singing or humming its lyrics or music. You just have to visit the website, click on the “Click and Sing or Hum‘ button present on the home page. Then, start singing and click on the ‘red microphone’ to stop recording. After that, Midomi will analyze your audio and tell you the name of the song you were singing.

It is a great way to recognize songs when you can’t play it but only know a part of it.

Shazam Game Online

8. Use WatZatSong to Seek Help from others in Identifying Songs

WatZatSong.com is a crowdsourcing website dedicated to song recognition. It is a community-based website where you have to post a sample of the song you want to identify and the other users will provide answers or guesses for that. The community is really active and you’ll get answers within a few minutes. You will have to sign up for an account to use WatZatSong.

Music Recognition For Pc

You can also listen to samples posted by other users and help them find the song if you are an intellectual music listener. It is a unique and fun way to identify songs.

Final Take

Now the next time a tune or audio gets stuck in your head, you wouldn’t feel helpless. You can just use any of these methods to identify that song online. One more method to identify a song if you only have some lyrics of it is to type them on Google, Youtube. These will help you to know about the song only by using some lyrics. If you know about some more methods, don’t forget to tell us about them in the comments.

Shazam Online Music Finder

Update: You can now also use Snapchatto identify songs online. Just tap on the camera screen for a few seconds and Snapchat will seek help from Shazam to identify the music playing in the background. After that, a pop-up box will appear with the information and an audio preview of the song. You don’t have to install Shazam to use this feature of Snapchat but you will have to update it to the latest version.

Shazam Online Music Recognition

That’s all for this post. I hope you find it helpful. Feel free to reach us if you have any questions or suggestions about anything written here.