web statistics

notes.variogr.am

My name is Brian Whitman. I am a lapsed scientist and sound artist currently co-founder/CTO at The Echo Nest, a music intelligence company in Somerville, MA. As I work on various scaling and media search problems with detours into art projects I'll be posting details here in the hopes that I can learn from others. I'd always like to hear from you if you are working on similar things.

Oct 11th, 2011 @ 8:57 am

Why music ID resolution matters to every music fan on Facebook

Facebook’s music announcement a couple of weeks ago was a huge land grab, an audacious move to get itself ensconced as the nexus of that music platform I’ve been talking about. On paper and on stage the service looked game changing: all your music players and services all in one place, neatly collected with your friends to help you navigate the massive world of music. Myself and my engineering team at The Echo Nest have probably spent as much time thinking about that massive world of music as anyone on earth, so I thought I’d try putting it through its paces.

Facebook’s recently-launched music service now shows every music fan why the crazy and complicated world of music ID resolution matters to all of us. The more social our music activity becomes, the more music data becomes relevant to music fans every day.

Though Facebook music has only been live for a couple of weeks, Facebook is clearly struggling with some well-worn challenges in music ID resolution — problems I’ve been dealing with for many years now. Below are some examples highlighting the promise of Facebook music and some common music ID resolution problems they’ll need to fix to really deliver on the promise…

The holy grail — ‘universal song ID’

The only way social music features can work is if the song you want to hear actually plays.

If you’re listening to a song in Spotify, it will broadcast to Facebook and all your friends see what you are listening to in real time0. If they want to play along, your friends click a simple play button to hear it themselves. No Spotify? No problem— Facebook launched with a huge array of music content partners (with some conspicuous elephants missing) and, if that song is available in your choice of player, it will play with no “friction.” You’ll see something nice like:

Which opens the song in your selected player (in this case, it’s Rdio, which just needs to be open in your browser.) This is inconceivably great for music consumers— there’s a lot of great competing services, all with unique features and cost structures, and giving more choice is always good. I may want to use MOG because it has excellent Echo Nest-powered discovery features. Or Rdio or Spotify because they allow 3rd party mobile apps. Or Slacker or iHeartRadio for a radio experience.

What song is this?

This is all music-world changing stuff, if it worked. When I first played with Facebook Music, I tried a simple example. I put on the most terrible popular song I could think of in my Spotify player:

And then I asked Facebook to “Play in Rdio.” I heard something sort of like it but not exactly:

Here Facebook has decided that Rdio’s version of “Your Body is a Wonderland” is a sounds-like version from “The Hit Crew.” I cannot think of a worse fate: hearing something worse than John Mayer when you have to click on a link that says John Mayer. (Consider clicking on a Google search result for your dentist’s office phone number and getting your ex-girlfriend instead.)

At The Echo Nest, we know “The Hit Crew” all too well; they crank out “soundslike” versions of tunes. This is a great example of a basic music resolving problem: every song in any reasonably sized catalog has dozens of karaoke versions, covers, instrumentals, yoga mixes, etc. For Facebook to resolve a top 20 single to its sounds-like version is pretty ugly. What’s going on?

Moving on, that Glasser song up top? Later that day I clicked on another friend listening to the same song, but it was different this time:

Wait a minute, what’s the difference? I obviously know what’s going on — the Spotify “Apply” is from a compilation while the Rdio version is on the full length release. If you click on the release version on Spotify, you can resolve the song to any other service for your friends and get recommendations, or participate in the social listening experience. But if you click on the compilation version (which is the default when typing Glasser Apply in the Spotify search box), you get nothing. The result: the song you hear might as well have been something you recorded in your basement last night, even though Rdio has what you were hoping for:

This is another common ID resolution problem. Facebook likely isn’t working from a canonical database of songs or artists, rather using loose references to them from their own data and partners. And the glue linking those ID structures together is brittle, making for risky connections and some strange user experiences when translating across services.

Why it matters

Accurate resolving is the necessary backbone of social music.

These examples show that ID resolution isn’t just the plumbing underneath a social music experience — it is the foundation of any good music service that allows sharing. If songs don’t play when they should or link to the wrong song, people can’t talk about them.

