How Does Shazam Recognize Music Accurately?

Tips

Have you ever wondered how Shazam ‘hears’ the music you’re playing and identifies it with such accuracy? Well, you’re not alone.

The technology powering the music recognition service is a mystery to many, especially since the service launched years before smartphones and machine learning became a thing.

In this article, we’ll look at how Shazam works and how it can recognize music accurately.

What Is Shazam?

Shazam is a popular music recognition app you can use to find information about a new song you love but don’t know the title or the name of the artist.

Say you’re in a coffee shop or walking around a corner shop, and you hear a new song you would like to have in your music library. Shazam helps you find the song with ease. All you need to do is record a few seconds of the song on the app.

The Shazam app uses sophisticated audio recognition technology to identify the music you hear in a matter of seconds so you can find out the name of the artist and track, watch videos, and even buy or stream the song on your device.

Download: Shazam for iOS |Android (Free)

How Does Shazam Work?

Image Gallery (4 Images)

Shazam uses a proprietary technology developed by Avery Lin-Chun Wang, the app co-founder and chief data scientist, to identify matches for songs queried on its platform. The technology creates fingerprints for audio recordings, which is the secret sauce behind Shazam’s awesome recognition skills.

Shazam creates and stores audio fingerprints consisting of collections of numerical data for each over 15 billion songs. When a user “Shazams” a song, Shazam quickly creates an audio fingerprint of the sound received from the smartphone or PC microphone.

Once it’s done creating the audio fingerprint for the recording, Shazam uploads the audio fingerprint (not the audio) to its server, where it runs a database search for matches. If a match is found, it returns the song info with options on where to stream or buy it, along with the identifying information.

What Is an Audio Fingerprint?

An audio fingerprint is a condensed digital summary of audio signals. They’re used to identify an audio sample or to locate similar items in an audio database.

Shazam’s audio fingerprinting technology can match unlabeled pieces of audio content to corresponding matches in its audio database. Shazam identifies the title of the song you recorded (an unlabeled audio content) by matching the song’s fingerprint with the fingerprint of songs in its database.

Shazam creates unique fingerprints for songs on its database by using certain data points identified with a spectrogram’s help.

What Is a Spectrogram?

A spectrogram is a three-dimensional graph used as a representation of sound. The spectrogram shows the change in frequencies over a period while also taking into account the amplitude or volume. The photo below is an example of a spectrogram reading.

spectrogram

Image Credit: Changhua Coast Conservation Action/https://search.creativecommons.org/photos/e6b0b0f3-79ea-4621-9029-1b73365a52ac

In a 2003 Interview with Scientific American, Avery Wang revealed that the Shazam algorithm uses spectrogram points representing notes with the highest energy to generate audio fingerprints.

By ignoring most of the information in a song and focusing only on the few defining notes, Shazam can search its database and provide accurate matches for song queries at an incredible speed.

How Is Shazam Able to Identify Songs in Noisy Places?

Shazam uses song recordings free from background noise and distortion to create fingerprints for its database. When you record a song with the app in a noisy place, it creates an audio fingerprint of your recording by identifying the notes with the highest energy on the recording.

It then searches its database for a match for your recording’s audio fingerprints, provided that the background noise level was not high enough to distort the data used to create the audio fingerprint.

Times When Shazam Can’t Help You Identify a Song

Shazam is great at matching songs, even obscure music you think it might not have in its database. But are there moments when Shazam can’t identify a track?

Distorted Recording

When you Shazam a song in a place where the background noise level is too high, the noise distorts the data on the Spectrogram. Because of that, the audio fingerprint of your recording will be different from that of the original song.

When that happens, Shazam returns the Song not Known dialogue because it cannot find a match for the audio fingerprint.

Live Music

Shazam falls short in its ability to identify music from live performances. This is because the audio you record in live performances often differs from the original version of the song Shazam uses to create audio fingerprints.

The only way Shazam can identify a song during a live performance is if the band is skilled enough to perform the song exactly as it was recorded. Good luck with the band trying to do that…

Your Voice Recording

“Could I get Shazam to recognize a song I was singing if I was a really good singer?”

In short, no.

The Shazam algorithm can only identify prerecorded music. For Shazam to identify a song you’re singing, you’d need to have the same vocals with the instrumentals at the exact tempo with the song’s original recording.

Your Humming

Shazam can’t identify matches for hums because its algorithm uses exact frequencies and amplitudes to create audio fingerprints for the songs in its database.

When you hum a song, Shazam creates a fingerprint for it. But because a hum is only an attempt to resynthesize a song, the algorithm will fail to match the recording.

Is Shazam the Only Music Identification App?

Shazam was the first music identification service and is currently the most widely used song identification app. However, there are other apps you can use to identify a song playing around you. Some can even identify a song you’re singing or humming.

Three of the most popular Shazam alternatives are SoundHound, Musixmatch Lyrics, and Genius. Musixmatch and Genius primarily help you identify lyrics for music playing around you, while SoundHound is Shazam’s closest competitor.

Related: The Best Music Recognition Apps to Find Songs by Their Tune

You can use the SoundHound app to do pretty much everything Shazam does. Its major advantage over Shazam is that it has the added functionality of identifying songs you sing or hum.

Image Credit: Sulastri Sulastri / Shutterstock.com

youtube-streaming-music

How to Identify Music and Songs in YouTube Videos

Wondering how to identify a song from a YouTube video? Here’s a YouTube song finder walkthrough to identify music from videos.

About The Author

.

Products You May Like

Leave a Reply

Your email address will not be published. Required fields are marked *