Maybe I’m really late to the game here, but I just stumbled across a little app called Subsonic (link) that runs on Windows, Mac, and Linux. On a very basic level, you install it on your machine, point it to the folders that hold your music and movies, and then you can access that media from any device on your network. And with a bit of port forwarding, you can also access it anywhere in the world over the interwebs.
Once installed, you just point your browser to the IP of the machine you installed it on and log in with the default admin info. Then you change the admin password configure everything how you want it. This webpage acts as a front-end for all your media pleasure.
BUT WAIT! There’s more. You can also set up multiple user account for your bros. You can control what type of access rights they have (stream, stream/download, stream/download/upload) and then they can enjoy your media as well! And yes, that does say upload! Through the web interface, you can upload media directly into whatever folder you like. You can even upload a zip file and it automatically extracts it on your server!
The cherry on top is the fact that there are apps for Android, iOS, and Windows Phone to let you access, stream, and even download/cache your media directly to your phone!
And all this for free! The mobile streaming is limited to 30 days unless you donate a minimum of 10EUR to the developers. Doing so gets you get a license that unlocks your server completely. It also gets you your own yourname.subsonic.org URL to access your server without needing to remember pesky IP addresses. Well worth the donation.
So, needless to say, I won’t be bothering with paid music services anymore. Now I have a dedicated XBMC install at home with Subsonic running in the background. This takes care of ALL my media needs both at home and away.