Even imagining a world in which there is only Spotify in Facebook, consider the following realities: any real music fan will want to connect with other types of services: radio players like iHeartRadio, video services like VEVO, reviews, blogs, biographies, artist photos, games, publishing platforms like Soundcloud, and so on.

We obsess about this problem. I’m guessing Facebook is obsessing about it now, because it introduces friction millions (or billions) of times per day into what Facebook wants to be a “frictionless” experience. The more social your music activity, the more you’ll agree that any decent social music service service needs to know that two slightly differently spelled artists may be the same artist. Or that the radio edit of a song can be played in place of the single version.

As implemented, the v.1 Facebook music experience is like comparing snowflakes with a ruler. Right now it impacts the user experience, but the effects could definitely get worse as more users and more services join the fray.

For me, clicking around Facebook Music these days is tough. It’s rare that anything I’d want to hear gets resolved properly:

Of course, EN knows the song exists in Rdio, as does Rdio’s API. Why doesn’t Facebook?

Artist pages and context

As you can probably tell, song resolving is bothering me enough; but the Facebook music application I was most excited about was the addition of content to its massive database of context. Facebook users or page owners can tag artist names in their wall posts and events and Facebook will helpfully make that artist playable if it knows about it:

Here Facebook made a hover link for the band tapes ‘n tapes on a page for the venue Brighton Music Hall playable by choosing a random music service that can play songs by that artist for you. This is very similar to Google’s old “Music OneBox” which aggregated MySpace, iLike, LaLa and a lot of other websites you don’t use anymore. Great for listeners, (maybe) great for services, great for the bands. But here’s another area where ID resolution problems make the user experience fall down.

It doesn’t take long to find bands that Facebook simply doesn’t “know” about, which is fascinating given the breadth and depth of their user entered and maintained “community page” and fan page structures. For example, one post down on the Brighton Music Hall page is a note about the great Dirty Beaches (Echo Nest JSON):

Where is the player? Spotify has a lot of Dirty Beaches, as do many of the services I tried. It appears that any relatively recent or independent band1 simply does not get the player, no matter what services can support playback. This is very sad for the musicians and or listeners like me.

It’s clear and not particularly surprising that Facebook has trouble determining the identity of musicians on its own site— even those that have well groomed artist pages supplied by management with download widgets and tour details.

One of the Echo Nest rites of passage is for an engineer to uncover details automatically of the classic rock group “The Band” from the internet— and our recent push to know all we can about Facebook artists and their pages was a two month 3 engineer effort that uncovered a cascading series of Facebook pitfalls in which “The Band” was actually an easy one. One Echo Nest employee wrote me a surreal late night email asking me to make sure he was still sane as the various Facebook data gathering APIs appeared to be non-deterministic: successive calls would return completely different results2. I was grimly delighted to see that Facebook’s own engineers faced the same problems we did. For some reason, it looks like we do a much better job at resolving Facebook page IDs. Again, this could definitely change as the Facebook service matures — they got a lot done in a short amount of time and Facebook music just launched. Here’s our Facebook data about “The Band” returned from a simple search for “The Band” that links to the very professional and official:

Facebook seems to want to take you here, a twilight dead letter zone of people talking about “the band” in other contexts. It’s not a page or a community page and therefore does not let cross-service resolving or context work. It looks like a SEO trap and seems to have conned 2,503 confused people:

You can see this in their music app whenever you see a band name all alone with no other information at the top. They have trouble with another favorite around here, artist resolving 101 pop quiz post-punk 80s candidate The The3:

These are not easy problems to solve. A huge class of Facebook artist resolving issues seems to come down to “merges” — artists that may be known as different names, aliases, nicknames, side projects or foreign language names. We maintain a huge database of musical aliases (“Led Zep,” “BEP” etc) as well as collaboration names and misspellings as perfect resolving against text and search is something we work very hard on. But Facebook doesn’t like seeing “Tom Jobim” because they only know him as “Antonio Carlos Jobim”:

For example, any music service worth its salt has spent countless hours debating whether to assign Tom Petty and Tom Petty and the Heartbreakers the same database ID (the answer is no, by the way.)

But when I listen to “Free Fallin’” in Spotify (Petty solo) Spotify gets it right but I am not allowed to hear it in Rdio because it doesn’t match up to their (incorrect) assignment of the song to the heartbreakers:

