I'm mildly surprised that no one's jumped into this one yet, so I'll step up.
Firstly, if you're looking to play your home music at work via ssh and esound, it is, indeed, possible, but very 'expensive' in terms of bandwidth use. Consider that a decent quality mp3 is 128 kbps (and the bitrate snobs would disagree and insist on at least 192 kbps, or vbr >192, or 320....), then your upstream and downstream bandwidth is going to have to be >128 kbps.
An easy solution, in terms of ease-of-use/configuration, is gnump3. This is a daemon that will read your music collection upon startup and will allow you to access your music library from wherever you have an internet connection - this can be accomplished through ssh, or via http, or both. The http connection can be username:password accessible (and I would imagine there are stronger authentication options, but is it really necessary?..)
Gnump3 can also be configured to downsample the bitrate to what both your home and work connections can handle without adversely affecting the other bandwidth needs. If your work station is simply a matter of a desktop pc with a couple of pc-type speakers, then downsampling to 32 kbps or even 16 is probably sufficient.
The 'downside' to gnump3 is that it doesn't stream what you may actually be playing at home ie., it's not a 'broadcast' per se; it simply allows remote access to your home music collection.
A 'broadcast' solution is vlc. Vlc offers more options via the broadcast route, because you have more input and output possibilities. Last summer I was working at a place that had two-way satellite high speed connection, but because of fair access policies, etc, it wasn't possible to consume more than about 10 MB/hour bandwidth. Hence, wanting the best quality possible, at the lowest bitrate possible, I was able to transcode the stream to a 0 quality ogg stream, in stereo, at about 16kbps. And, quite frankly, it sounded pretty darn good (thank god for ogg)
In short, you can play vlc at home and stream what you're playing at home to your workplace. Therefore, your cat and you are listening to the same thing at the same time.
Here's a sample vlc command-line stream (then I'll show you the ssh command line for both vlc and gnump3)
Code:
vlc -I http --control http:rc --rc-host :4800 --http-host :7000 --no-rc-show-pos --volume 500 --spdif -vvv /home/laptop/all.m3u --random --sout-keep --sout '#duplicate{dst=display,dst="transcode{acodec=vorb,anc=vorbis{quality=2},ab=64,samplerate=44100,channels=2}:standard{access=http,mux=ogg,url=192.168.3.2:8000}"}'
To explain what's going on:
vlc opens in the background with an http interface available. vlc can be controlled by both the http interface, on port 7000, and a remote control advanced telnet interface on port 4800. It's playing the all.m3u playlist, at random, and keeps the stream-out alive between tracks. The stream-out (sout) is duplicated: the first stream plays locally (display), whilst the duplicate stream is transcoded via vorbis, to a quality of 2, at a bitrate of 64, 44100 mhz, stereo, with an ogg stream via http on port 8000. (whew)
Vlc 'talks' best to vlc, so if you want to connect problem-free at work, use vlc.
If you go the gnump3 route, then your work music player doesn't matter (as long as it can play http streams....)
As far as ssh is concerned, here's the command:
Code:
ssh -l username your_external_adsl_ip_address -L 8000:127.0.0.1:8000
once you have established your ssh connection using this command, you can point your music player (vlc method) or browser (gnump3 method) to localhost:8000, and voila, you're listening to music you can't possibly complain about.
obviously, whatever port you're using for your stream, be it gnump3, vlc, or whatever else may come your way is what you would put before the 127.0.0.1.
hope this gets you on your way...
EDIT: had to get rid of those damn smileys...they're spookier than clowns....
cheers,