Most music players have similar features, but there are two things that I find indispensable:
- watching folders for new files, ideally as a per-folder setting so it doesn't always rescan everything on startup.
- dealing with compilations and automatically grouping them as "Various Artists" or "Compilations" in a "browse by artist" listing, rather than filling it with single-track artists.
These are the main contenders:
- Amarok: deals perfectly with compilations (similar to iTunes), and can watch folders for changes. It doesn't have the latter as a per-folder setting but once v2 has settled down I'll request it as a feature. Nearly there.
- Songbird: doesn't watch folders, doesn't handle compilations. Both are on the roadmap, and I like to use Songbird - especially for web-based audio.
- Banshee: Groups compilation albums if the "Album Artist" tag is set to "Various Artists", but the individual track artists still show up in the "browse by artist" pane. Doesn't watch folders. Banshee seems to be developing quickly these days, handles video as well as audio, and the Mirage plugin is interesting (people are working on this - perceptive similarity - for Amarok and for Rhythmbox too).
- MPD: can be set to scan folders for changes on startup, which is good enough. qmpdclient (Linux) and MPoD (iPhone) are decent clients, but neither seems to handle compilations. I like the idea of MPD (separation of file management and client interfaces), especially being able to control it remotely, but the clients are a bit basic.
- Rhythmbox: watches folders, but doesn't handle compilations well.
- BMPx: apparently uses Musicbrainz data to determine if an album is a compilation, but I can't work out how to select all the tracks of a compilation album to make it look up the data in Musicbrainz. Even after using Picard to tag albums, it still lists tracks from compilations under their individual artists.
In summary, only iTunes and Amarok can handle compilations well, but hopefully the others are not too far behind - particularly Songbird.