Assembla home | Assembla project page
 

Ticket #72 (new Enhancement Request)

Opened 1 year ago

Last modified 1 week ago

Add the ability to stream Last.FM radio

Reported by: swiss Assigned to:
Priority: High Milestone: Undecided
Component: Playback: Internet Radio Version:
Keywords: lastfm Cc:

Description

Add support for listening to www.last.fm through the swisscenter interface, as well as adding the ability to "scrobble" (report to last.fm on) the music that you listen to so that your profile is updated.

The description from the last.fm site:

Last.fm is the flagship product from the team that designed the Audioscrobbler music engine. More than ten million times a day, Last.fm users "scrobble" their tracks to our servers, helping to collectively build the world's largest social music platform.

Last.fm taps the wisdom of the crowds, leveraging each user's musical profile to make personalised recommendations, connect users who share similar tastes, provide custom radio streams, and much more.

It's never been this easy to share your taste and discover new music. Welcome to the social music revolution.

Change History

(follow-up: ↓ 3 ) 05/23/07 09:21:58 changed by swiss

PHP script to proxy the last.fm radio station is complete. It allows you to:

  • Authenticate your username & password with last.fm
  • Tune-in to a particular radio station
  • Stream music.
  • Obtain information on the track currently playing.

However, it appears that the showcenter is unable to play an MP3 stream via the "mp3 playback" commands (with an AOD or mixed AOD/POD). As far as I can see, the only way is to use the "radio streaming" function.

This is a shame because it prevents us from displaying a nice "Now Playing" screen with all the details of the current track.

Limitations at the moment are:

  • It takes about 20-30 seconds for the stream buffer on the showcenter to fill up and start playback. This means that last.fm won't start playing immediately.
  • When you press "stop" on the remote, the PHP script doesn't die. I think it might be something to do with Simese (I'll have to test it on an apache installation to see if this happens on that as well). The PHP script performing the streaming therefore has to be killed manually with task manager.
  • You can't change station while the music is playing.
  • You can't see the track details of what is currently playing.

05/24/07 22:10:57 changed by swiss

  • milestone changed from Undecided to 1.18.

(in reply to: ↑ 1 ) 05/28/07 16:53:23 changed by swiss

The problem with the PHP script not dying has been confirmed as a bug in Simese and will be fixed with upcoming release 1.40 of Simese.

"Now Playing" screen successfully implemented for Last.FM - even downloads a random selection of artist photos to display on the screen.

11/08/07 15:44:44 changed by swiss

(In [853]) Added support for Last.FM. Features added include:

  • Configuration options on the "Internet Radio" config page, including separate username/password settings for each swisscenter user.
  • Scrobbling of all tracks played via the Swisscenter_Configuration
  • Playback of LastFM streams via a proxy script.

Playback of the following Last.FM radio streams are supported:

  • Similar Artists radio
  • Tag radio
  • My station
  • My recommendations
  • My loved tracks
  • My neighbourhood

Refs #72

01/06/08 10:56:37 changed by swiss

  • milestone changed from 1.19 to 1.20.

Last.FM support is currently *disabled* by default (even though it is fully implemented) because there are circumstances where a slow response from the last.fm server causes playback to stall towards the end of a song (at the point where SwissCenter scobbles the song).

I believe it will be necessary to refactor some of the last.fm code to use a short timeouot feature, and to cache any songs which cannot be scrobbled for later submission. There is also (imho) too many calls to authenticate the user when we should instead cache the authenticated session ID within the swisscenter session.

06/23/08 21:52:37 changed by Pernod

  • milestone changed from 1.20 to 1.21.

08/31/08 00:35:28 changed by Pernod

  • milestone changed from 1.21 to Undecided.