vlc
VLC is opensource and crossplatform multimedia player. cvlc is command line version of vlc.
VLC(or cvlc) can stream via http. See Streaming HowTo/Command Line Examples or Streaming HowTo/Advanced Streaming Using the Command Line for detail
cvlc
--sout '#standard{access=http,mux=mp3,dst=192.168.x.x:xxxx}' # http stream. mux=dummy or raw will be ok
vlc://quit
http interface
VLC(or cvlc) could be controlled with http request. See VLC HTTP requests for detail
start cvlc with http interface
cvlc
-I HTTP # start http interface
--http-password <password> # specify http password
--aout alsa --alsa-audio-device plughw:2,0 # specify audio output device
vlc://quit
You can control vlc with not only web browser but also command line tool
curl
-I # fetche the headers only
--user ":<mypassword>" # specify http passowrd (user name is null)
http://127.0.0.1:8080/requests/status.xml
?command=pl_play
?command=pl_pause
?command=volume&val=+<int>
?command=volume&val=-<int>