Your phone's ability to identify any song it listens to is pure technological magic. In this article, I'll show you how one of the most popular apps, Shazam, does it. Now, interestingly, the founders of Shazam released a paper documenting how it works in 2003, and I personally have been working on an open source implementation of that paper, on a project I called abracadabra.
Where the paper doesn't explain something, I will fill in the gaps with how abracadabra approaches it. I've also included links to the corresponding part of the abracadabra codebase in relevant sections so you can follow along in Python if you prefer.
Granted, the state of the art has moved on since this paper was published, and Shazam has probably evolved its algorithm since it was acquired by Apple in 2018. However, the core principles of audio identification systems have not changed, and the accuracy you can obtain using the original Shazam method is impressive.
To get the most out of this article, you should understand:
Frequency is "how often" something happens, or the number of cycles a soundwave completes in a second, measured in hertz (Hz). Pitch is the human perception of the frequency of sound, with higher frequencies being heard as higher pitches and lower frequencies as lower pitches.
Waveforms are like the shapes or patterns that sound makes when you could see it. They show how the air moves back and forth when something makes a noise.
Graphs are pictures that show information using lines, dots, or bars. Axes are the two lines on a graph that help you see where the information belongs, with one line usually going side to side (horizontal) and the other going up and down (vertical).
文章
8223
浏览
2
获赞
61668
Google Arts & Culture brings 'ancient creatures' to augmented reality
A crustacean with scores of tiny eyes could be your newest houseguest — in augmented reality,Nintendo Switch update finally adds Bluetooth support
Nintendo Switch System Update 13.0.0 went live on Tuesday, adding various software upgrades to the f12 best tweets of the week, including beans and Keanu Reeves
Summer is in the books, the pandemic's still raging, and, well, we've got good tweets.We've been colAndroid 12 gets a tasty new dessert name
The dessert names are back!After abandoning dessert names for new versions of Android in 2019, whenPersonal computers are once again shipping after an earlier pandemic
In the early stages of the COVID-19 pandemic, plenty of folks needed to buy computers — but thGoogle Arts & Culture app's new feature finds art lookalikes for your pet
The Google Arts & Culture app has been updated to be able to identify photos of animals, find paApple's iPhone SE 3 to get new chip and 5G, but no redesign, report claims
Apple's upcoming iPhone SE 3 will stay mostly the same from the outside. This is according to a newAmazon's cashierless tech is coming to Whole Foods stores
A year and a half after Amazon said there were "no plans...for now" to implement its cashierless tecApple will reveal HomePod mini for $99, reliable leaker says
Apple will release a new HomePod at its big event on Tuesday, a new rumor suggests. And this one couTesla can't figure out how to reasonably estimate car deliveries
Dude, where's my Tesla?That's what many recent buyers rightfully lament after an online purchase froFacebook apologizes for that massive outage, says no user data was compromised
Guess who's back after a 6-hour outage? It's Facebook, and the company is sorry. In an oddly short uDonald Trump refuses to denounce QAnon at NBC town hall
At a town hall on Thursday evening, President Donald Trump absolutely refused to denounce the dangerApple Store is down, you know what that means
Apple Store is down ahead of Apple's event, meaning you'll soon have new ways to part with your hardHow to see what Twitter Lists you're on
Twitter has significantly evolved since its launch in 2006, growing from a small microblogging websiApple's silence on AirPods is doing wonders for wireless earbud rivals
As recently as 2019, AirPods were unquestionably the best wireless earbuds in the game. Those tellta