As far as i'm concerned, XBMC is pretty much the only way to go here. I keep my media files (Movies, TV, Music) on a terabyte drive in my first generation Mac Pro and samba share them gigabit to a Zotac id41
. Openelec is an appliance-like Linux distribution that installs quickly and does nothing other than run XBMC (there's no "desktop" except XBMC; you can control it via ssh). I tried Serviio, and a couple of streaming servers, but they don't always understand what a file is supposed to do and choke on it. Samba just shares files and lets the remote machine figure them out. XBMC figures everything out that I've sent it so far; it has a host of plug-ins (what they call "add ons") including one for the BBC iPlayer, and for the ITV player, and for Hulu and you can even control rtorrent from one of them. For the Beeb and ITV I use Witopia's VPN service which can be invoked from Openelec's command line if you know what you're about. Plays 1080p nicely on my 50", all sorts of 5.1 audio goes through a semi-decent Pioneer amp.
Openelec is not for dedicated Linux tinkerers. I set the Zotac up originally with Arch Linux
because, you know, "I'm a geek, uh huh, uh huh" and it was a huge mistake because I was updating the damned thing every 20 minutes the way Arch people do, and I put a desktop on it and installed browsers and so forth thinking that I'd have a neat fully blown computer there in my living room and I could surf and check my email -- fahgeddaboudit! It's an HTPC only these days, plays music and video. Those Zotacs are powerful little machines though. I have a friend in town does the same thing with a Pi.