Recently two modules have been released, the audio.module and the playlist.module. The former defines an audio node, and the latter lets users organize audio into sortable playlists, generating m3u, pls, and XSPF feeds of the playlist. Testers are wanted for both, you can either install the modules yourself, or play around on a demo site:

Try out a demonstration

Audio Module

  • defines an audio node type
  • reads in id3 tags as meta information
  • quick streaming with a flash player (musicplayer.soundforge.net)
  • optional downloading
  • generates podcasts for each user or whole site

Playlist Module

  • defines a playlist node type
  • AJAX sortable lists
  • multiple ways to add audio to a playlist
  • m3u, pls, XSPF playlist output
  • plan to extend playlist support to other media types in the future (video, images, favorite nodes)

Any and all questions, feedback, bug reports, and feature requests encouraged!


Colin Brumelle’s picture

It's also worth pointing out that each playlist generates an RSS feed that is podcastable. That is, each audio track appears in an enclosure tag in the feed. We especially need to test this out with the multitude of popular podcasting clients!

Colin Brumelle’s picture

Also interesting is that the playlist module was implemented in a similar fashion to some of the 'node relationship' talk that has been floating around lately. The idea is that a parent node (a playlist node, in this case) is composed of one or more child nodes (audio nodes, in this case).

I found this was a powerful way to think, and I would like to pull some of this code out and make it more general so we can do things like have a slideshow node type that is composed of one or more images in a particular order. Or maybe a bands fall tour schedule, that is an ordered collection of one or more events.

If anyone is farther along on this, I would be glad to make the playlist module cooperate with any 'node relationship' code that surfaces. But if not, we could try and abstract out some of the code from the playlist module.