On Tue, May 23, 2006 at 10:05:07AM +0100, Richard Lewis wrote:
First is the mixing software. The reason why I've mentioned OSC is because my colleague is an experienced Max/MSP user and would like to use either that or PureData to handle the mixing. However, I'm worried about how well this will scale up when multiple users are connected. Will I have to run one instance of Max (or pd) for each client connection? Should I perhaps consider a more UNIXy tool like ecasound or something?
PD has a command line mode, and is actually reasonably light, you can also set it to spool out mp3 and get sources from a variety of places... if each user is supposed to get a different experience, then, yeah - without a lot more work, you'd run multiple copies of pd. Then each person just has the output chunk of the running pd, should be relatively simple. I think. probably. (this is off the top of my head so might be wildly inaccurate :)
Second is the streaming software. I'm a bit surer about this: I've looked at Icecast and it seems to do MP3 encoding. I reckon it can probably handle multiple client sessions as long as each connection has its own distinguishable source audio stream which I suppose depends on how I choose to implement the mixer. Has anyone had any experience with it? Is it very resource intensive?
Icecast generally only provides one stream that you can connect to, or multiple defined streams, I'm not sure that it's what you're looking for in this case. Unless all users are supposed to hear the same thing?
Any thoughts or experiences would be very welcome!
If they're all getting their own streams, bandwidth will become an issue fairly quickly if it becomes popular ;) (10 people at 64kbps is going to eat most of a 1M connection, after overheads etc...)
Cheers,