HNHacker News
TopNewBestAskShowJobs

ccgzirim

254 karma · joined August 1, 2024

submissionscomments
ccgzirim··on I recreated Shazam’s algorithm with Go
I initially chose MongoDB for its flexibility, but I'm open to exploring SQLite as an alternative. I'll research its JSON capabilities and evaluate its suitability for this project.
ccgzirim··on I recreated Shazam’s algorithm with Go
The data comes from a database of fingerprints connected to the server. These fingerprints are created whenever songs are added.
ccgzirim··on I recreated Shazam’s algorithm with Go
I've added that to my to-do list and plan to implement it this weekend.
ccgzirim··on I recreated Shazam’s algorithm with Go
A. SeekSound vs B. SoundSeek vs C. SoundScout

Which would be a better alternative?

ccgzirim··on I recreated Shazam’s algorithm with Go
Isolating a single artist based on a fingerprint sounds challenging but interesting.

Using exemplar fingerprints, a representative sample of an artist's music, is a good approach, but success would require detailed fingerprints, a varied dataset, and a well-chosen algorithm.

For artists who change styles, time-series analysis can capture their evolving sound.

The solution will likely need machine learning.

The current solution doesn't use feature hashing or clusterable feature vectors. Instead, it relies on audio fingerprinting, which breaks down short audio samples into unique patterns or "fingerprints" for quick comparison with a large database of known songs.

ccgzirim··on I recreated Shazam’s algorithm with Go
Thank you for the time you took to provide such detailed feedback. I really appreciate your honest input. You've raised some valid points that I hadn't really considered.

I agree that the project could definitely use some polishing. I'll prioritize improving the setup instructions and look into adding a file-based DB for flexibility, as well as resolving the npm vulnerabilities. Adding support for directly fingerprinting wav files is a great idea and something I'll prioritize, too.

Regarding the project name, I understand the potential legal implications and will definitely change it. I'd appreciate any suggestions you might have.

I'm excited about the possibility of your contributions. Please, feel free to open a PR whenever you're ready.

Thanks again for your feedback!

ccgzirim··on I recreated Shazam’s algorithm with Go
Thanks. I'm glad it inspires you! It'd be awesome to see you take it on. You can clone it and develop it further.
ccgzirim··on I recreated Shazam’s algorithm with Go
Oops... Thank you. I've disabled it.
ccgzirim··on I recreated Shazam’s algorithm with Go
Thanks! I appreciate the compliment on my Golang; This is actually my first full-fledged project with the language, haha. Feel free to reach out if you have any issues running it.
ccgzirim··on I recreated Shazam’s algorithm with Go
You're right. The Spotify link is used solely to get details about the song. These details are then used to search for and download the song from YouTube. Afterward, the fingerprint for the song is created and added to the database.
ccgzirim··on I recreated Shazam’s algorithm with Go
It would actually. But Spotify doesn't allow direct downloads so I had to find the songs on YouTube and download them from there.