And this is “Free Fallin’”, a song that is taught to sixth graders and I am pretty sure is the state anthem of California. Same goes for other popular artists who’ve performed with and without named backing groups:

A real world example of this4: a particular dear sensitive friend in London was having a late night Jason Molina bender broadcasted on his Facebook feed. This is an inspiring use of social music and where Facebook will eventually shine— seeing what my friend is listening to, I can listen along and maybe tell him to put down the bottle of gin and go to sleep. However, I can’t hear it:

Why? Rdio had tons of Molina and of course that particular song. It’s because Facebook didn’t do a good job of resolving5 — to them, Jason Molina is: “Songs: Ohia,” the name of one of his side projects. And of course neither Rdio nor any other service has a song called “Get Out Get Out Get Out” by Songs: Ohia, because it doesn’t exist. This is a Jason solo song. Here’s how Facebook got so confused:

Facebook seems to rely strongly on Wikipedia for much of its artist data (their “Community Pages” are CC licensed WP copies), and Wikipedia’s editors auto-redirect Songs:Ohia to Jason. So somewhere in the depths of Facebook’s graph database is a pointer that goes the other way. This pretty much invalidates Jason’s chances of ever getting social music love on Facebook. I doubt it’ll get fixed any time soon. But maybe this one will:

That’s Selena Gomez. She’s not Facebook Music compatible, for a different reason — she has a double life. Selena is listed in Facebook as an “Actor/Director,” not a “Musician/Artist.” You can’t click through from a friend’s listen to a music service, and you can see her page from any stream activity. Can you guess why? It’s To Facebook, she doesn’t make music. This affects a lot of edge-straddling pop stars, with some notable exceptions. I noticed that “Glee Cast” was manually fixed, as was Kraftwerk (who were a “Local Business” until a month ago6) but comedians and musicals still are denied access to the social music party.

What could they do and what should happen

Quite a lot of Facebook’s resolving issues could be fixed by ingesting catalog in a “musical” way — not just treating strings such as artist names or song titles as database IDs as they seem to be doing. There are some pretty well-known approaches Facebook could take to fix these problems. They can use audio fingerprinting, for example (of course, I know of a couple, even an open source one.) They can work on mapping artist names and song titles together a bit more intelligently as we’ve been doing for awhile: one of The Echo Nest’s main services is project Rosetta Stone, an “ID space” resolution system that can quickly identify songs or artists in any platform: generate an eMusic ID from a Spotify URL, or a MOG ID from an audio fingerprint, or any combination possible. Facebook could have merged the data feeds in some slightly intelligent way to match songs across releases. Or some of their millions of users could edit or automatically de-reference the metadata7. It’s clear that none of this happened.

Social music is the future of music. Facebook is pushing this future forward more than anyone. It’s clear that Facebook has some trouble ahead of them in the resolving space and I’m sure they are obsessing about it as much as I do. They are going to have to get down with the one big database of music scenario sooner than later. Facebook has more users and data than anyone and I’d love to see a concerted effort to build a true world of connected music via the new Open Graph. But there’s a lot more work to do before that promise is realized.

- brian@echonest.com / @bwhitman

Thanks to EVB and PBL and JL and MO for editing help


0 Spotify actually had the nerve to call it “scrobbling,” which I doubt the inventor of the scrobble, Last.fm, are very happy about as Facebook’s integration is a clear competitor

1 I can’t prove it yet, but I think this feature may be limited to artists appearing on an older dump of MusicBrainz— which is too bad as they only have 600,000 artists and are relatively slow to update

2 Try this (failing) query for The The. You’ll either get The Bible or the Simpsons as the top result, which I found very apropos. Maybe the engs pit memcache servers against each other “I don’t like fighting either. Get here first” style

3 I’ve heard this is a Google interview question and is still to this day one of the first bands I type into a new music service after Blitter and Various Artists.

4 as no one really needs help listening to Tom Petty, it is somewhat an inherent instinctual property of the world that Tom Petty vibrates speakers

5 You can see Facebook’s resolved name if you click on a song title in Facebook Music after hovering over a music listen status

6 they surely have a fan in Facebook engineering

7 It’s likely this may be happening to some extent. If I play a song in Rdio that Facebook did not previously “know” about without Facebook’s help the next time I try it in Facebook it appears as an option. I’m not sure if this persists to other users.

Jun 19th, 2011 @ 9:17 am

