There are a couple of ways to stream... it depends on whether you want to stream video...http://www.ustream.tv/channel/youstream
According to the site, this costs $99 per month. I know there are cheaper ways, but that was the result of my first google search.
The most common way I know people to share music is streaming just stereo audio at around MP3 quality using a streaming service and WinAmp. http://wiki.secondlife.com/wiki/Streaming_Music
Basically, you can pay around $5 per month (or $1 per day) to have up to 100 listeners on the stream. You control what you stream up. So, when I do this, I mix the band in RME TotalMix then run a stereo pair out into the stereo mic input on my monitor. That I send up to the streaming server using WinAmp. You could mix the band using Cakewalk Sonar. It doesn't matter what you use to mix up the stereo pair.
If you have an available Linux server, you can run your own streaming service.http://icecast.org/apps/
Anyone can click on the stream and listen to the audio (or put the stream into a stream player like Media Monkey or Win Amp or Second Life). I'm sure there are more stream players.
Next you want to arrange a place for all your listeners to give feedback and applause. You could do this in Facebook or any other chat scenario you want to set up on the web where your friends can collect.
Usually, there is a 2 second delay between what the band says into the mics and what your audience hears. Sometimes more than 2 seconds. So, if you ask for requests, you might want to go ahead an play a song while the requests come in and then read off the requests.
Now, your question was how to do it for many tracks... I don't know anyone who does that. I do know people who live apart who 'play together' by sending one stream to the second musician who adds to it and then sends up on a second stream to the audience. This way you can have one person doing vocals and rhythm and a second person who lives 1000 KM away adding lead.
To do this with multiple tracks would require multiple streams. While this is easy conceptually, you would need all the streams to work at the same latency so you could bring them all back together. This would give the second musician the ability to play on the multitrack version of the first.
Again... no one does this. I'm just hypothesizing about the problems and how you might be able to do it....
As long as the streams don't break, you could establish multiple streams and measure latency between a single transient... then offset the latencies of the incoming streams using a delay tool like ChannelTools to sync the tracks back up. If the latencies change you'd have to do it again.
post edited by gswitz - 2017/03/12 15:49:26