Get info from unnamed tracks

Tags: #<Tag:0x00007f7d01f2d2c8>

Got some mp3 with completely no info inside them. filename is a random string of characters, cause i exported them from ifunbox (an iphone utility) when i made a backup of my iphone before i updated to a newer ios version way back. Only usable info is in track name where it only displays Track number. So for example i have a folder of 55 orphaned files with names like “[untitled][2164][].mp3” and tag in title field is “Track 6”. Same structure goes for the rest. And theyre not all from one single album, i got like 3-4 mp3 for its track number, eg 4 random named mp3 with Track 1 in title tag.

Run a scan and musicbrainz only recognises 16 of them. Even after i input a fingerprint generated by my musicbrainz login.

Shazam easily recognised one of the unamed tracks, but i cant shazam the whole folder, and even so basically i’m looking for a futureproof way cause even after i take care of these file i will have to clean my whole music library and hundreds more like these will popup eventually

You probably don’t want to hear this: It’s almost impossible.
Without metadata and without references to file names, no software is able to guess your songs with high accuracy. With the help of Acoustid/Fingerprints there will be some random hits, especially with very popular songs.

But all songs that you don’t recognize yourself while playing them will be extremely difficult to guess.


I figured as such, but how does shazam do this. Cant this be incorporated into software that does this with stored files. I cant keep playing files into shazam to handle a bulk of unknown media

If you are interested in the details, you can read an academic paper published by Avery Li-Chun Wang to describe how Shazam works.

A shortest possible description:
Shazam creates a spectrogram for each song in its database - a graph that plots three dimensions of music: frequency vs. amplitude vs. time.

Another comprehensive explanation for fingerprinting music with Shazam.


Well sure it does this somehow. But what my question implied was how is it able to do it, and MusicBrain or other various apps dont include such code, where you click to submit and get similar results

I think Shazam (through Gracenote) has access to a database.
And that access is heavily restricted in efforts to maintain the scarcity and financial value of that database.


Pretty much. AcoustID does what Shazam does on full files though, it’s just (same as with Shazam) you depend on the stuff you have being already in the actual database. Shazam has a much stronger financial incentive to have all popular music in their database, since that’s their main source of income. So while it often fails with obscure music, it almost always works with more popular stuff. AcoustID mostly depends on us music nerds, so I suspect it has more hits on absurdly obscure stuff, but might be missing a fair amount of popular music no user happens to actually listen to.


In a case like yours try lowering the track matching threshold in Options > Advanced > Matching.

If you do AcoustId lookups that acts as kind of a sanity check to avoid total mismatches by comparing existing metadata against the found data and calculating a similarly. If the similarity is lower than the threshold no match is done.

The default is already rather low at 40%, but as you have really bad existing try lowering it to maybe even 0.

Also some time ago sometimes the AcoustId servers had some trouble. In such a case just retrying scan on the already scanned files might give additional results.