The Echo Nest “puddle” and artist entity extraction

(Cross posted from my post at the Echo Nest blog, with additions)

It’s the year 2006 and co-Founder Brian and early Nest developer Ryan were trying to figure out how to associate the world of free text on the internet to musical artists. We already were crawling tens of thousands of documents a day (now millions!) but a Google-style index of unstructured text about music was not our goal. We needed to somehow quickly associate a new incoming page to an artist ID so that we could quickly retrieve all the documents about an artist as well as run our statistics on the text to find out what people were saying. Brian sketched this classic diagram, soon to be placed in the Echo Nest Museum (next to SoundCloud’s award):

That crudely drawn “blob of intelligence” that could take unstructured free text and quickly identify artist names quickly became known as “the Puddle,” a term that entered Echo Nest lore alongside “grankle” and “flat.” We use a form of the Puddle to this day. Every piece of text that our crawlers generate goes through a custom entity extraction process— it’s how we know what blogs are writing about which artists and it’s what powers our artist similarity engine, as we need to figure out what people are saying about which artists as soon as it’s said. It’s a powerful and fast changing piece of our infrastructure trying to attack a hard problem.

Entity extraction is even more useful today. If you wanted to build a Twitter app that figured out the bands a user was talking about, how could you do it? You’d need a huge database of artists (check, we have over 1.6 million), a lot of fast computers (check), and tons of rules learned from our customers over the years about artist resolution— aliases, stopwords, tokenization, merged artists and so on. Given a simple tweet:

Can we figure out what band Brian’s talking about, automatically? Well, now you can. We’ve decided to open up a beta version of our entity extraction toolkit called artist/extract to developers. Pass in any text and you’ll get back a list of artist names (in order of appearance by default, but you can sort by any Echo Nest feature) that was mentioned in the text. Think of it as a form of artist search that can take anything — Facebook comments, tweets, blog posts, reviews, SMSes.

We support all sorts of fancy things to help you. We know that “Led Zep” is an alias for Led Zeppelin. We try to deal with common word band names via capitalization rules. You can of course detect multiple artists in the same block of text. And you can use personal catalogs and Rosetta Stone to limit results to music your user owns or is playable by our partners Rdio or 7digital. And you can add the standard buckets — hotttnesss, familiarity and so on — to get information about the artists all in one call.

This is beta and still has some issues. It lags a little behind our internal entity resolving for performance reasons, and things like this can never be perfect. But it’s very helpful. Some ideas we have batting around:

Paul made a great demo if you want to see it in action:

Enjoy. Let us know if you have any issues!

Oct 22nd, 2010 @ 10:21 am

The future music platform & music startups’ imminent success

Right as I got on the plane to Amsterdam to attend the great Music and Bits conference that headlines the Amsterdam Dance Event, I was sent this article that I am sure a lot you have already read: Are music startups destined to fail? Being the co-founder and CTO of a music startup that is not failing anytime soon, I felt the urge to respond in some meaningful way. Thankfully I was about to get on stage in front of the best and brightest of Europe’s music people, so I took the opportunity to work Dalton’s warning into my talk.

Let me first correct Mashable — your headline is terrible. Amazingly, and I think this is the first and last time I’ll defend these guys but when Techcrunch is more measured than you you may want to reconsider your editorial policies. Dalton said nothing about mass failure. Echo Nest was one of their first API clients and we were about to work together before they went away, we all give each other big hugs and air kisses. He was not trying to predict my particular imminent doom. However, he was discussing something that is very hard for a lot of people and it is Echo Nest’s business to make this easy and excellent. So I made my talk about that — there is this thing happening, that I call “the music platform,” that yes, we’re working on but so are a lot of other guys, and if you are thinking of a great music experience don’t let these guys put you off. We are here to help.

The future music platform

What is a music platform?

First, we all agree that the future of the music business is apps. This is not just a party line EN takes; it is a real thing that is happening. In the past couple of years your choices as a music listener have gone up exponentially. You can hear a song on any number of mobile applications, web sites or downloadable programs. It doesn’t take a “music futurist” to point at the movement from digital downloads to interactive applications— Pandora, Spotify, Guitar Hero. Shazam & Soundhound, Hype Machine, Shuffler. Even the killer iPad game, Osmos, is really an enhanced delivery mechanism for Loscil and labelmates. There is someone now making a thing somewhere that will destroy the iTunes interface (finally) for browsing. There are a few guys pumped after a Music Hack Day that just filed papers in Delaware for a new radio app. And, yes, Google and Apple are about to throw their gilded monocles, canes and top hats into the ring any day now.

