It has been working "fine" for me generally for popular music. But then I was at a ice skating competition where there were some really nice synth:y music going on in the pauses, and I used Shazam on several of the songs, and I tried several times on each. It did not find a single one correctly.
Either this was unreleased music or very small niched music or something, or Shazam totally failed?
Perhaps obviously this is the same technique that enables ACR on TVs.
It occurs to me that Shazam has such a better reputation online because the intent and consent of the user is honored.
It makes me wonder if there couldn’t be an implementation on TVs that is similar and actually is a net positive for consumers. Basically would customers actually like TV ACR if the data wasn’t just going to sell more ads?
So the value-add would be the consumer would get to find out the name of the show or movie that’s playing, the same info that also pops up if they hit the pause button?
Might be the best visual explainer of Shazam original audio fingerprinting algorithm from the 2003 paper (I guess they´ve switched to ML models at some point?)
Recognizing a recording isn't hard to do, because, for the same recording, the chords follow each other with precisely repeatable timing. That's been around for well over a decade. Recognizing a different recording, say, a, cover version, of the same song, is much more work.
Audible Magic claims to be able to recognize multiple performances of the same songs, and even parodies.[1] Using, of course, "AI technology" and much more compute.
"Isn't hard to do" is doing some heavy lifting. Obviously on a society level it's simple tech we managed ages ago. But I would bet if you tasked individual devs at building it without looking up the answer, very few could do it.
Forgive my ignorance, but what does SCP mean in this context? (my normal go-to of 'secure copy' doesn't fit).
Thanks for the other links, the question in this title is one I've day-dreamily thought about on occasion, but never dug into. Will have a read of all three.
Not unless your noise is louder at certain dominant frequencies than the source. The article gives examples, but the algorithm basically throws away everything except frequency peaks, in order to make the lookups faster.
I feel like it does not work well. Shazam struggles to recognize music in real life environments that have some background noise, even with a lot of time. It’s much worse than the built in music recognition Google’s phones have, for example.
related comments from Shazamers
- OG shazam paper https://www.ee.columbia.edu/~dpwe/papers/Wang03-shazam.pdf (he has a talk on youtube btw look it up if really care)
- https://news.ycombinator.com/item?id=18069968 shazam employee blogpost
- https://news.ycombinator.com/item?id=38538996 shazam cofounder endorsed explainer
- go algo repro https://news.ycombinator.com/item?id=41127726
as with all ML things... the code is much less % of the value than the data...
Well, my latest guess is: not at all.
It has been working "fine" for me generally for popular music. But then I was at a ice skating competition where there were some really nice synth:y music going on in the pauses, and I used Shazam on several of the songs, and I tried several times on each. It did not find a single one correctly.
Either this was unreleased music or very small niched music or something, or Shazam totally failed?
Perhaps obviously this is the same technique that enables ACR on TVs.
It occurs to me that Shazam has such a better reputation online because the intent and consent of the user is honored.
It makes me wonder if there couldn’t be an implementation on TVs that is similar and actually is a net positive for consumers. Basically would customers actually like TV ACR if the data wasn’t just going to sell more ads?
So the value-add would be the consumer would get to find out the name of the show or movie that’s playing, the same info that also pops up if they hit the pause button?
I was thinking more like interactive content. Do you remember when VH1 had a pop-up music video show?
Shows could synchronize additional content that’d be visible when Shazam mode enabled.
We did this on Fire Phone for live sports and audio based X-Ray cast info. It was, like everything about that phone, a really fun tech demo.
Pop. Pop. Pop Up Video.
Might be the best visual explainer of Shazam original audio fingerprinting algorithm from the 2003 paper (I guess they´ve switched to ML models at some point?)
There's an algo called dynamic time warping (DTW) and is very often overlooked. My wild guess would be is at play @Shazam.
Ayyy I used DTW to track bots on a certain social media site. They tend to act in herds so DTW helps smooth out delayed, repeat actions.
Recognizing a recording isn't hard to do, because, for the same recording, the chords follow each other with precisely repeatable timing. That's been around for well over a decade. Recognizing a different recording, say, a, cover version, of the same song, is much more work.
Audible Magic claims to be able to recognize multiple performances of the same songs, and even parodies.[1] Using, of course, "AI technology" and much more compute.
[1] https://www.audiblemagic.com/2024/02/07/identifying-cover-so...
"Isn't hard to do" is doing some heavy lifting. Obviously on a society level it's simple tech we managed ages ago. But I would bet if you tasked individual devs at building it without looking up the answer, very few could do it.
20 years at least. I remember seeing how Gracenote worked back in the day when I was consulting for them.
Why is this harder than "delete timing information" ?
Again? Oh I see.. SCP (this domain is sus)
From CameronMacLeod (2022) - and much more complete analysis (587 points, 2023, 155 comments) https://news.ycombinator.com/item?id=38531428
Or Slate (2009) (50 points, 16 comments) https://news.ycombinator.com/item?id=893353
Forgive my ignorance, but what does SCP mean in this context? (my normal go-to of 'secure copy' doesn't fit).
Thanks for the other links, the question in this title is one I've day-dreamily thought about on occasion, but never dug into. Will have a read of all three.
Vaguely relevant pop-culture reference.[1]
[1] https://scp-wiki.wikidot.com/glossary-of-terms
I seem to have wandered into a parallel universe.
I think it'll take me longer to understand WTF SCP is than it will to understand how Shazam works.
probably the HN-specific "Second Chance Pool" for resurfacing links
The interactive parts of this post are very cool though
Add to my list of projects. Dinosaur game but with audible clucks to jump.
Out of curiosity is it possible to prevent shazam like app from detecting maybe by adding noise or any technique ?
Not unless your noise is louder at certain dominant frequencies than the source. The article gives examples, but the algorithm basically throws away everything except frequency peaks, in order to make the lookups faster.
Producers/DJs manage this one by just not releasing their music or edits for ages if ever.
I did this for a science project in 1986 on an Apple ][c computer !
Surprised to see how that got it worked with out all the "AI" bluff
I feel like it does not work well. Shazam struggles to recognize music in real life environments that have some background noise, even with a lot of time. It’s much worse than the built in music recognition Google’s phones have, for example.
Nice article - enjoyed reading!
No "AI" required!
Reminds me of Roy Van Rijn’s prototype that got a cease and desist letter! Lots of community disappointment at the time!
https://hn.algolia.com/?q=royvanrijn
voodoo
This has been explained so many times… a wizard imbued the kid with the powers of Solomon, Hercules, Atlas, Zeus, Achilles, and Mercury.