News from The Echo Nest
-
API Update (Project Rosetta Stone)
February 10 -We've just released an update to our API to support non-Echo-Nest identifiers. This addition will allow you to query the Echo Nest services with a Musicbrainz ID, for example, and get back Echo Nest IDs, as well as other foreign ids. We hope this will make it much easier to integrate our services with others. Read more about Project Rosetta Stone over at: musicmachinery.com
-
New APIs released
February 9 -Brian has released alpha versions of a new set of APIs including the much requested 'search_tracks' method. This API will allow you to retrieve track analysis from any of a set of millions of tracks. Read more about the new APIs here: Primer on new Echo Nest search_tracks, capsule, and get_analysis APIs
-
New Pyechonest library
November 19 -We've just released an update to the pyechonest library. The new version adds support for some of the new API features, including the ability to get artist images and artist biographies. Download the new release from: the pyechonest page.
Here's an example of using pyechonest to find an artist image and bio for the band 'weezer':
> from pyechonest import artist > weezer = artist.search_artists('weezer')[0] > weezer.images()[0] {'url': 'http://upload.wikimedia.org/wikipedia/commons/2/2b/Weezer.jpg'} > weezer.biographies()[0] { 'text': ''As one of the most popular groups to emerge in the post.} #many lines omittedWe've also expanded the number of similar artists you can return from the artist.similars() call to 100. Give the new version a try, have some fun, and let us know what you think.
-
Artist API Updates
November 18 -In preparation for the Boston Music Hack Day, we are adding a few new, nifty items to our developer API that should make it easier for you to develop interesting apps.
API changes include:
- get_images - this new API call returns images for the specified artist. Note this is a sneak preview - although we have images for over 60,000 of the most popular artists, we are still working hard to expand the image coverage to all artists. In the next few weeks expect to see a larger set of images from a diverse set of sources.
- get_biographies - the new API call returns biographies for the specified artist
- get_similar - we've expanded the number of similar artists that you can retrieve from 15 to 100.
- buckets - we've added a new 'bucket' parameter to the search_artist, get_similar and get_profile call. This parameter allows to retrieve additional data about returned artists without having to make additional calls.
- echosource - certain content that we return (images for example) may have a licensing info associated with it that indicates allowed uses for the content. Certain methods now take an optional 'license' parameter that allow you to restrict returned content to that which matches the indicated license. This is a sneak preview of this feature. We'll be adding more licensing information to our data over the course of the next month.
- news, reviews, blogs - we've revamped the get_news, get_reviews and get_blogs methods so that they now return the freshest data first.
We hope you like the new additions. Please let us know if you have any questions!
-
new Echo nest Java Client
November 18 -We've just released an update to the Java Client for the Echo Nest API. The Java client supports some of the new API calls that we've been rolling out:
- getImages - returns images associated with an artist
- getBiographies - returns biographies associated with an artist
The library and source can be downloaded from google-code
-
New 'Opportunities' forum category
November 2 -We've added a new category to the forums called 'Opportunities' where people people with interesting project ideas can get together. If you have an interesting project that you need help with, or you want to offer your Echo Nest skills to the community you can post information about the opportunity in this forum.
-
analysis version 3 is now the default
October 21 -We have just switched our analysis methods to use our new and improved analyzer by default (analysis_version=3). This means that all new upload tracks will be analyzed with the new version and any requests for analysis data (such as getting beats) will look for analysis_version=3 data. The new analyzer gives better data and is much more stable than the previous version, so we recommend that you use it, that is why it is now the default.
Note however that, with this change in default behavior, analysis for tracks analyzed with the old analyzer will not be returned. To get the old version of the analysis set the 'analysis_version' parameter to 1. For example, the call:
http://developer.echonest.com/api/get_beats?api_key=your-key &id=music://id.echonest.com/~/TR/TRLFPPE11C3F10749F&version=3&analysis_version=1will get beats from a version 1 analysis.
To see if a track already has an analysis for a given version you can call get_metadata with analysis_version set to the desired version. If the analysis status is COMPLETE then there is an analysis available, if the status is UNAVAILABLE this means that we know about the track but we haven't analyzed it yet with the given analysis_version - in which case you can reanalyze the track using the new 'analyze' method.
For example, the call:
http://developer.echonest.com/api/get_metadata?api_key=your-key &id=music://id.echonest.com/~/TR/TRLFPPE11C3F10749F&version=3&analysis_version=1will return metadata for the track with the given ID. Included in this metadata is an analysis status. This status can be one of:
- UNKNOWN The track has never been submitted for analysis. Submit the track for analysis.
- UNAVAILABLE The track has not been submitted for analysis for the requested analysis version. Resubmit the track to get the analysis for the requested version.
- PENDING The track has been submitted for analysis, but the analysis is not yet ready. Wait for status to change.
- COMPLETE The track has been analyzed.
- ERROR The track could not be analyzed.
Note that the client libraries such as pychonest should already handle this under the hood. If you are writing your own track uploader, follow these steps:
- Get the md5 for the track
- call get_metadata with the md5
- If the analysis status is UNKNOWN upload the track, poll get_metadata until the analysis status is COMPLETE
- If the analysis status is UNAVAILABLE call analyze with the md, poll get_metadata until the analysis status is COMPLETE
- If the analysis status is COMPLETE, the data is ready, call get_beats etc
-
New Java Client for the Echo Nest API
October 15 -We've pushed out a new version of the open source Java client for the Echo Nest API. The new version provides support for the different versions of the Echo Nest analyzer. You can use the traditional, but somewhat temperamental version 1 of the analyzer, or the spiffy new, ultra-stable version 3 of the analyzer. By default, the Java client uses the new analyzer version, but if you need your application to work the exactly the same way that it did six months ago you can always use the older version.
You can download the new Java client from the echo-nest-java-api code repository. The new version is: echo-nest-java-api-1.2.zip
-
Brian speaks at Music and Bits
October 13 -Echo Nest co-founder Brian Whitman keynotes at the upcoming Music and Bits being held in Amsterdam on October 21st. Brian will be talking about how we can take advantage of music data and analysis. Brian says: "The next generation of music search and discovery platforms are now here — they can recommend you music or organize your catalog automatically by listening to it, predict which countries to launch your band’s next tour or even help you build synthesizers that play from the entire world of music. Artists, music sites and fans should embrace the explosion of music data on the web and I’ll show you what’s possible, what to watch out for, and what’s next." Read more about the various talks on the Music and Bits program page.
-
New Processing library
September 30 -Developer melka is continuing to provide new APIs for The Echo Nest. He has just released echonestp5, an open source client library for the Processing programming environment. echonestp5 makes it easy for Processing developers to use the Echo Nest API for music analysis. More information on melka's echonestp5 site. Source for the library can be found on the echonestp5 google code page.