So we’ve identified three very hard things in getting these apps out there. These three put together comprise a music platform— someone to help you take care of all the annoying stuff while you concentrate on the experience.

The first one is our bread and butter, what we call “engineering.” The Echo Nest has been doing this for years — providing an outsourced music database to companies and independent devs — and we’ve gotten quite good at it. We have a database of over 10 million unique songs and 1.2 million artists, each with insane amounts of metadata. We know the pitch of the third sound of the first b-side track on James Blake’s “CMYK.” We know how many people called Spoon’s latest record “angular,” and what web sites they said it on. We can give you the tempo of any song, similar artists, loudness, a recommender and new stuff like an excellent music fingerprinter, or the stuff needed to choose concerts based on the danceability curve of the setlists. You no longer need to worry about “big data” or figuring out why Tom Petty is not the same band as Tom Petty & the Heartbreakers (ps work here if that pisses you off.) Other guys can help you with this too — the amazing Musicbrainz, of course last.fm and some other upstarts.

The second is audience— with your new experience, how can you get out to listeners? Fortunately there are very large companies competing for developers’ attention. At the rate we seem to be headed there will be an app store for combination microwave oven/toasters. But in the short term, audience from a mobile app store, social network is here now and viable. But we’d like to think it goes deeper than that— and by working with the content providers (more on that soon), we’ll be helping app developers get in front of fans with direct artist marketing.

The last, and trickiest, is content. As a music app developer, until about two months ago there was no easy way to get actual music to play without negotiating your own content deals. This is the last thing a dev wants to work on and we’ve made it our goal to help these guys out. This was the crux of Dalton’s pain, and from now on it may be helpful to consider the Echo Nest as a “proxy for the music industry.” We’ve already announced one major label deal to allow content, and we currently have two deals with digital distribution channels. With these deals in place, it takes an amazingly short amount of time to build your future vision of music. Look at this app, made in 24 hours— it is a Pandora style streaming radio app but has 10 million songs available. It uses only the Echo Nest API for all of its features. Annoying things like DMCA rules are built into our API.

Why it is awesome

I want an iPhone app that does Josh Millard’s Frasier fever dream on Prisoner episodes. I want a text message with a link to streaming audio whenever ILM flips out over a new artist. And I want imeem back, they were awesome. And with everything we’re trying I think it’s finally possible— the way we are experiencing music is changing and we want to work with brilliant people to make it change even faster. It’s not perfect yet, but we’re on the right track and I don’t think you’ll find a more focused and insane group of people in the world trying to make this work. If you’ve got ideas or questions, write me a mail.

Apr 23rd, 2010 @ 11:10 pm

The Echo Nest Musical Fingerprint (ENMFP)

Tomorrow begins MHD Amsterdam and at it The Echo Nest is releasing a few new things. Some of our engineering team (who deserve a severe callout for all their work, let me stick with their codenames) have been working tirelessly to get “songs” to be a first-class member of our API, and as of today, they are — we now track many millions of songs and you can query for them by name and receive all sort of useful metadata, get similar songs (with amazing results even very deep in the catalog), and even get free (legal) playable audio for a huge collection of major label content (more on this later.) As part of this push to provide data about songs, we have been working on a music fingerprint— a way to resolve an unknown audio file (what we call a “track”) to a large database to identify it in our world (as a “song.”) And we’re ready to release this to the community to see how it performs in the wild.

The design goals of our FP were to base it on Echo Nest audio features, to make it simple to implement and to make it as open as possible. Lock in of content resolution data is a terrible thing, and a large part of The Echo Nest’s focus is to make it easy for people to figure out what their music is about without getting stuck in ID space hell. If you have an iTunes collection and want to automatically make Spotify playlists, we should be able to help you. If you write an app that scans your hard drive for tracks to make great recommendations against MOG or the Limewire store, we should be able to help you. If you want the tempo of every song in someone’s terribly labeled iPod library, we should be able to help you. A fingerprint to us is a utility call— like our search_artists — a way to resolve a music identifier to our set of ID spaces. Echo Nest song IDs, if you choose to use them, give you all of our stuff “for free” — from a single EN SO ID you can get recommendations, artist pictures and bios, blog posts, record reviews, and of course all the audio analysis: the tempo, key, events in the song. But over this year we are rolling in support for any other ID space via Rosetta Stone, so you will be able to return Spotify IDs or get last.fm URLs of the song from the fingerprint. Our goal as always is to be the bridge between music and amazing applications— a platform for music intelligence that lets anyone use any service on any audio to discover and interact with music.

