Into the cloud: introducing OneMusicApi
One of the challenging parts of writing and maintaining the bliss codebase are the integrations. bliss integrates with MusicBrainz, Google Images, Discogs and Wikipedia to fetch cover art and metadata. Those databases are pretty vast and bliss does a good job of finding information, but unfortunately when the interface through which the database is accessed changes, a change is required in bliss's code to cope with the new interface. This means bliss has to be updated on each machine it is installed on!
I'm working on OneMusicApi, a project to move bliss's cover art and metadata lookup acumen onto the Web, and I'm opening access to it for interested startups, hackers or developers!
In a programmer's world, the interface to a Web database is called an ' API'. There are APIs for all sorts of things out there on the Web. Google Maps has an API to allow it to be integrated into Web pages, Amazon have several APIs that allow you to sell products and retrieve product information. And then there are the music metadata APIs, like those bliss uses.
There are several of these, and they can generally be divided into the free (as in financial cost) and the outrageously expensive. bliss only uses free databases; MusicBrainz, Discogs and Wikipedia (Google Images is just used for manual cover art changes). However, because of the smarts coded inside bliss it is able to get a pretty high hit rate by aggregating each of those databases.
I've long wanted to move bliss's cover art and metadata hunting skills online. This means the bliss code that performs searches for cover art and metadata would actually execute "in the cloud". Then, it would provide its own API which the bliss software would integrate with. The real benefit of this is that when an external API changes I don't need to update all installations of bliss, I just need to change the code "in the cloud".
So far so good: fewer updates of the bliss software will be required, once this is done.
But of possible further interest to all of the programmers, developers or hackers out there that read the Music Library Management blog: I am looking to allow access to this API to others for a low cost.
Having personally approached the incumbent commercial music metadata providers I've learnt one thing: access to commercial music metadata APIs is expensive. This new API, which I'm calling OneMusicApi, is intended to offer API stability, great coverage and a way of accessing all the data in the multiple online APIs by writing your integration code just once.
Thanks to webmove for the image above.