Musicbrainz fingerprinting
PUIDs are now considered "dead" at MusicBrainz [1]. They are still attached to files, but finding and creating PUIDs for files can't be expected to work anymore.
There is a new fingerprint mechanism called AcoustID. There is open-source software available for creating and finding these IDs. AcoustID is not a direct MusicBrainz project, but is created by a MusicBrainz dev and the IDs are mainly being attached to MusicBrainz Recordings and listed on the MusicBrainz website.
EDIT:
Both fpcalc
and chromaprint
are all part of the AcoustID tools.
A third party CLI exists: albumidentify.
Also to complete Debilski's reply, you only need a license if you're using the LiveDataFeed that allow you to update your database each hour or if you're using the WebService in a commercial product.
The fingerprinting is done with the external libofa
library. (Also see MusicDNS.) So, in fact it is not ‘Musicbrainz’s fingerprinting’ but Amplifind’s.
I don’t know if any command line tool currently exists but the code being shown in the documentation does not look very complicated to me (but you will need a license to get access to the database); so if needed, you might be able to write your own.
Also, you could have a look at the musicdns
directory from the Musicbrainz Picard sourcecode; they are using the Python interface there.
I think it not easy for Musicbrainz to give a CLI implementation since the MusicIP is not always reliable and there are cases when user input is needed; which is why they might be concentrating on their GUI Picard.