How Shazam Works « Free Won’t
December 11, 2016 | Author: Alonso Morales Toro | Category: N/A
Short Description
Download How Shazam Works « Free Won’t...
Description
How Shazam Works « Free Won’t
1 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
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 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:
24-09-2012 0:35
How Shazam Works « Free Won’t
2 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
Spectrogram of a song sample with peak intensities marked in red. Wang, Avery Li-Chun. An Industrial-Strength Audio Search Algorithm. Shazam Entertainment, 2003. Fig. 1A,B. The Shazam algorithm fingerprints a song by generating this 3d graph, and identifying frequencies of “peak intensity.” For each of these peak points it keeps track of the frequency and the amount of time from the beginning of the track. Based on the paper’s examples, I’m guessing they find about 3 of these points per second. [Update: A commenter below notes that in his own implementation he needed 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.943
Shazam 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 the one above, it uses the first key (in this case 823.44), and it searches for all matching songs. Their hash 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 pair of points: the ʺpeak intensityʺ plus a second ʺanchor pointʺ. So their key is not just a single frequency, it is a hash (h p://en.wikipedia.org/wiki/Hash_function) of the frequencies of both points. This leads to less hash collisions (h p://en.wikipedia.org/wiki/Hash_collisions) which in turn speeds up catalog searching by several orders of magnitude by allowing them to take greater advantage 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
24-09-2012 0:35
How Shazam Works « Free Won’t
3 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
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 there is no match. Bo om Graph: frequency matches occur at the same time, so the song and sample are a match. Wang, Avery Li-Chun. An Industrial-Strength Audio Search Algorithm. Shazam Entertainment, 2003. Fig. 2B. If a specific song is hit multiple times (based on examples in the paper I think it needs about 1 frequency hit per second), it then checks to see if these frequencies correspond in time. They actually have a clever way of doing this They create a 2d plot of frequency hits, on one axis is the time from the beginning of the track those frequencies appear in the song, on the other axis is the time those frequencies appear in the sample. If there is a temporal relation between the sets of points, then the points will align along a diagonal. They use another signal processing method to find 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/howshazam-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/howshazam-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
24-09-2012 0:35
How Shazam Works « Free Won’t
4 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
(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 can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.
79 Responses to “How Shazam Works” 1. Riki Says: February 20, 2009 at 5:23 pm | Reply Very very well explained ! Do you actually know any code (audacity may be ?) to obtain a time-frequency graph from a common audio file (wav / mp3 … any other) ?? 2. laplacian Says: February 20, 2009 at 6:03 pm | Reply Thanks for the kind words! Yes, Audacity does provide spectrograms. From the audacity 1.2 reference: “You can view any audio track as a Spectrogram instead of a Waveform by selecting one of the Spectral views from the Track Pop-Down Menu.” Now finding the code to do this within their source might be tricky, so I would recommend another project. The key to this code is in the Fourier Transform, which is usually done by the FFT algorithm ( h p://en.wikipedia.org/wiki/Fast_Fourier_transform ). Whenever I’m looking for source code for something like this I usually try h p://www.sourceforge.net. Just try a search for FFT and you should find some good stuff. 3. Ralphy Says: February 24, 2009 at 3:02 am | Reply Thanks 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 some requirements. However, I didn’t understand how to select the “right” candidates from all the local maximum points in the spectrogram (how do I choose a constellation point? how do I choose an anchor point?)
24-09-2012 0:35
How Shazam Works « Free Won’t
5 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
4. laplacian Says: February 24, 2009 at 6:13 pm | Reply Ralphy, they do not go into detail in what exactly it means to be a peak point. but they give some 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 is within certain desired bounds so that the time-frequency strip for the audio file has reasonably uniform coverage. The peaks in each time-frequency locality are also chosen according amplitude, with the justification that the highest amplitude peaks are most likely to survive the distortions listed above.” So I’m guessing they might do something such as grabbing a small area of the spectrogram and picking the highest 1 or 2 amplitude points, then continuing to the next section. This heuristic would 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 it would be a unique and reproducible pairing of points. I believe it was more for hashing performance benefits than for anything else. 5. laplacian Says: February 25, 2009 at 12:41 pm | Reply Actually that idea won’t work because there is no way way to correlate sections on the time dimension for different samples. Any other ideas? 6. lf Says: September 27, 2009 at 10:49 pm | Reply How do the frequency, and peak points match at all, when the frequencies vary so greatly based on ambience, and sound quality? The low frequencies must definitely be lost. 7. 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 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 thought to be too much information in a song to compile a simple signature. But as he wrestled with the problem, Wang had a brilliant idea: What if he ignored nearly everything in a song and focused instead on just a few relatively “intense” moments? Thus Shazam creates a spectrogram for each 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 of the graph—notes that contain “higher energy content” than all the other notes around it, as Wang explained in an academic paper he published to describe how Shazam works (PDF). In practice, this seems to work out to about three data points per second per song. [...] 8. Dan Ellis Says: October 27, 2009 at 7:27 am | Reply For those interested in more details, I made my own implementation based on the paper, using the Matlab signal processing environment:
24-09-2012 0:35
How Shazam Works « Free Won’t
6 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
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 try to get noise robustness similar to the Shazam app. I ended up needing a lot more than 3 landmarks/sec – more like 30. Bryan Jacobs Says: October 27, 2009 at 11:32 am | Reply This is very cool, I’ll have to check out your code. The 3 points/second number was extrapolated from the graphs of the examples in their paper, but it might not be accurate for real-world use cases. 9. 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 paper describing the method. The key is in compressing the database of 2M tunes [...] 10. Aby Says: October 30, 2009 at 11:03 am | Reply Too good article…very well explained. Thanks for sharing the information !! 11. Carlo Hamalainen Says: October 31, 2009 at 3:51 am | Reply It’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 12. 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/ [...] 13. aubio Says: November 11, 2009 at 8:24 pm | Reply Playing with Shazam fingerprints… [...] A few weeks ago, I took some time to read the paper and implement [...]… 14. Playing with Shazam fingerprints :: aubio Says: November 11, 2009 at 8:42 pm | Reply [...] h p://aubio.org/news/20091111-2339_shazam [...] 15. 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/ [...] 16. Mike Says: November 23, 2009 at 4:11 pm | Reply This is so much easier to understand than Wang’s paper :)
24-09-2012 0:35
How Shazam Works « Free Won’t
7 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
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 a song 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 intensities so fast? And they must need a huge server/powerful computers to process all these inquiries going in eh? Bryan Jacobs Says: November 23, 2009 at 4:54 pm | Reply The program knows how far it is into the song because the time for each point is stored in the hash table. It looks up that time in O(1) which is why it is so fast. It does not do a linear search which you seem to be implying which is O(n) and much slower. Definitely read more about hashtables and you will understand why they are so powerful. Yes, they probably have large servers to handle the bandwidth and potentially tens of thousands of concurrent matching requests. The good thing is that the matching requests are read-only, so that makes the problem much easier. Mike Says: November 24, 2009 at 8:15 am Thanks Bryan :) one more question – how do they deal with the “legal” issues? Did they actually buy all the songs stored in their massive database? (just out of curiosity) Kadir Says: December 4, 2009 at 6:00 am Shouldnt be a problem, because they do not store the music itself, only the data to recognize it. 17. Alphonse Hà Says: December 24, 2009 at 10:45 am | Reply Very 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 | Reply Magic!!! :) 18. Joe M Says: January 2, 2010 at 8:56 pm | Reply may i suggest an interesting reference: h p://www.birds.cornell.edu/brp/pdf-documents/AppB-SpectrumAnalysis.pdf
24-09-2012 0:35
How Shazam Works « Free Won’t
8 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
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 of chart 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 and have worked with a bird person/scientist how studies and publishes. very interesting field and there is certainly a relationship here with shazam. 19. 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 a good explanation by this blogger. Very impressive [...] 20. Dave Says: January 24, 2010 at 12:03 am | Reply I think it’s al magic. 21. david Says: January 24, 2010 at 10:34 pm | Reply My friend and I tried Shazam on a same song with iPhone and Android phone. Both phone apps recognized the sound and returned the same song info, but the jacket images they received from Shazam were different. How come? Steve Says: October 9, 2010 at 12:01 pm | Reply You don’t say what the song is but there’s a number of reasons. The first one is that the Shazam App will return the first album that the track is available on in the iTunes store. The Android 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 what you buy in the shop. And third, it is possible that Shazam’s info is wrong. It’s very rare but it does happen. It usually typos in track names. 22. 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 e le info qui sopra) per ulteriori [...] 23. 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 [...] 24. Roy van Rijn Says: June 1, 2010 at 4:37 am | Reply I’ve implemented this algorithm (in a simple form) in Java and documented it a bit on my website: h p://www.redcode.nl/blog/2010/06/creating-shazam-in-java/
24-09-2012 0:35
How Shazam Works « Free Won’t
9 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
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 recorded fragment, I can calculate the offset of the hash-match in the song. If I have multiple matches with 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 | Reply Wow this looks very cool. I like your clean code in the samples too. Would be a great open source project! 25. Alex Says: July 8, 2010 at 7:12 pm | Reply I 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’ music and matching it against playback, though in this case it was Radio Broadcast. We were told the problem was virtually impossible to solve, but we were young and cavalier and didn’t know any be er, so we solved it anyhow, and that was back in the days of sub 1Ghz CPUs. The algorithm tolerated an amount of fuzzy matching due to audio speed-up which is pre y common by some radio stations (find a radio station that play’s pre y much anything from Madonna’s Ray of Light anywhere near the original speed), so it could match songs that were not exact reproductions of the original in time or in pitch. This presented some challenges because we would occasionally match remixes as the original, and it made the boss really mad :) 26. 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-shazamworks/ Leave a [...] 27. 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 [...] 28. Skybuck Says: July 13, 2010 at 6:37 pm | Reply I wouldn’t worry about it too much. According to dutch “octrooi” law you should be able to examine and study any patent and even reproduce it as long as it used for study. You could probably even release it under open source, just like many other open source projects might involve patents.
24-09-2012 0:35
How Shazam Works « Free Won’t
10 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
A warning that the code might violate certain patents would be nice and probably sufficient. 29. 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 phone app Shazam. This entry was posted in Lectures and tagged fourier, integral, shazam, trigonometric. Bookmark [...] 30. Mago Fabian Says: September 12, 2010 at 5:04 pm | Reply Hi 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 things done. is there a possibility to receive a copy of your amazing code? thanks and keep on doing your excellent work! 31. Japan – News And Articles » Blog Archive » JavaでShazamを作成 – Redcodeを Says: September 17, 2010 at 6:03 pm | Reply [...] 記事:この発生カップル私の日前方法ジャーン取り扱い [...] 32. 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 [...] 33. 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/ [...] 34. 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 [...] 35. Pedro Says: September 22, 2010 at 11:37 pm | Reply This 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 jobless music journalists and record store owners. One hears the music and just writes down the name of the band and Song. If he doesn’t know it he calls out to his co-workers and shouts “Anybody
24-09-2012 0:35
How Shazam Works « Free Won’t
11 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
knows this song?” This is the true magic of Shazam :-) Alex Dahl Says: September 23, 2010 at 7:56 pm | Reply Reminds me of h p://www.theonion.com/articles/desperate-pandora-employeesscrambling-to-find-son,17905/ 36. 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ʹ [...] 37. 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/howshazam-works/ [...] 38. 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) [...] 39. 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 matching songs.How Shazam Works – Free Won’t via Ko keTweetShare0 Responses to “How Shazam Works” Feed for [...] 40. 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 old music fanatics just identifying one song after another? [...] 41. This Is How Shazam Works (Shazam = iPhone Application That Makes You Look Like A Crazy Person In A 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 song and somehow tell you the name, artist, and how to buy it?! Sadly, it’s not magic, but it’s still equally as interesting. Here’s the full article explaining everything: h p://laplacian.wordpress.com/2009/01/10/how-shazam-works/ [...] 42. Shazam – ecco come funziona il riconoscimento delle canzoni! - iPhone Italia – Il blog italiano sullʹApple iPhone 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) Condividi tweetmeme_style = ʹcompactʹ; Lʹutilizzo del contenuto di questo articolo è sogge o alle
24-09-2012 0:35
How Shazam Works « Free Won’t
12 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
condizioni della Licenza Creative Commons. Sono consentite la distribuzione, la riproduzione e la realizzazione di opere derivate per fini non commerciali, purchè venga citata la fonte. [...] 43. 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 = ʹʹ; [...] 44. 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 [...] 45. Joegle Says: October 1, 2010 at 5:05 pm | Reply [...] How Shazam works Tagged with: music • programming 0 Comments Leave A Response [...] 46. » 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 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. [...] 47. 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. Il post di questo “curioso ingeniere” (adesso si dice così nedr?) l’ha segnalato Inkiostro qualche giorno fa, io non ho fa o [...] 48. Chris Says: October 15, 2010 at 2:47 pm | Reply Great discussion – i’m learning a ton. With all the talk about Shazam – SoundHound really blows me away. I had my son sing the Billionaire song and it found it – sure he’s a pre y good singer but there’s no hash-table fingerprint for my son signing this song – that’s pre y magical too. Anyone know the key differences between the two technology approaches? Bryan Jacobs Says: October 15, 2010 at 4:31 pm | Reply I’m not sure how soundhound works but their explanation on their site must have been wri en by someone who was high (possibly on “target crystals”) at the time. 49. 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
24-09-2012 0:35
How Shazam Works « Free Won’t
13 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
how the Shazam system identifies music tracks.) One advantage of digital fingerprinting is that it works with any images anywhere: they [...] 50. 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 [...] 51. THE CURIOUS SCHMOOZER – HOW DOES SHAZAM WORK? « uSchmooze – The Networkerʹs Blog Says: October 23, 2010 at 6:33 pm | Reply [...] OK, but how does Shazam make these fingerprints? As Avery Wang, 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 thought to be too much information in a song to compile a simple signature. But as he wrestled with the problem, Wang had a brilliant idea: What if he ignored nearly everything in a song and focused instead on just a few relatively “intense” moments? Thus Shazam creates a spectrogram for each 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 of the graph—notes that contain “higher energy content” than all the other notes around it, as Wang explained in an academic paper he published to describe how Shazam works (PDF). In practice, this seems to work out to about three data points per second per song. [...] 52. mrk Says: October 28, 2010 at 3:35 pm | Reply ok, for the first time ive found a melody that shazam did not find :( .. but i spend many hours in front 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. 53. Manyx Says: November 8, 2010 at 1:55 am | Reply I really liked the blog and the truth behind shazam. Nice to see. 54. 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 thought to be too much information in a song to compile a simple signature. But as he wrestled with the problem, Wang had a brilliant idea: What if he ignored nearly everything in a song and focused instead on just a few relatively “intense” moments? Thus Shazam creates a spectrogram for each 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 of the graph—notes that contain “higher energy content” than all the other notes around it. In practice, this seems to work out to about three data points per second per song. [...] 55. Ziiiehhaarmonniicar2008 Says:
24-09-2012 0:35
How Shazam Works « Free Won’t
14 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
November 12, 2010 at 9:26 am | Reply Hallo Ihr Musikhörer. Es gibt eine tolle Webseite bei der eure Freunde umsonst neue Hits downloaden könnt! Ihr könnt direkt auf h p://www.party-hits.org/packets/PartyMix_part1.rar gehen und eure Lieblingstracks runterladen. Finde ich schon super klasse. Ist au edenfall mein super Tipp für nächstes Jahr !!! 56. How Shazam Works « zkeesh.com Says: November 27, 2010 at 10:02 pm | Reply [...] full article [...] 57. Clark Says: December 29, 2010 at 11:14 pm | Reply Is there a way to upload all tags to the computer? website? anything? I’m trying to find a program that will identify the songs and you can view or sort as a whole. I have over 500 tags so if I want to purchase song 280 I don’t want to have to keep scrolling to find that song. It usually crashes and I have to start all over again. 58. Shazam « The Droning Inquisition Says: January 25, 2011 at 3:49 am | Reply [...] How Shazam Works and Creating Shazam in Java. [...] 59. 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 addictionHow Shazam/SoundHound WorksHow Google Goggles WorksHolographic BarcodesTechCrunch – IntoNow Can Hear What You’re [...] 60. Grant Says: February 14, 2011 at 7:57 pm | Reply Is there a simple way to prevent Shazam from identifying a song with the use of an editor like GoldWave? I’d like to run a song guessing competition but I don’t want any cheaters. Thanks. 61. 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 to this blog post where you can read all the tech details on how this service works. You can learn more about Shazam [...] 62. Joey Says: March 4, 2011 at 11:02 pm | Reply @Grant, You’re in luck: h p://www.csh.rit.edu/~parallax/ 63. 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 chief scientist and one of its co-founders, explained to Scientific American in 2003, the company’s
24-09-2012 0:35
How Shazam Works « Free Won’t
15 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
approach was long considered computationally impractical—there was thought to be too much information in a song to compile a simple signature. But as he wrestled with the problem, Wang had a brilliant idea: What if he ignored nearly everything in a song and focused instead on just a few relatively “intense” moments? Thus Shazam creates a spectrogram for each 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 of the graph—notes that contain “higher energy content” than all the other notes around it, as Wang explained in an academic paper he published to describe how Shazam works (PDF). In practice, this seems to work out to about three data points per second per song. [...] 64. John Flynn Says: March 21, 2011 at 6:56 am | Reply I’m interested in fingerprinting my Son’s album so people who hear his songs on radio can identify them in Shazam and other applications. How do I present the music to them? Steve Says: April 7, 2011 at 2:58 pm | Reply Contact the music team in Palo Alto or London – or post the CD to them. 65. 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 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 thought to be too much information in a song to compile a simple signature. But as he wrestled with the problem, Wang had a brilliant idea: What if he ignored nearly everything in a song and focused instead on just a few relatively “intense” moments? Thus Shazam creates a spectrogram for each 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 of the graph—notes that contain “higher energy content” than all the other notes around it, as Wang explained in an academic paper he published to describe how Shazam works (PDF). In practice, this seems to work out to about three data points per second per song. [...] 66. Bala Sai Krishna Says: September 24, 2011 at 3:31 am | Reply Can someone explain this? after collecting the constellation points, each point is treated as an anchor point and their respective target zone is found, now how is the target zone identified, is it by extracting the nearest neighbors , but the picture(1C – in paper) doesn’t depict that. 67. brutus Says: March 21, 2012 at 3:24 am | Reply hey, its very interesting… thanks for the explanation. Is there something to know about the error rate? I guess the standard deviation form sample freq. to song freq. is software dependent and manually controllable? 68. How does audio fingerprinting work? - Quora Says:
24-09-2012 0:35
How Shazam Works « Free Won’t
16 de 16
http://laplacian.wordpress.com/2009/01/10/how-shazam-works/
April 6, 2012 at 12:44 am | Reply [...] into the episode you are.1 CommentLoading… • Post • Mar 4, 2012 Anon User h p://laplacian.wordpress.com/2…is a pre y good explanation of… (more) Sign up for free to read the full text. Login if you [...] 69. raph Says: May 1, 2012 at 1:30 pm | Reply Hi, I talked to a guy who ran a competitor in 2007, 2008. He said the real magic is cleaning up the input and making it accessible to the fingerprinting. Also taking a lot of finetuning is how much 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 energetic and upbeat. Shazam still recognizes this. Shazam focuses on radio more, so their actual “quick” database doesn’t have to be so big, and can factor in other parameters like location and time, which could in theory reduce the list of candidates to a handful or two. Still, great explanation. Very accesible. I read one of the patents and their very generic about the actual procedure, and hard to understand at the same time. This is much be er! Thanks, apperciated!
Theme: Kubrick. Blog at WordPress.com. Entries (RSS) and Comments (RSS). Follow
Follow “Free Won't” Powered by WordPress.com
24-09-2012 0:35
View more...
Comments