Let me preface this by saying I use a Mac. Guess which audio player I use most of the time. Nope, not iTunes, nor QuickTime, nor any third-party player for the Mac. And not even a cross-platform player like VLC. Nope, what I use is ...
Winamp!
How and why would I run Winamp on a Mac? The how is easy, I use Codeweavers Crossover, which lets me run several Windows programs on my Mac, almost as if they were Mac programs to begin with. But the why is simply this: Winamp plugins - and one plugin in particular, the SqrSoft Advanced Crossfading output plugin. As you might guess, the SqrSoft plugin fades from one song to another, the way a radio station DJ might do it. But the difference is that most crossfaders are truly dumb - they will try to fade out six seconds at the end on one song and simultaneously fade in the next song, which is not at all what most people want. It's certainly not what a radio DJ would do.
Instead, what the SqrSoft crossfader apparently does (provided you configure it this way - it has a LOT of options) is to actually "listen" for the song's natural fadeout at the end of the song. When the song is within a certain number of seconds of the end, AND the average volume fades to a certain point, it starts the next song at full volume, but continues to let the previous song fade out normally. Bear in mind that all this is configurable, if you want to accelerate the fadeout of the previous song once the new one has started, you can do that. If you want the next song to fade in, you can do that (I would NEVER want that, but some people might).
I usually set it to start the next song when the level of the previous song has dropped to -8 db. I have a maximum crossfade length of 12000 ms and a minimum of 1000 ms. All the "fade in" and "fade out" sliders are set to 0 - although the plugin can do its own fade in and fade out, I don't want it to - I want it to strictly work with the natural fade of a song. I also set the "Gap Killer" to enable on fall, with a fall trigger level of -46 db. The result is that I get kind of a "wall of sound" effect - the music never stops; as one song starts to fade out, the next begins. But if a song has a "cold" ending the next one won't overlap it, but will start immediately at the end, so again there's no perceptible gap.
I have yet to see ANY other program come close to this. As I say, most programs, if they do crossfading at all, do it in a stupid and annoying manner. Anyway, it seems to me that this is the sort of feature that should be implemented into a program like Subsonic. And I don't mean for it to sound like a commercial for the SqrSoft plugin (I have no connection to them, and they don't charge anything for it anyway) but I'm just saying, this is the way all crossfaders should work, and it makes me wish there was a native Mac version of Winamp (not that having to run Winamp in Crossover is a bad thing; it actually works pretty well).
So, any chance you might consider implementing a similar advanced crossfading feature?
Oh, almost forgot - to make it really sound good you might also need to use a volume limiter/normalizer. Don't know if you have that built in already - in Winamp there are several plugins that will do that (SqrSoft also has one of those, too). A limiter or volume normalizer isn't that uncommon of a feature, but if Subsonic doesn't have one, that might be another good thing to consider.
Remember, eye candy and other similar features might be nice, but ultimately it's primarily about making the music sound good!