New release - 20111025
November 01, 2011 in bliss by Dan Gravell
This week's release contains just a few improvements: extra logging for untagged and unsupported music files and a fix for a ID3 tag version bug.
Before I go into detail on that, I've also been running a feasibility study into automatic song identification. Specifically, the use of audio fingerprinting to identify music, rather than relying on the internal tags.
This has two main uses. First, it can be used when tags are inaccurate to lookup album art and other information online. For example, classical music is often badly tagged, or the textual tags are formatted in many different ways. Identifying the music by the fingerprint makes queries far more accurate because it means there's no guessing as to how a given recording or artist name should be sent in a query to a music database. Second, the use of audio fingerprints themselves should open up a whole new category of bliss rules.
Traditionally, bliss rules have been oriented around consistency, that is: how to make the metadata within your collection be consistent with respect to each other. I have, however, also identified correctness and completeness as two other goals. Audio fingerprinting will improve correctness by comparing external sources of data to your own tags. Completeness will be aided by tagging previously untagged files.
The resultsof the feasibility study were encouraging. The audio fingerprinting identified 90% of a sample library, and those that were identified were close to 100% accurate.
This was just a feasibility study. There is more work to first package the audio fingerprinting code, and then to work it into bliss functionality. However, it opens up a number of quite exciting new possibilities for bliss.
Back to the new version
As I said, just a few changes...
I've had a few questions to my email inbox asking why a given album or set of tracks was not picked up by bliss. Often the answer is that the music file format used for the tracks is not supported, or the files are untagged. Now, when a music file is found that is not supported or the file is untagged, bliss logs a message in the activity stream.
In addition, I made a fix to the ID3v2 tag type code. Before, when adding an ID3v1 tag using an ID3v2 tag as the source for data, bliss would fail if the source ID3v2 tag contained multiple 'comment' frames. Having multiple comment frames is quite common if you've ripped CDs using iTunes. bliss would display 'Unknown' for the album, and within the album detail screen you would see the following unhelpful message:
java.lang.ClassCastException: java.util.ArrayList cannot be cast to org.jaudiotagger.tag.id3.ID3v24Frame [... more stuff besides]
I've fixed this problem, so you should now be able to add ID3v1 tags populated with your ID3v2 data, even if they do contain multiple comment frames.
Get the new release from the downloads page. Existing fixes apply, of course!
Thanks to Nina Matthews Photography for the image above.