I feel a project coming together:
- abcde is a fine encoding utility
- musicbrainz has much better metadata than freedb
- The musicbrainz discid is the most reliable way of identifying tracks
- The musicbrainz discid can be calculated before DAE.
- libmusicbrainz contains code the code to calculate the musicbrainz discid, as well as tag ogg/flac/mp3 tracks.
Some thoughts on how to do this:
- Import abcde into a monotone branch.
- Import libmusicbrainz into a monotone branch.
- Import libtunepimp into a monotone branch.
- Propagate them into an abcdefgm branch.
- Apply appropriate renaming.
- Replace the cd-discid / freedb query with a small libmusicbrainz application that calculates the discic, and stores it in the working directory.
- Replace the tag step with a small libmusicbrainz application that uses the discid calculated above, queries the Musicbrainz server, and writes the resultant metadata into the freshly encoded tracks.
Now of course, there is the small question of when I would actually do this.