Remixing Life

After spending 24 hours in the air or in an airport, I finally arrived in Santa Barbara, California on Tuesday morning. I flew out of Raleigh (NC) at 3:30 to Chicago. My flight was delayed in Chicago by an hour. I arrived in Los Angeles at the same time my flight from LA departed for Santa Barbara. Needless to say, I wasn’t happy. We sat on the tarmack for another 15 minutes. I checked in with American Airlines (AA) support/ticketing center at LAX. They were great. I had already been automatically rebooked on the first flight to SBA for the next morning (my original flight to SBA Monday night was the last one for that evening). AA gave me a hotel reservation for the LAX Marriott along with two meal vouchers! It was a painless process to get to my free room and then back to LAX the next morning. So, as of Tuesday morning, I’ve been having fun in California.

I haven’t yet managed to purchase a new laptop. I’m torn between three models. A Sharp Actius MM20, some ultra-mobile Sony Vaio, and… gulp… an Apple PowerBook (12″). I’m currently on a iBook G3, using OS X 10.3. I love it. There’s so much innovation in this operating system. I’m just not totally comfortable using it. Though it’s smooth and beautiful, it really does feel “closed” (as in source code). I’m installing XTools from Apple, which apparently include gcc and other open-source tools. If I do get a PowerBook, I’ll be putting a PPC Linux distro on it.

I think I like OS X so much because I see basically what’s coming to GNOME, and what I’d love to one day contribute. For example… I’d love to write Sherlock for GNOME.

I’ve also been enjoying playing with iTunes. This inspires me because I am in the middle of writing an ultra-powerful Music playback/library program for GNOME. iTunes has some of the features that I have in mind for my program, but I have much planned that isn’t implemented in iTunes.

I’ll be writing code like crazy when I return home, but for now, I’m relaxing in beautiful Carpinteria/Santa Barbara California.

Happy Holidays!

Remix Player: Another GNOME Audio Player

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?