Nine months ago, we launched the MusicDNS service, which provides song identification, and simple artist/title metadata. Today, we’re launching a preview of the next iteration (MusicDNS 1.1, if you like).
So, what’s new? Well, we’ve been spending a lot of time on the backend, improving our data mining algorithms, adjusting hardware and so forth. For our users, this should mean better quality data, and more of it. In particular, once we launch, there will ongoing updates to the data - this should be at least weekly. So new metadata will be flowing in much more smoothly.
Aside from the overall cleanup, we’re also introducing new types of data: Album data (name, year of release, and track numbers), first known year of release for tracks, creative commons licenses (if known), and a “consensus” genre. I’ll cover each item briefly, then wrap up with info on how to get the new data.
Album Data: The album data which will be initially available comes from our friends at MusicBrainz. This does a simple lookup from PUID’s to the MusicBrainz tables, and sends back whatever album information is available. To have MusicDNS return this extra information, add “ext=mb” to the URL when calling the service. If there are multiple albums available, information from each will be returned.
Release Year: The first known year of release for tracks also comes from MusicBrainz currently. This takes the form YYYY-MM-DD where possible, so it’s not restricted just to year, but may also include month and date. Because the data is coming from MusicBrainz, it comes in with the same option as above: “ext=mb”.
Creative Commons: The Creative Commons licenses will be available from artists who have registered their music with MusicIP, and indicated a Creative Commons license. This is free for artists. To get this metadata from MusicDNS, pass the “rmd=2″ parameter (this will include the regular data returned from the older rmd=1 option).
Genre: As I mentioned in an earlier post, genre is a tricky thing. MusicDNS will be providing consensus genres, meaning the genres that most people have those tracks tagged as, aggregated to broad categories. To get this metadata from MusicDNS, pass the “rmd=2″ parameter (this will include the regular data returned from the older rmd=1 option).
In a bit more technical fashion, here’s what you need to play with the new data
now. First, it’s currently available at http://ofapreview.musicip.com, so you’ll need to use that instead of http://ofa.musicdns.org. This service accepts the same MusicDNS keys as the other service, and counts towards your total traffic.The /ofa/1/track? prefix remains the same, as there are no changes which will affect older clients.
The rmd parameter used to accept 0, or 1. It will now accept 0, 1, or 2. If set to 2, then genre and creative commons licenses will be returned in addition to other fields, as available.
An additional parameter is added, ext=<extension-list>. The only extension currently defined is mb, which means return MusicBrainz data. MusicBrainz data consists of info pulled directly from MusicBrainz, namely first year of release, and album title/tracknum/year for each album.
The new return values look like this:
For album info:
<release-list>
<release id="mbid">
<title>NN</title>
<release-event-list>
<event date="[year]"/>
</release-event-list>
<track-list offset="#"/>
</release>
</release-list>
Note that the track-list offset is zero-based, so a value of 0 corresponds to track 1 on a release.
For first year of release:
<mip:first-release-date>[year]</mip:first-release-date>
In each case, [year] may be a “YYYY-MM-DD” form if possible, with more info than just the year.
For Creative Commons licenses (we use xmlns:creativeCommons= “http://backend.userland.com/creativeCommonsRssModule”)
<creativeCommons:license>URL</creativeCommons:license>
For genre:
<mip:genre-list>
<mip:genre><name>Rock/Pop</name></mip:genre>
</mip:genre-list>
If you have any questions, come visit the MusicDNS forums and ask. We hope you enjoy the new free data.
Edit: The schema examples have been updated since the original post to reflect the current MusicBrainz schema.