This new project started last week. I’m calling it ‘Remix Player’ for the moment, and currently it reads/writes metadata, plays audio using GStreamer, and can lookup metadata information (fetch album cover images) via an Amazon.com Web Services client I wrote. I’ve never been 100% satisfied with the audio player selection in GNOME. I have somewhere around 5000 songs; my library is comprised mostly of a ripped version of my physical CD collection, all in OGG format. The directory structure where I store my music is organized (Artist Name/Album Name/01. Artist Name – Track Name.ogg).
Before I go into too much depth, I’m just going to say it: I started writing an audio player tailored specifically to my multimedia desires. It will include killer playlist/library management (with separate playlist and library interfaces), an Amazon.com Web Services client to look up additional metadata information (particularly to fetch an album cover image!), and it uses GStreamer 0.8 for audio playback, so whatever GStreamer can play, my player can play.
Because I generally like the concept, I have been using mpd for quite some time. It keeps a database of my music collection for fast metadata searching. My problem with mpd is the lack of a good client front end. I really like gmpc, especially with my mpcstick2 hacks applied, but it’s lacking so many features, particularly good library/playlist organization. Also, due to the client/server nature of mpd, there is much that cannot be implemented (such as visualization plugins) in a client.
Then there’s RhythmBox. It’s cute. Kinda like iTunes. I’ve never been too fond of RhythmBox, though I have much respect for it. It always seems slow, and the interface is too big. It has decent library support, but not really good playlist support. I think it’s good to have a separate playlist and library. I don’t always want to play music directly from my organized library. Sometimes I just want to listen to a standalone media file, without having it merged into the library. RhythmBox does not separate playlist from library. RhythmBox also crashes a lot. I do however like the iRadio support. There aren’t many visual stimulations in RhythmBox either.
That brings me to XMMS/Beep. I haven’t used the legacy XMMS in about a year. I do like the Beep Media Player, which is a GTK2 port of XMMS. It’s basically the same thing. Playlist support in Beep is decent, but there’s no library support. I like the visual stimuilation of Beep, with the skins and nifty bar visualization thing. It also has a straight forward, but basic tag editor, and good plugin support. So I use Beep often for listening to music outside of my complex library.
What I am developing is somewhat of a hybrid of mpd, RhythmBox, and Beep, and I’m mixing in some cool new features that don’t exist in any other program that I am aware of. My goal is strong library support, great playlist support that has the ability of being separate from the library (so I can listen to “standalone” music), metadata searching through various web services (for album cover fetching, concert dates, web sites relating to the band, etc.), visualization effects (like iTunes), a collapsible interface, GNOME tray support, mpcstick2 integration, xosd support, and much more.
So what do you want in an audio player?