How it works

Our fingerprint is called the Echo Nest Musical Fingerprint (ENMFP) and is based directly on parts of our audio analysis engine that already powers tons of interactive music and music search apps across the globe. We get a detailed understanding of what is happening in a song (note: a song, not just an audio file) for “free” simply by having Tristan be our co-founder, so our work on the ENMFP started there. We worked with audio scientists on ways to scalably hash parts of the analysis and query for “codes” — a sequence of numbers that can match the same song to the ear. We identified an efficient series of transformations of our low level segment description data to make a very accurate code, and our engineering team built a suite of tests, backend servers, and a query API. The ENMFP comes in two parts. The code generator is a binary library that you can compile into your own app. It takes in a buffer of PCM samples (in practice, give it around 20 seconds of 22050Hz mono float PCM), runs a series of signal processing algorithms on the samples, and returns a list of codes. It is as simple as

    Codegen * pCodegen = new Codegen(_pSamples, _NumberSamples, offset);
    for (uint i=0;i<pCodegen->getNumCodes();i++)
        printf("%ld ", pCodegen->getCodes()[i]);
The server maintains a canonical list of songs with corresponding codes and performs fast lookup. We’ve based the server on some popular open source indexing and storage platforms, and we’ll be releasing our modifications to them as a reference implementation shortly.

Use and open nature

Almost all of this implementation is open. The data behind the server is open by design. Anyone can request full data dumps. Anyone that wants to run their own server can provided that they mirror with the other servers. The only non-normative license is in the code generator, which for now is binary-only, available for most platforms (Windows, Linux 32 & 64-bit, Mac OS X, mobile forthcoming) and free to use in any sort of application — commercial, open source, free, webapp, etc. The only pertinent restriction is that codes are sent to only “authorized servers.” The design of this license ensures that one party does not attempt to usurp the ID resolving space out from under anyone. If The Echo Nest dissolves or gets bought by a large fish cannery on accident, we want to make sure the data and query service live on without us. As a corollary, we don’t want anyone “hiding” new resolved tracks from the ID space. Anyone that collects new songs via this fingerprint has to share their data, plain and simple. This hopefully ensures that over the years the combined knowledge from all uses of the ENMFP will catalog every single piece of music available on the internet, and the data will be available to all. We want the ENMFP to grow into a public internet utility.

Features

Anti-features

How to use

First, you need an Echo Nest developer API key if you don’t already have one. Next, familiarize yourself with the alpha_identify_song API. (As of right now, before we release the server source, the Echo Nest is hosting the only query server via this API.) There is instructions there on how to receive the libcodegen binaries. The libcodegen package also ships with an example code generator that you can call from the commandline, so no worries if you aren’t ready to do some compiling.

How to help

We see the ENMFP as a community project just getting started. If you are interested in booting your own mirror server, or if you have experience with FP tasks, want to help with QA, automated testing, have a large catalog to ingest or test against, please get in touch.


we are especially grateful for the work of Unrepentant Nagios Installer (UNI), Guy Who Fights With Me About the Word “Track” Every Fucking Day (GWFWMAWTEFD), Drinks Turret Coolant (DTC), Mr. HTML5 Canvas 2010 (HC2), So-Glad-I-Kept-You-Out-Of-The-Media-Lab (SGIKYOOTML), Skinny Tie (ST), Main Ontology Offender (MOO), Future Performable Employee (FPE), and of course Ben Lacker (BL)

Feb 7th, 2010 @ 6:18 pm

Jan 29th, 2010 @ 12:45 pm

Primer on new Echo Nest search_tracks, capsule, and get_analysis APIs

