Neil Turner's Blog

Blogging about technology and randomness since 2002

Songbird User Preview 0.1

Screenshot of Songbird's Main Window The long-awaited first release of Songbird, the XUL-based cross-platform music player, is now out. It’s only a ‘User Preview’ though, in that the essential features work but there’s still a lot of work to go before it’s ready for widespread use; hence its 0.1 release number.

I’m going to do a reasonably detailed review of the application. As the application is still very much in its infancy, there’s not an awful lot there right now though.


Songbird first appeared on people’s radars before Christmas, though it’s taken until now for a public release to be made available. The interface uses XUL, the same language that powers Firefox, Thunderbird and many of the other Mozilla-based products like Nvu. It also uses SQLite for its data storage and code from VLC for audio codec support, so it harnesses lots of existing open source code. The aim of the project seems to be that it will be open source, though there is some confusion about this at the moment. But, for now, it’s freely available.

It will be a cross-platform program eventually but right now only a Windows version is available. This is what I’m reviewing here.

Installation and startup

Songbird does have an installer, though it’s not particularly user friendly. It was created using NSIS so there’s little reason why this could have been better – merely a matter of changing some settings.

Initial startup, like with Firefox, does take a bit of time, but future startups are somewhat quicker – about 20 seconds on my machine. It’s not lightning-fast but it’s acceptable.

User interface

It’s… black, basically. Imagine a goth version of iTunes and you’re close. Songbird also has an alternative red theme which I personally think looks awful, whereas the black looks okay. I’d prefer something a bit brighter though. Future versions of Songbird will allow you to change the theme, like in Firefox. Furthermore, theme changes are instant and don’t require a restart of the player – your music will even keep playing uninterrupted.

Like in iTunes, there are two main panes – music from your library appears on the right, and various other icons appear on the left. These include the welcome screen, shown on first launch, your library, any playlists you have created, and links to various internet services. These include online music stores, search engines, internet radio stations and podcasting sites, and one key feature of Songbird is that you’re not tied to one supplier of online music, like you are with iTunes. Currently you can only choose from those stores that offer music without DRM, so no Napster or iTMS, but a future release may add stores that using DRM-protected WMA. That would still exclude the iTunes Music Store but would provide much greater choice.

There’s not much to Songbird beyond the main window – no preference pane, for example – mainly because they haven’t been written yet. This is only a preview, after all. But all of the main features are present and correct – playing, pausing, rewinding and adding to playlists. You can also add and remove music from your library.

Format support

Thanks to VLC, Songbird supports all the major audio formats. Obviously there’s MP3 support, but also MP4, AAC and WMA, as well as Ogg Vorbis, FLAC and others. No support yet for protected WMA as mentioned earlier but it may appear in future. In other words, it rivals players like Winamp and beats Windows Media Player and iTunes.


You could argue that Songbird is just a glorified web browser, and you wouldn’t actually be far off. Because it supports lots of music stores and online services, the web browser forms quite a major part of the application. It uses Gecko as its rendering engine, like Firefox, so it’ll display most web sites. It’ll also let you search, but lacks features like bookmarks and history, so it’s not a proper web browser. But it’ll play your music back too just fine, and has a good library system with customisable columns.

It supports tagging, but only on MP3 files – it couldn’t read any tag details from the AAC files I gave it.


Perhaps surprisingly, Songbird hasn’t crashed in my testing, apart from a couple of hiccups on closing. It does inherit XULRunner’s stability, but for a 0.1 release this is impressive.


Songbird has been out for only a few days and people are already criticising its performance, describing it as a resource hog.

Let’s get this clear – you won’t be able to run this on a slow computer. Songbird does have quite high memory requirements – up to 50MB on my machine after prolonged (but not necessarily typical) use. Initially though it needs about 35-40MB to run, and that’s about the same as iTunes. It also starts more quickly, though its CPU usage seems a bit higher.

Of course, Winamp and Foobar2000 use less, but then they are Windows-specific programs and by default use playlists instead of media libraries, which need to be loaded into memory – even an average library can have 2MB of data. Cross-platform programs do tend to require more memory.

Songbird does need a lot of memory but it’s not a lot more than its competitors. It’s also only at version 0.1 – improvements are possible over time and its open nature means that others can chip in.

In all, I think this is promising start. I’ll be sticking to iTunes for now, mainly because it doesn’t yet support my iPod and I’m mostly a Mac user now, but this could become something very big in future.


  1. I installed that program right after the announcement that it was released for testing.
    I pointed it to my iTunes library of files and had it go to town with it. It scanned the files in no time (impressed with that). Then it started the laborious task of “scanning…” those files to fill in the details. After an hour of “scanning…” it’s only about 1/3 of the way through the nearly 10,000 files it found. Not impressed there.
    Does Apple have a patent on a Genre filter in library filters? Every other MP3 player program I have ever looked at usually only has Artist and Album.
    So what will set this player apart from WinAMP? I suspect the fact that it’s cross-platform makes it attractive to other OS’s.
    I realize that this is just a preview of things to come, but my impression is that I’m not impressed. Seems to me that they should have waited a little longer before announcing it’s existence and releasing a preview. They probably should have kept it a closed beta/alpha/whatever until it was a bit further along.

  2. I sure hope the default interface changes before a stable. Not only because it risks inducing mild depression but also I’m getting rather sick with FOSS projects aping interfaces from the commercial world. A little imagination please people.

  3. Of course, Winamp and Foobar2000 use less, but then they are Windows-specific programs and by default use playlists instead of media libraries, which need to be loaded into memory – even an average library can have 2MB of data. Cross-platform programs do tend to require more memory.

    I can’t speak for Foobar2000, but WinAMP most definatly has a library. In fact it keeps as much info about a song as iTunes. Rating, play count, last played, etc…
    As to memory, I don’t know what you were looking at to state memory usage, but according to SysInternal’s Process Explorer, it’s taking 12.5MB of Physical memory with a 10,000 song library loaded.

  4. That’s why I said that by default Winamp doesn’t use a media library, but you can use it if you wish. It was only added in version 3.

  5. Sorry, I missed that. Yet, if someone is using WinAMP, they are probably going to use the library feature. Mostly so that they can sync the the tracks to their player.

  6. For some reason I can’t stand iTunes or Songtunes.

  7. I tried this too. I’m interested to see where it goes – looks promising – but is too unstable for me to use at the moment. It’s got some way to go yet, and good luck to them 🙂

  8. Nice review Neil.
    As a programmer, I think I’m more interested in the source code than I am the app itself to be honest 🙂

  9. Neil,
    Much as I am a fan of all things Gecko, this really takes bloatware to new levels. Have a look at XMplay for an example of how to do it well.

  10. Hi Neil,
    There is a XUL configuration flag you can set to reduce Songbird’s memory requirement when the app is minimised. It originally came from a Firefox tip, but as their both XUL apps, the same config change works. Check out my post about it.