hyperamp icon indicating copy to clipboard operation
hyperamp copied to clipboard

Image fingerprinting

Open zeke opened this issue 7 years ago • 8 comments

Forgive the not-specifically-related-to-hyperamp question:

I'm doing a little tiny experiment to analyze my music. Do you folks know of existing npm modules or techniques for fingerprinting audio files? By fingerprint, I think I mean some kind of hash that doesn't change when the file metadata (like id3 data) or file path change.

Does hyperamp create something like this? And how does hyperamp store processed metadata?

zeke avatar Mar 07 '18 02:03 zeke

Haven't researched it heavily but I know Picard/MusicBrainz does this (https://musicbrainz.org/doc/Fingerprinting). I tried it using it once to "fix" my library and add album art but it totally wrecked my library's metadata. Let me know if you find anything.

ungoldman avatar Mar 07 '18 02:03 ungoldman

e.g. https://en.wikipedia.org/wiki/Acoustic_fingerprint https://wiki.musicbrainz.org/Fingerprinting Haven't really explored it yet. https://wiki.musicbrainz.org/Fingerprinting

bcomnes avatar Mar 07 '18 02:03 bcomnes

first post

ungoldman avatar Mar 07 '18 02:03 ungoldman

http://willdrevo.com/fingerprinting-and-audio-recognition-with-python/ Looks good

bcomnes avatar Mar 07 '18 02:03 bcomnes

I thing services like grace note do this, for $$ also https://github.com/lastfm/Fingerprinter

bcomnes avatar Mar 07 '18 02:03 bcomnes

I wanted the answer to be npm install foo. I always want that to be the answer.

zeke avatar Mar 07 '18 22:03 zeke

Hey maybe these:

  • https://github.com/parshap/node-fpcalc
  • https://github.com/parshap/node-acoustid

Hi @parshap! I remember you from San Francisco. 👋 With two years of hindsight, what do you have to say about these modules? Are they working and happy?

zeke avatar Mar 07 '18 23:03 zeke

Hey @zeke! I haven't personally used either of those modules in years, but they seem to be working and getting moderate use. They're really just a light wrapper around Acoustid's Chromaprint (an algorithm for getting audio fingerprints) and their metadata web service. I would do some reading here:

  • https://acoustid.org/
  • https://acoustid.org/chromaprint

Feel free to open any issues in my repos if you run into problems.

parshap avatar Mar 07 '18 23:03 parshap