EN (which powers the Rdio create station feature that rolled out recently) has similarity data and popularity data for songs & artists natively.<p>Popularity of a single song: <a href="http://developer.echonest.com/api/v4/song/search?api_key=FILDTEOIK2HBORODV&format=json&results=1&artist=radiohead&title=karma%20police&bucket=song_hotttnesss" rel="nofollow">http://developer.echonest.com/api/v4/song/search?api_key=FIL...</a><p>List of songs by an artist ordered by popularity<p><a href="http://developer.echonest.com/api/v4/song/search?api_key=FILDTEOIK2HBORODV&format=json&results=10&artist=radiohead&bucket=song_hotttnesss&sort=song_hotttnesss-desc" rel="nofollow">http://developer.echonest.com/api/v4/song/search?api_key=FIL...</a><p>Since we have Rdio in our Rosetta ID space, you can natively use Rdio IDs and get them back in your calls:<p><a href="http://developer.echonest.com/api/v4/song/search?api_key=FILDTEOIK2HBORODV&format=json&results=10&artist=radiohead&bucket=song_hotttnesss&sort=song_hotttnesss-desc&bucket=id:rdio-US&bucket=tracks&limit=true" rel="nofollow">http://developer.echonest.com/api/v4/song/search?api_key=FIL...</a>
Music listening is completely subjective based on the smallest of changes within any given moment. Sure, the ideas of play strength/stars/constant radio/genre/BPM all helps in culling a mood, but it will never go all the way (without some sort of brain connection device).<p>I may create a playlist one day based upon a certain artist (with similar artists in the mix) however the next day I may want to listen to something a bit heavier, making those playlists irrelevant no matter how far I've drilled down my preference list.<p>While Play Strength is a good concept, it's still just a feature that can become just as underused or overused as a star count.<p>Instead of focusing on how 'perfectly-automatic' we can make a playlist based on features such as genre, BPM & play strength, we should be focusing on tools that help better understand our moods, the environment around us & the energy and vibes we intend to create from the music itself. The Effect > The Cause.
Killer feature(idea): Work with a Kinect sensor on a feedback loop to update the playlist based on number of people, size of the room, acoustics, aggregate playlist taste of people who "check-in" to the room so their tastes gets included (you're a good host right?). I imagine it would bring a more social component to the playlist and put that social component to use.
Very neat ideas here. I love the idea of helping Rdio choose what to play next by this combination of your recent plays combined popularity as defined by other users.<p>I also appreciate that many of the UI changes for these features are very subtle.<p>I just wonder how many users would actually find these features useful. I had to explain the concept of the "Collection" of a few people recently, which scared me since it's one of Rdio's core features!
I once had the idea of using markov chains to help build playlists. I find the order of songs can be very important, and that way I could build a more random playlist based liking song B after song A, and just keep going.<p>The problem was two fold, one, I really love whole albums when done right. So that most of the music I listen to is album based. The markov chain is pointless then. Two, I would need a really big data set to make it worthwhile. Rdio has that data set (or possibly even Echo Nest).
I love posts like this having spent a decent bit of time designing a music queuing UI myself. I think number 4 is really interesting if you could get the recommendations right. And you could do it in addition to play strength.
I like the idea of using stars to indicate favorite tracks. iTunes has a 5 star rating system that I use to keep my music organized and I wish Rdio had the same.