Winamp & Shoutcast Forums

Winamp & Shoutcast Forums (http://forums.winamp.com/index.php)
-   General Discussions (http://forums.winamp.com/forumdisplay.php?f=1)
-   -   Does this support Multi-Casting??? (http://forums.winamp.com/showthread.php?t=73768)

nijuichi21 29th January 2002 04:46

Does this support Multi-Casting???
 
Hello everybody, I am currently working on Multi-point Video Conferencing project.
I wonder if this SHOUTcast+Winamp program supports Multi-Casting???
I am trying to create a conference where it is a one-to-many broadcasting. Any user can select which member(s) of the conference to listen to simultaneously while he is broadcasting his voice to the rest of the members.

Please e-mail me at nijuichi21@yahoo.com
Thanks.

rm' 29th January 2002 04:50

I'm a bit fuzzy on my Shoutcast knowledge, so don't take my word for it. I think it's possible to run one instance of Winamp with the DSP for Shoutcast in order to broadcast, and another instance to pick up streams from the other users in the video conference. Don't let me get your hopes up though. You will likely get a better answer in the Shoutcast forums, so a mod will be by shortly to move this thread.

griffinn 29th January 2002 06:47

It depends on whether you take the strict definition of the term "multicasting".

A too-simplistic version of the strict definition of multicasting: Multicasting allows a sender to communicate with a select group of recipients. (Compared that with broadcasting, where the sender is sending information to an undefined audience.) In order to do that:[list=1][*]The information needs to be sent by UDP datagrams, not the conventional TCP connections we're used to;[*]The information needs to be sent to a special class of IP addresses, and all the routers sitting between the sender and the intended audience must be configured to support propagation of packets destined for this class of IP addresses.[/list=1]Shoutcast is a connection-based streamer, i.e. even if it appears Shoutcast is "broadcasting" an audio stream, each recipient is connected to the server with a distinct 1-to-1 connection. So if your project requires you to implement multicasting strictly as it's defined, Shoutcast isn't for you.

You may want to take a look at Speak Freely, a free and open-source conferencing application that makes use of multicasting. (The latest version 7.2 can also operate without multicasting, but you need at least one party with a very generous bandwidth.) Maybe take a look at their source, and find out how multicasting works.

Also take a look at the OpenH323 Project, an open source implementation of the H.323 teleconferencing protocol, the protocol used by Microsoft NetMeeting. It's basically a stack that you can slap on to your app, and you'll be provided with a set of function calls to program your conferencing app with. The stacks spares you from worrying about the underlying nitty-gritty details: how packets are sliced and sequenced and sent out, and how they are received and re-sequenced etc.

But if what you're hoping to develop is a multi-party conferencing app that doesn't necessarily use multicasting, you can of course, as Radioactive Man suggested, have a user be a Shoutcast broadcaster, and at the same time have multiple instances of Winamp listen to multiple other Shoutcast streams. For added user-friendliness, you can even maintain your own Shoutcast directory server so each participant can choose from a web page whom to listen to. But that will of course mean that each stream you listen to will take a certain chunk of the bandwidth, and each person who listens to you also takes away a similarly sized chunk. Scalability would be a problem.

So, there. The "strict" definition of multicasting imposes certain requirements on the network infrastructure supporting the conference participants, and you have this whole UDP sequencing nightmare to think about, unless you decide to use OpenH323 (which doesn't seem quite usable at the moment). But if you decide to use something like Shoutcast as your streaming solution, you have this scalability issue to wrestle with. And you need to make this unfortunate assumption that each user will have x available multiplexing audio channels on their sound card etc.

Good luck with your project. :D

nijuichi21 7th February 2002 03:13

Thanks a million...
 
Thanks a lot everybody.
Really appreciate all your enlightenment.


All times are GMT. The time now is 11:36.

Copyright © 1999 - 2010 Nullsoft. All Rights Reserved.