How Shazam Works « Free Won’t

16
F ree Won’t A curious engineer aĴempts to deconstruct everything How Shazam Works There is a cool service called Shazam ( hĴp://www.shazam.com/music/web/home.html ), which take a short sample of music, and identifies the song. There are couple ways to use it, but one of the more convenient is to install their free app onto an iPhone. Just hit the “tag now” buĴon, hold the phone’s mic up to a speaker, and it will usually identify the song and provide artist information, as well as a link to purchase the album. What is so remarkable about the service, is that it works on very obscure songs and will do so even with extraneous background noise. I’ve goĴen it to work siĴing down in a crowded coffee shop ( hĴp://ritualroasters.com/ ) and pizzeria ( hĴp://www.pizzeriadelfina.com/ ). So I was curious how it worked, and luckily there is a paper wriĴen by one of the developers ( hĴp://www.ee.columbia.edu/~dpwe/papers/Wang03-shazam.pdf ) explaining just that. Of course they leave out some of the details, but the basic idea is exactly what you would expect: it relies on fingerprinting music based on the spectrogram ( hĴp://en.wikipedia.org/wiki/Spectrogram ). Here are the basic steps: 1. Beforehand, Shazam fingerprints a comprehensive catalog of music, and stores the fingerprints in a database. 2. A user “tags” a song they hear, which fingerprints a 10 second sample of audio. 3. The Shazam app uploads the fingerprint to Shazam’s service, which runs a search for a matching fingerprint in their database. 4. If a match is found, the song info is returned to the user, otherwise an error is returned. Here’s how the fingerprinting works: You can think of any piece of music as a time-frequency graph called a spectrogram. On one axis is time, on another is frequency, and on the 3rd is intensity. Each point on the graph represents the intensity of a given frequency at a specific point in time. Assuming time is on the x-axis and frequency is on the y-axis, a horizontal line would represent a continuous pure tone ( hĴp://en.wikipedia.org/wiki/Pure_tone ) and a vertical line would represent an instantaneous burst of white noise ( hĴp://en.wikipedia.org/wiki/White_noise ). Here’s one example of how a song might look: How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/ 1 de 16 24-09-2012 0:35

Transcript of How Shazam Works « Free Won’t

Page 1: How Shazam Works « Free Won’t

Free Won’t

A curious engineer a empts to deconstruct everything

How Shazam Works

There is a cool service called Shazam (h p://www.shazam.com/music/web/home.html), which takea short sample of music, and identifies the song. There are couple ways to use it, but one of themore convenient is to install their free app onto an iPhone. Just hit the “tag now” bu on, hold thephone’s mic up to a speaker, and it will usually identify the song and provide artist information, aswell as a link to purchase the album.

What is so remarkable about the service, is that it works on very obscure songs and will do so evenwith extraneous background noise. I’ve go en it to work si ing down in a crowded coffee shop(h p://ritualroasters.com/) and pizzeria (h p://www.pizzeriadelfina.com/).

So I was curious how it worked, and luckily there is a paper wri en by one of the developers(h p://www.ee.columbia.edu/~dpwe/papers/Wang03-shazam.pdf) explaining just that. Of coursethey leave out some of the details, but the basic idea is exactly what you would expect: it relies onfingerprinting music based on the spectrogram (h p://en.wikipedia.org/wiki/Spectrogram).

Here are the basic steps:

1. Beforehand, Shazam fingerprints a comprehensive catalog of music, and stores the fingerprintsin a database.2. A user “tags” a song they hear, which fingerprints a 10 second sample of audio.3. The Shazam app uploads the fingerprint to Shazam’s service, which runs a search for a matchingfingerprint in their database.4. If a match is found, the song info is returned to the user, otherwise an error is returned.

Here’s how the fingerprinting works:

You can think of any piece of music as a time-frequency graph called a spectrogram. On one axis istime, on another is frequency, and on the 3rd is intensity. Each point on the graph represents theintensity of a given frequency at a specific point in time. Assuming time is on the x-axis andfrequency is on the y-axis, a horizontal line would represent a continuous pure tone(h p://en.wikipedia.org/wiki/Pure_tone) and a vertical line would represent an instantaneous burstof white noise (h p://en.wikipedia.org/wiki/White_noise). Here’s one example of how a songmight look:

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

1 de 16 24-09-2012 0:35

Page 2: How Shazam Works « Free Won’t

Spectrogram of a song sample with peak intensities marked in red. Wang, Avery Li-Chun. AnIndustrial-Strength Audio Search Algorithm. Shazam Entertainment, 2003. Fig. 1A,B.

The Shazam algorithm fingerprints a song by generating this 3d graph, and identifying frequenciesof “peak intensity.” For each of these peak points it keeps track of the frequency and the amount oftime from the beginning of the track. Based on the paper’s examples, I’m guessing they find about3 of these points per second. [Update: A commenter below notes that in his own implementation heneeded more like 30 points/sec.] So an example of a fingerprint for a 10 seconds sample might be:

Frequency in Hz Time in seconds

823.44 1.054

1892.31 1.321

712.84 1.703

. . . . . .

819.71 9.943Shazam builds their fingerprint catalog out as a hash table (h p://en.wikipedia.org/wiki/Hash_table), where the key is the frequency. When Shazam receives a fingerprint like theone above, it uses the first key (in this case 823.44), and it searches for all matching songs. Theirhash table might look like the following:

Frequency in Hz Time in seconds, song information

823.43 53.352, “Song A” by Artist 1

823.44 34.678, “Song B” by Artist 2

823.45 108.65, “Song C’ by Artist 3

. . . . . .

1892.31 34.945, “Song B” by Artist 2[Some extra detail: They do not just mark a single point in the spectrogram, rather they mark a pairof points: the ʺpeak intensityʺ plus a second ʺanchor pointʺ. So their key is not just a singlefrequency, it is a hash (h p://en.wikipedia.org/wiki/Hash_function) of the frequencies of bothpoints. This leads to less hash collisions (h p://en.wikipedia.org/wiki/Hash_collisions) which inturn speeds up catalog searching by several orders of magnitude by allowing them to take greateradvantage of the tableʹs constant (O(1)) (h p://en.wikipedia.org/wiki/Constant_time) look-up time. Thereʹs many interesting things to say about hashing, but Iʹm not going to go into them here, so just

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

2 de 16 24-09-2012 0:35

Page 3: How Shazam Works « Free Won’t

read around the links in this paragraph if youʹre interested.]

Top graph: Songs and sample have many frequency matches, but they do not align in time, so thereis no match. Bo om Graph: frequency matches occur at the same time, so the song and sample area match. Wang, Avery Li-Chun. An Industrial-Strength Audio Search Algorithm. ShazamEntertainment, 2003. Fig. 2B.

If a specific song is hit multiple times (based on examples in the paper I think it needs about 1frequency hit per second), it then checks to see if these frequencies correspond in time. Theyactually have a clever way of doing this They create a 2d plot of frequency hits, on one axis is thetime from the beginning of the track those frequencies appear in the song, on the other axis is thetime those frequencies appear in the sample. If there is a temporal relation between the sets ofpoints, then the points will align along a diagonal. They use another signal processing method tofind this line, and if it exists with some certainty, then they label the song a match.

(h p://del.icio.us/post?v=4&partner=[partner]&noui&url=h p://laplacian.wordpress.com

/2009/01/10/how-shazam-works/&title=How Shazam Works) (h p://digg.com/submit?phase=2&partner=[partner]&url=h p://laplacian.wordpress.com/2009/01/10/how-shazam-works/&title=How

Shazam Works) (h p://www.facebook.com/sharer.php?u=h p://laplacian.wordpress.com

/2009/01/10/how-shazam-works/&t=How Shazam Works) (h p://www.google.com/bookmarks/mark?op=add&bkmk=h p://laplacian.wordpress.com/2009/01/10/how-shazam-works/&title=How

Shazam Works) (h p://www.myspace.com/Modules/PostTo/Pages/?u=h p:

//laplacian.wordpress.com/2009/01/10/how-shazam-works/&t=How Shazam Works&c=%20)(h p://www.newsvine.com/_tools/seed&save?u=h p://laplacian.wordpress.com/2009/01/10/how-

shazam-works/&h=How Shazam Works) (h p://reddit.com/submit?url=h p:

//laplacian.wordpress.com/2009/01/10/how-shazam-works/&title=How Shazam Works)(h p://www.stumbleupon.com/submit?url=h p://laplacian.wordpress.com/2009/01/10/how-

shazam-works/&title=How Shazam Works) (h p://technorati.com/faves/?add=h p:

//laplacian.wordpress.com/2009/01/10/how-shazam-works/) (h p://twi er.com/home?status=h p://laplacian.wordpress.com/2009/01/10/how-shazam-works/)

Tags: Avery Wang (h p://laplacian.wordpress.com/tag/avery-wang/), Computer Science(h p://laplacian.wordpress.com/tag/computer-science/), data structures

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

3 de 16 24-09-2012 0:35

Page 4: How Shazam Works « Free Won’t

(h p://laplacian.wordpress.com/tag/data-structures/), hash (h p://laplacian.wordpress.com/tag/hash/), iPhone (h p://laplacian.wordpress.com/tag/iphone/), search(h p://laplacian.wordpress.com/tag/search/), shazam (h p://laplacian.wordpress.com/tag/shazam/), spectrogram (h p://laplacian.wordpress.com/tag/spectrogram/)

This entry was posted on January 10, 2009 at 3:03 pm and is filed under Computer Science. You canfollow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackbackfrom your own site.

79 Responses to “How Shazam Works”

Riki Says:February 20, 2009 at 5:23 pm | ReplyVery very well explained !

Do you actually know any code (audacity may be ?) to obtain a time-frequency graph from acommon audio file (wav / mp3 … any other) ??

1.

laplacian Says:February 20, 2009 at 6:03 pm | ReplyThanks for the kind words!

Yes, Audacity does provide spectrograms. From the audacity 1.2 reference: “You can view anyaudio track as a Spectrogram instead of a Waveform by selecting one of the Spectral views fromthe Track Pop-Down Menu.”

Now finding the code to do this within their source might be tricky, so I would recommendanother project. The key to this code is in the Fourier Transform, which is usually done by theFFT algorithm ( h p://en.wikipedia.org/wiki/Fast_Fourier_transform ).

Whenever I’m looking for source code for something like this I usually tryh p://www.sourceforge.net. Just try a search for FFT and you should find some good stuff.

2.

Ralphy Says:February 24, 2009 at 3:02 am | ReplyThanks for the nice description – sure makes the paper more readable…

Do you happen know how the “peak intensity” points are found?

I understand they have a limit on the number of constellation points based on somerequirements.

However, I didn’t understand how to select the “right” candidates from all the local maximumpoints in the spectrogram (how do I choose a constellation point? how do I choose an anchorpoint?)

3.

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

4 de 16 24-09-2012 0:35

Page 5: How Shazam Works « Free Won’t

laplacian Says:February 24, 2009 at 6:13 pm | ReplyRalphy, they do not go into detail in what exactly it means to be a peak point. but they givesome clues. Here’s the relevant paragraph from section 2.1 of the paper:

“The peaks are chosen using a criterion to ensure that the density of chosen local peaks iswithin certain desired bounds so that the time-frequency strip for the audio file has reasonablyuniform coverage. The peaks in each time-frequency locality are also chosen accordingamplitude, with the justification that the highest amplitude peaks are most likely to survive thedistortions listed above.”

So I’m guessing they might do something such as grabbing a small area of the spectrogram andpicking the highest 1 or 2 amplitude points, then continuing to the next section. This heuristicwould meet their requirement of a uniform distribution while finding local amplitude maximas.

As far as the anchor points go, I got the impression that it really didn’t ma er, as long as itwould be a unique and reproducible pairing of points. I believe it was more for hashingperformance benefits than for anything else.

4.

laplacian Says:February 25, 2009 at 12:41 pm | ReplyActually that idea won’t work because there is no way way to correlate sections on the timedimension for different samples. Any other ideas?

5.

lf Says:September 27, 2009 at 10:49 pm | ReplyHow do the frequency, and peak points match at all, when the frequencies vary so greatly basedon ambience, and sound quality? The low frequencies must definitely be lost.

6.

What Iʹm Reading Says:October 20, 2009 at 11:11 am | Reply[...] OK, but how does Shazam make these fingerprints? As Avery Wang, Shazam’s chiefscientist and one of its co-founders, explained to Scientific American in 2003, the company’sapproach was long considered computationally impractical—there was thought to be too muchinformation in a song to compile a simple signature. But as he wrestled with the problem, Wanghad a brilliant idea: What if he ignored nearly everything in a song and focused instead on justa few relatively “intense” moments? Thus Shazam creates a spectrogram for each song in itsdatabase—a graph that plots three dimensions of music: frequency vs. amplitude vs. time. Thealgorithm then picks out just those points that represent the peaks of the graph—notes thatcontain “higher energy content” than all the other notes around it, as Wang explained in anacademic paper he published to describe how Shazam works (PDF). In practice, this seems towork out to about three data points per second per song. [...]

7.

Dan Ellis Says:October 27, 2009 at 7:27 am | ReplyFor those interested in more details, I made my own implementation based on the paper, usingthe Matlab signal processing environment:

8.

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

5 de 16 24-09-2012 0:35

Page 6: How Shazam Works « Free Won’t

h p://labrosa.ee.columbia.edu/~dpwe/resources/matlab/fingerprint/

If you can read Matlab source, you can see how it works. I played around with it a fair bit to tryto get noise robustness similar to the Shazam app. I ended up needing a lot more than 3landmarks/sec – more like 30.

Bryan Jacobs Says:October 27, 2009 at 11:32 am | ReplyThis is very cool, I’ll have to check out your code. The 3 points/second number wasextrapolated from the graphs of the examples in their paper, but it might not be accurate forreal-world use cases.

How Shazam Works « Finding Delta Says:October 29, 2009 at 8:01 am | Reply[...] now I know, thanks to an article in Slate that linked to a explanation of the original paperdescribing the method. The key is in compressing the database of 2M tunes [...]

9.

Aby Says:October 30, 2009 at 11:03 am | ReplyToo good article…very well explained. Thanks for sharing the information !!

10.

Carlo Hamalainen Says:October 31, 2009 at 3:51 am | ReplyIt’s pre y easy to get a spectrogram of a wav file using Python using matplotlib:

h p://www.yhvh.co.uk/blog/spectrogram-python

11.

Shazam’s magic revealed! « Deepak Lalan Says:November 4, 2009 at 11:37 pm | Reply[...] h p://laplacian.wordpress.com/2009/01/10/how-shazam-works/ [...]

12.

aubio Says:November 11, 2009 at 8:24 pm | ReplyPlaying with Shazam fingerprints…

[...] A few weeks ago, I took some time to read the paper and implement [...]…

13.

Playing with Shazam fingerprints :: aubio Says:November 11, 2009 at 8:42 pm | Reply[...] h p://aubio.org/news/20091111-2339_shazam [...]

14.

iPhone App Listens to Music and tells you the name of Song « EVOL.reverse Says:November 20, 2009 at 5:23 pm | Reply[...] h p://laplacian.wordpress.com/2009/01/10/how-shazam-works/ [...]

15.

Mike Says:November 23, 2009 at 4:11 pm | ReplyThis is so much easier to understand than Wang’s paper :)

16.

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

6 de 16 24-09-2012 0:35

Page 7: How Shazam Works « Free Won’t

Thanks.

I’m still amazed by what Shazam is able to do.

The question that’s still lurking in my head is – how does the program know how far into asong it is? I’d think that people usually start Shazaming a song after it has started playing(oftentimes, a few minutes into the song). How can the program match all the peak intensitiesso fast? And they must need a huge server/powerful computers to process all these inquiriesgoing in eh?

Bryan Jacobs Says:November 23, 2009 at 4:54 pm | ReplyThe program knows how far it is into the song because the time for each point is stored inthe hash table. It looks up that time in O(1) which is why it is so fast. It does not do a linearsearch which you seem to be implying which is O(n) and much slower. Definitely read moreabout hashtables and you will understand why they are so powerful. Yes, they probablyhave large servers to handle the bandwidth and potentially tens of thousands of concurrentmatching requests. The good thing is that the matching requests are read-only, so thatmakes the problem much easier.

Mike Says:November 24, 2009 at 8:15 amThanks Bryan :)

one more question – how do they deal with the “legal” issues? Did they actually buy allthe songs stored in their massive database? (just out of curiosity)

Kadir Says:December 4, 2009 at 6:00 amShouldnt be a problem, because they do not store the music itself, only the data torecognize it.

Alphonse Hà Says:December 24, 2009 at 10:45 am | ReplyVery cool… but for the ones who are not very technical…

How does Shazaam work in plain english?

:(

Nate Says:September 23, 2010 at 7:50 am | ReplyMagic!!! :)

17.

Joe M Says:January 2, 2010 at 8:56 pm | Replymay i suggest an interesting reference:

h p://www.birds.cornell.edu/brp/pdf-documents/AppB-SpectrumAnalysis.pdf

18.

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

7 de 16 24-09-2012 0:35

Page 8: How Shazam Works « Free Won’t

they also have some programs on their website here:h p://www.birds.cornell.edu/brp/software

the one called raven gives the voice prints shown in the pdf above and these are the 3rd type ofchart mentioned here early on in the description.

have fun, im not an expert at all but have years of electronic expereince some of it related andhave worked with a bird person/scientist how studies and publishes.

very interesting field and there is certainly a relationship here with shazam.

Shazam Magic « Hillel’s Weblog Says:January 6, 2010 at 9:26 am | Reply[...] Quick google search reviled the academic paper wri en by someone from Shazam and agood explanation by this blogger. Very impressive [...]

19.

Dave Says:January 24, 2010 at 12:03 am | ReplyI think it’s al magic.

20.

david Says:January 24, 2010 at 10:34 pm | ReplyMy friend and I tried Shazam on a same song with iPhone and Android phone. Both phoneapps recognized the sound and returned the same song info, but the jacket images they receivedfrom Shazam were different. How come?

Steve Says:October 9, 2010 at 12:01 pm | ReplyYou don’t say what the song is but there’s a number of reasons. The first one is that theShazam App will return the first album that the track is available on in the iTunes store. TheAndroid app doesn’t have access to the iTMS so you might get a different album. Second,there are a small number of artists who have different album covers on the iTMS to whatyou buy in the shop. And third, it is possible that Shazam’s info is wrong. It’s very rare but itdoes happen. It usually typos in track names.

21.

Come funziona Shazam (e cloni vari come Midomi): spiegazione tecnica | A thousand words Says:April 19, 2010 at 7:32 am | Reply[...] fermo qui. Se siete interessati, vi rimando a questo articolo in inglese (da cui ho preso tu ele info qui sopra) per ulteriori [...]

22.

Creating ‘Shazam’ in Java - Redcode Says:May 31, 2010 at 4:43 pm | Reply[...] A couple of days ago I encountered this article: How Shazam Works [...]

23.

Roy van Rijn Says:June 1, 2010 at 4:37 am | ReplyI’ve implemented this algorithm (in a simple form) in Java and documented it a bit on mywebsite:h p://www.redcode.nl/blog/2010/06/creating-shazam-in-java/

24.

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

8 de 16 24-09-2012 0:35

Page 9: How Shazam Works « Free Won’t

I’m pre y pleased with the results, and the way my matching handles offsets in the song.

Because I save the time-in-song for each hashpoint, and the time-in-fragment for the recordedfragment, I can calculate the offset of the hash-match in the song. If I have multiple matcheswith the same offset I’ve found the correct song.

The matching is as easy as, for all hashpoints:- Find hash matches- Substract time-in-song from time-in-fragment = offset- Count, add one to song/offset combination

The song with the highest song/offset combination is our prediction!

Bryan Jacobs Says:June 1, 2010 at 10:53 am | ReplyWow this looks very cool. I like your clean code in the samples too. Would be a great opensource project!

Alex Says:July 8, 2010 at 7:12 pm | ReplyI worked for a li le company called ConneXus in 2001 that is now mediaguide(h p://mediaguide.com/about) where we built eerily similar technology ‘fingerprinting’ musicand matching it against playback, though in this case it was Radio Broadcast. We were told theproblem was virtually impossible to solve, but we were young and cavalier and didn’t knowany be er, so we solved it anyhow, and that was back in the days of sub 1Ghz CPUs. Thealgorithm tolerated an amount of fuzzy matching due to audio speed-up which is pre ycommon by some radio stations (find a radio station that play’s pre y much anything fromMadonna’s Ray of Light anywhere near the original speed), so it could match songs that werenot exact reproductions of the original in time or in pitch. This presented some challengesbecause we would occasionally match remixes as the original, and it made the boss really mad :)

25.

One more example of reactive social role of patent system « Eikonal Blog Says:July 9, 2010 at 7:39 am | Reply[...] Shazam Works” By Bryan Jacobs – h p://laplacian.wordpress.com/2009/01/10/how-shazam-works/ Leave a [...]

26.

Help Fight Patent Bullying From Shazam — Spread This Code! | Techrights Says:July 9, 2010 at 1:51 pm | Reply[...] A couple of days ago I encountered this article: How Shazam Works [...]

27.

Skybuck Says:July 13, 2010 at 6:37 pm | ReplyI wouldn’t worry about it too much.

According to dutch “octrooi” law you should be able to examine and study any patent and evenreproduce it as long as it used for study.

You could probably even release it under open source, just like many other open source projectsmight involve patents.

28.

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

9 de 16 24-09-2012 0:35

Page 10: How Shazam Works « Free Won’t

A warning that the code might violate certain patents would be nice and probably sufficient.

Lecture 6 (9/3): Trigonometric Integrals | Honors Calculus II Says:September 3, 2010 at 11:04 am | Reply[...] motivated integrals of the form with a brief story about Fourier series and the mobile phoneapp Shazam. This entry was posted in Lectures and tagged fourier, integral, shazam,trigonometric. Bookmark [...]

29.

Mago Fabian Says:September 12, 2010 at 5:04 pm | ReplyHi Roy,

maybe here there are some useful additional information:

h p://www.ee.columbia.edu/~dpwe/e4896/lectures/E4896-L13.pdf

I’m trying to write something similar on my own, but I’m still far away from ge ing thingsdone.

is there a possibility to receive a copy of your amazing code?

thanks and keep on doing your excellent work!

30.

Japan – News And Articles » Blog Archive » JavaでShazamを作成 – Redcodeを Says:September 17, 2010 at 6:03 pm | Reply[...] 記事:この発生カップル私の日前方法ジャーン取り扱い [...]

31.

How magic works « olliepopʹs blog Says:September 17, 2010 at 7:26 pm | Reply[...] magic works Jump to Comments How Shazam WorksCreating Shazam in [...]

32.

More Junkmail from Bob, #215 « xpda Says:September 19, 2010 at 6:48 pm | Reply[...] h p://laplacian.wordpress.com/2009/01/10/how-shazam-works/ [...]

33.

Shazam – How do they do that? « Rajanʹs Blog Says:September 22, 2010 at 1:52 am | Reply[...] What’s the name of that music? Categories: General Tags: Music Comments (0) Trackbacks(0) Leave a comment Trackback [...]

34.

Pedro Says:September 22, 2010 at 11:37 pm | ReplyThis is what Shazam says how it works.

But it actually works different:

If you tag Shazam, the music that is played goes into a huge call center with hundreds of joblessmusic journalists and record store owners. One hears the music and just writes down the nameof the band and Song. If he doesn’t know it he calls out to his co-workers and shouts “Anybody

35.

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

10 de 16 24-09-2012 0:35

Page 11: How Shazam Works « Free Won’t

knows this song?”

This is the true magic of Shazam :-)

Alex Dahl Says:September 23, 2010 at 7:56 pm | ReplyReminds me of h p://www.theonion.com/articles/desperate-pandora-employees-scrambling-to-find-son,17905/

Shazam! « inkiostro Says:September 23, 2010 at 2:34 am | Reply[...] del quale molti di noi si è comprato uno smartphone. In tanti si chiedono come funzioni:qua cʹè una spiegazione (un poʹ tecnica, ma neanche troppo) che toglie un poʹ [...]

36.

katiedreke: How Shazam Wo… | Planner Collective Tweet Farm Says:September 23, 2010 at 3:11 am | Reply[...] @katiedreke: How Shazam Works – h p://laplacian.wordpress.com/2009/01/10/how-shazam-works/ [...]

37.

Lifeʹs simple, why change it? » Blog Archive » links for 2010-09-23 Says:September 23, 2010 at 8:02 am | Reply[...] How Shazam Works Explanation of how the music identification service, Shazam, works.(tags: shazam music fingerprinting service identification) [...]

38.

So Itʹs Come To This: How Shazam Works Says:September 23, 2010 at 5:25 pm | Reply[...] the one above, it uses the first key (in this case 823.44), and it searches for all matchingsongs.How Shazam Works – Free Won’t via Ko keTweetShare0 Responses to “How ShazamWorks” Feed for [...]

39.

Friday Links: Goodnight Moon Edition Says:September 24, 2010 at 5:16 am | Reply[...] How does Shazam work? You’re saying there isn’t a team of people over there who are oldmusic fanatics just identifying one song after another? [...]

40.

This Is How Shazam Works (Shazam = iPhone Application That Makes You Look Like A Crazy Person InA Restaurant) | Says:September 24, 2010 at 10:00 am | Reply[...] Every time I use it I swear it’s magic. How can a telephone listen to a tiny snippet of a songand somehow tell you the name, artist, and how to buy it?! Sadly, it’s not magic, but it’s stillequally as interesting. Here’s the full article explaining everything:h p://laplacian.wordpress.com/2009/01/10/how-shazam-works/ [...]

41.

Shazam – ecco come funziona il riconoscimento delle canzoni! - iPhone Italia – Il blog italiano sullʹAppleiPhone 4, iPhone 3GS e 3G Says:September 25, 2010 at 12:42 am | Reply[...] [via] Tags: how-to, Shazam Emiliano Contarino (25 se embre 2010 10:35) Condividitweetmeme_style = ʹcompactʹ; Lʹutilizzo del contenuto di questo articolo è sogge o alle

42.

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

11 de 16 24-09-2012 0:35

Page 12: How Shazam Works « Free Won’t

condizioni della Licenza Creative Commons. Sono consentite la distribuzione, la riproduzione ela realizzazione di opere derivate per fini non commerciali, purchè venga citata la fonte. [...]

links for 2010-09-28 « SensDIGITAL S.A.S. Says:September 28, 2010 at 6:04 am | Reply[...] How Shazam Works addthis_url = ʹh p%3A%2F%2Fsens-digital.fr%2FshowAndTell%2F%3Fp%3D370ʹ; addthis_title = ʹlinks+for+2010-09-28ʹ; addthis_pub = ʹʹ; [...]

43.

Creating Shazam in Java « Mammoth-servers Says:September 29, 2010 at 8:41 am | Reply[...] A couple of days ago I encountered this article: How Shazam Works [...]

44.

Joegle Says:October 1, 2010 at 5:05 pm | Reply[...] How Shazam works Tagged with: music • programming 0 Comments Leave A Response[...]

45.

» links for 2010-10-07 Thej Live Says:October 7, 2010 at 9:03 pm | Reply[...] How Shazam Works « Free Won’t here is a cool service called Shazam, which take a shortsample of music, and identifies the song. There are couple ways to use it, but one of the moreconvenient is to install their free app onto an iPhone. Just hit the “tag now” bu on, hold thephone’s mic up to a speaker, and it will usually identify the song and provide artistinformation, as well as a link to purchase the album. [...]

46.

Come funziona Shazam? | Indie Riviera Says:October 12, 2010 at 11:50 pm | Reply[...] dietro c’è anche del tecnologico e poi ha scri o una spiegazione abbastanza de agliata. Ilpost di questo “curioso ingeniere” (adesso si dice così nedr?) l’ha segnalato Inkiostro qualchegiorno fa, io non ho fa o [...]

47.

Chris Says:October 15, 2010 at 2:47 pm | ReplyGreat discussion – i’m learning a ton.

With all the talk about Shazam – SoundHound really blows me away. I had my son sing theBillionaire song and it found it – sure he’s a pre y good singer but there’s no hash-tablefingerprint for my son signing this song – that’s pre y magical too. Anyone know the keydifferences between the two technology approaches?

Bryan Jacobs Says:October 15, 2010 at 4:31 pm | ReplyI’m not sure how soundhound works but their explanation on their site must have beenwri en by someone who was high (possibly on “target crystals”) at the time.

48.

HackingScene Web News » How to protect photos online | Ask Jack Says:October 17, 2010 at 12:38 am | Reply[...] have the same fingerprint: these will be identical or highly similar images. (This is basically

49.

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

12 de 16 24-09-2012 0:35

Page 13: How Shazam Works « Free Won’t

how the Shazam system identifies music tracks.) One advantage of digital fingerprinting is thatit works with any images anywhere: they [...]

Hartelijk maandagmorgen | julesj | blog Says:October 17, 2010 at 10:12 pm | Reply[...] een muziekje luisteren en hij vertelt je precies wat ‘t is. Ook zo benieuwd hoe dit werkt?Lees de complete uitleg en snap er vervolgens nog steeds niets [...]

50.

THE CURIOUS SCHMOOZER – HOW DOES SHAZAM WORK? « uSchmooze – The NetworkerʹsBlog Says:October 23, 2010 at 6:33 pm | Reply[...] OK, but how does Shazam make these fingerprints? As Avery Wang, Shazam’s chiefscientist and one of its co-founders, explained to Scientific American in 2003, the company’sapproach was long considered computationally impractical—there was thought to be too muchinformation in a song to compile a simple signature. But as he wrestled with the problem, Wanghad a brilliant idea: What if he ignored nearly everything in a song and focused instead on justa few relatively “intense” moments? Thus Shazam creates a spectrogram for each song in itsdatabase—a graph that plots three dimensions of music: frequency vs. amplitude vs. time. Thealgorithm then picks out just those points that represent the peaks of the graph—notes thatcontain “higher energy content” than all the other notes around it, as Wang explained in anacademic paper he published to describe how Shazam works (PDF). In practice, this seems towork out to about three data points per second per song. [...]

51.

mrk Says:October 28, 2010 at 3:35 pm | Replyok, for the first time ive found a melody that shazam did not find :( .. but i spend many hours infront the pc, and ive found it. so, my question is , how do i upload this information to shazam,so other peoples if they are searching for this melody, shazam will say the name of the melody.the melody is Sound System – Dreamscape.thanks.

52.

Manyx Says:November 8, 2010 at 1:55 am | ReplyI really liked the blog and the truth behind shazam. Nice to see.

53.

How Shazam Works… « Voice Recognition Club Blog Says:November 10, 2010 at 7:23 pm | Reply[...] Shazam’s chief scientist and one of its co-founders, explained to Scientific American in 2003,the company’s approach was long considered computationally impractical—there was thoughtto be too much information in a song to compile a simple signature. But as he wrestled with theproblem, Wang had a brilliant idea: What if he ignored nearly everything in a song and focusedinstead on just a few relatively “intense” moments? Thus Shazam creates a spectrogram foreach song in its database—a graph that plots three dimensions of music: frequency vs.amplitude vs. time. The algorithm then picks out just those points that represent the peaks ofthe graph—notes that contain “higher energy content” than all the other notes around it. Inpractice, this seems to work out to about three data points per second per song. [...]

54.

Ziiiehhaarmonniicar2008 Says:55.

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

13 de 16 24-09-2012 0:35

Page 14: How Shazam Works « Free Won’t

November 12, 2010 at 9:26 am | ReplyHallo Ihr Musikhörer. Es gibt eine tolle Webseite bei der eure Freunde umsonst neue Hitsdownloaden könnt! Ihr könnt direkt auf h p://www.party-hits.org/packets/PartyMix_part1.rargehen und eure Lieblingstracks runterladen. Finde ich schon super klasse. Ist au edenfall meinsuper Tipp für nächstes Jahr !!!

How Shazam Works « zkeesh.com Says:November 27, 2010 at 10:02 pm | Reply[...] full article [...]

56.

Clark Says:December 29, 2010 at 11:14 pm | ReplyIs there a way to upload all tags to the computer? website? anything? I’m trying to find aprogram that will identify the songs and you can view or sort as a whole. I have over 500 tagsso if I want to purchase song 280 I don’t want to have to keep scrolling to find that song. Itusually crashes and I have to start all over again.

57.

Shazam « The Droning Inquisition Says:January 25, 2011 at 3:49 am | Reply[...] How Shazam Works and Creating Shazam in Java. [...]

58.

IntoNow iPhone app is like SoundHound for TV | Jeffrey Donenfeld : Blog Says:February 1, 2011 at 4:30 pm | Reply[...] - IntoNow app can tell what show you’re watching, won’t knock your Glee addictionHowShazam/SoundHound WorksHow Google Goggles WorksHolographic BarcodesTechCrunch –IntoNow Can Hear What You’re [...]

59.

Grant Says:February 14, 2011 at 7:57 pm | ReplyIs there a simple way to prevent Shazam from identifying a song with the use of an editor likeGoldWave? I’d like to run a song guessing competition but I don’t want any cheaters.

Thanks.

60.

Shazam! – Identify Music on the Move | My Portable World Says:February 21, 2011 at 10:59 am | Reply[...] as us and want to know how Shazam works (no, it’s not black magic), you can head over tothis blog post where you can read all the tech details on how this service works. You can learnmore about Shazam [...]

61.

Joey Says:March 4, 2011 at 11:02 pm | Reply@Grant, You’re in luck: h p://www.csh.rit.edu/~parallax/

62.

How does Shazam work? « tec.hojito Says:March 16, 2011 at 7:49 pm | Reply[...] OK, but how does Shazam make these fingerprints? As Avery Wang, Shazam’s chiefscientist and one of its co-founders, explained to Scientific American in 2003, the company’s

63.

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

14 de 16 24-09-2012 0:35

Page 15: How Shazam Works « Free Won’t

approach was long considered computationally impractical—there was thought to be too muchinformation in a song to compile a simple signature. But as he wrestled with the problem, Wanghad a brilliant idea: What if he ignored nearly everything in a song and focused instead on justa few relatively “intense” moments? Thus Shazam creates a spectrogram for each song in itsdatabase—a graph that plots three dimensions of music: frequency vs. amplitude vs. time. Thealgorithm then picks out just those points that represent the peaks of the graph—notes thatcontain “higher energy content” than all the other notes around it, as Wang explained in anacademic paper he published to describe how Shazam works (PDF). In practice, this seems towork out to about three data points per second per song. [...]

John Flynn Says:March 21, 2011 at 6:56 am | ReplyI’m interested in fingerprinting my Son’s album so people who hear his songs on radio canidentify them in Shazam and other applications. How do I present the music to them?

Steve Says:April 7, 2011 at 2:58 pm | ReplyContact the music team in Palo Alto or London – or post the CD to them.

64.

THE CURIOUS SCHMOOZER – HOW DOES SHAZAM WORK? | uSchmooze Says:July 11, 2011 at 10:41 am | Reply[...] OK, but how does Shazam make these fingerprints? As Avery Wang, Shazam’s chiefscientist and one of its co-founders, explained to Scientific American in 2003, the company’sapproach was long considered computationally impractical—there was thought to be too muchinformation in a song to compile a simple signature. But as he wrestled with the problem, Wanghad a brilliant idea: What if he ignored nearly everything in a song and focused instead on justa few relatively “intense” moments? Thus Shazam creates a spectrogram for each song in itsdatabase—a graph that plots three dimensions of music: frequency vs. amplitude vs. time. Thealgorithm then picks out just those points that represent the peaks of the graph—notes thatcontain “higher energy content” than all the other notes around it, as Wang explained in anacademic paper he published to describe how Shazam works (PDF). In practice, this seems towork out to about three data points per second per song. [...]

65.

Bala Sai Krishna Says:September 24, 2011 at 3:31 am | ReplyCan someone explain this?after collecting the constellation points, each point is treated as an anchor point and theirrespective target zone is found, now how is the target zone identified, is it by extracting thenearest neighbors , but the picture(1C – in paper) doesn’t depict that.

66.

brutus Says:March 21, 2012 at 3:24 am | Replyhey, its very interesting… thanks for the explanation.

Is there something to know about the error rate? I guess the standard deviation form samplefreq. to song freq. is software dependent and manually controllable?

67.

How does audio fingerprinting work? - Quora Says:68.

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

15 de 16 24-09-2012 0:35

Page 16: How Shazam Works « Free Won’t

April 6, 2012 at 12:44 am | Reply[...] into the episode you are.1 CommentLoading… • Post • Mar 4, 2012 Anon Userh p://laplacian.wordpress.com/2…is a pre y good explanation of… (more) Sign up for free toread the full text. Login if you [...]

raph Says:May 1, 2012 at 1:30 pm | ReplyHi, I talked to a guy who ran a competitor in 2007, 2008. He said the real magic is cleaning upthe input and making it accessible to the fingerprinting. Also taking a lot of finetuning is howmuch deviation to the fingerprint I allow for the song to still be recognized.Radio statios like all clearchannel, pitch up the music slightly to make it sound more energeticand upbeat. Shazam still recognizes this.Shazam focuses on radio more, so their actual “quick” database doesn’t have to be so big, andcan factor in other parameters like location and time, which could in theory reduce the list ofcandidates to a handful or two.

Still, great explanation. Very accesible. I read one of the patents and their very generic about theactual procedure, and hard to understand at the same time.This is much be er! Thanks, apperciated!

69.

Theme: Kubrick. Blog at WordPress.com.Entries (RSS) and Comments (RSS).

Follow

Follow “Free Won't”

Powered by WordPress.com

How Shazam Works « Free Won’t http://laplacian.wordpress.com/2009/01/10/how-shazam-works/

16 de 16 24-09-2012 0:35