Note: if you are interested in these APIs know that they are no longer alpha — see our new Song APIs for the latest information. At Stockholm Hack Day we’re announcing three or four new APIs that are going to stay in our “alpha” sandbox for now. These are officially unsupported but we will work with anyone who has a use case for them. For now, the instructions will stay here until we promote them to production APIs.

For all of these alpha APIs you will need a developer key from The Developer Nest. I will use “YOUR_KEY” as the key in the examples, make sure to replace this or none of the calls will work. We reserve the right to pull or throttle access to alpha APIs at a different rate from the supported ones. Please be warned that these are not production ready, we will be making enhancements and restarting servers, there will be guaranteed downtime. If you are interested in building a product with these new APIs please contact us..

capsule

What: returns a rendered mp3 and swf url given an XSPF playlist that is composed of a “megamix” or “jam” of the included tracks in order.

How:

http://developer.echonest.com/api/alpha_capsule?api_key=YOUR_KEY&xspf_url=http://path_to.com/playlist.xspf

Returns

{'flash_url': 'http://thisismyjam.com/flash/jam.swf?api_PNWUcuxGJ5/1264353117.xml', 
'tag': 'api_PNWUcuxGJ5', 
'mp3_url': 'http://echonest-capsule.s3.amazonaws.com/api_PNWUcuxGJ5/1264353117.mp3'}

Parameters:

Returns:

Notes:

get_analysis

DEPRECATED 4/23/10 — GO HERE

What: returns the entire analysis for an Echo Nest track ID. (more ID types to come soon.) Saves multiple calls (get_segments, get_tempo, etc etc) and allows you to get the analysis of tracks you did not upload (after finding them with search_tracks.)

How:

DEPRECATED 4/23/10 — use songs/search with the audio_summary bucket to get the full analysis for a song
http://developer.echonest.com/api/alpha_get_analysis?api_key=YOUR_KEY&trackID=TRMAOUK1254889A145

Returns

{"status": "OK", "analysis": 
	{"bars": [{"duration": 0.75963000000000003, "start": 0.37046000000000001, 
	...

Parameters:

Returns:

Notes:

search_tracks

DEPRECATED 4/23/10 — use songs/search for this

What: Given a number of possible query types return a list of matching tracks that The Echo Nest maintains. Search on metadata (artist, title), audio data (tempo, duration, loudness, key, mode, etc), cultural data (automatically computed tags, aka “topterms”, familiarity and hotttnesss, collated edited style and genre classifications, etc.) and even location data (latitude / longitude of artist origin.)

How:

DEPRECATED 4/23/10 — GO HERE
Look for a song:
http://developer.echonest.com/api/alpha_search_tracks?api_key=YOUR_KEY&title=My%20Sound&artist=Squarepusher

Get the loudest romantic song:
http://developer.echonest.com/api/alpha_search_tracks?api_key=YOUR_KEY&query=romantic&sort=-loudness&results=1

Get the songs between two tempos:
http://developer.echonest.com/api/alpha_search_tracks?api_key= YOUR_KEY&constraint_tempo_min=120&constraint_tempo_max=125&artist=Squarepusher


Returns
{"status": "ok", "results": 
	[{"trackID": "TRMAOUK1254889A145", "title": "Dream On", "artist": "Aerosmith"},
	...

Parameters:

Returns:

Notes:

identify_track

DEPRECATED 4/23/10 — use songs/alpha_identify_song

What: Returns metadata for a track given Echo Nest Musical Fingerprint hash codes.

Notes:

Jan 25th, 2010 @ 10:32 am

Moonbelly

Geocoded place names mentioned in the entirety of “40 Stories”, via Google Books, some sort of future library that no one talks about as we are too scared of it:

Moonbelly sang a new song called “The System Cannot Withstand Close Scrutiny.”

The system cannot withstand close scrutiny
The system cannot withstand close scrutiny
The system cannot withstand close scrutiny
The system cannot withstand close scrutiny
Etc.

—City Life, Donald Barthelme

Dec 13th, 2009 @ 6:19 pm

KFW’s excellent “Modena” video.

Dec 6th, 2009 @ 5:43 pm

(via meaninglesssyllables)

RIP Jack Rose, 1971-2009. Please, if you can, put on “Kensington Blues” for me.

Reblogged from a-ne-na.

@ 1:36 pm

I hate you, internet

I hate you, internet

Archive · RSS · Theme by Novembird