I've been busy with understanding the MusicBrainz database in the past few hours and as I noticed there's no command line application to tag or fingerprint audio files. Are there any CLI implementations on Musicbrainz's fingerprinting? And how can I create those fingerprints?
I found some development tools on their website (python-musicbrainz2, libdiscid and the XML webs service) but I couldn't find a simple tool or app which creates those fingerprints (the developments tools only seem to be useful for retrieving track/artist information using a fingerprint). Am I understanding something wrong?
Kind regards
I'm not sure, if you are still interested. Actually, the fingerprinting part is done with a commandline tool called
fpcalc.exe
. This tool calculates a fingerprint and the duration for the audio part of the given file.You can download the fpcalc source code and binaries for windows, linux and Mac OSX from the AcoustID Website: http://acoustid.org/chromaprint
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.
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.
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: fpcalc and chromaprint are all part of the AcoustID tools.