Click here to Skip to main content
15,886,919 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
I'm looking at a small project for a friend and I have become a little stuck.
Without giving away the whole idea, we are looking at the streaming of content to tablets and/or smart phones.

Firstly the streaming will ONLY be in the local area so there won't be a web requirement. The receiving device will have an app to receive the stream and then to play it. Conceptually this is not rocket science and I think a lot of the software side I can deal with.

I am worried by the network and that is my question. It will need to be a network that 'any' device can access, so that's wi-fi then. But what type and how would I work out the capacity that would be needed.

For simplicity, if I say there will be a single live stream and up to 50 devices simultaneously receiving it what do I need to get the bandwidth?
Posted

1 solution

To get the bandwidth for 50 video clients on any network what you need is multicast UDP networking. Many years ago I worked with a bunch of ex BT guys who had this down but in those days it only worked on expensive Cisco switches so the product was a dud. Now it's everywhere but I have no idea about wireless. Once you have the multicast sorted bandwidth is down to compression and quality. You can squeeze a video stream through a 64K frame relay if you don't mind it being the size of a postage stamp and 2fps whereas full HD at 30fps will be treading all over 100Mbits.
Approximately you take the MegaPixels of your feed and multiply by your frame rate to get the Megabits of bandwidth but that's very approximate because it depends on the compression type. H264 is the currently popular squeezed video type.
Hope some of that makes sense.
 
Share this answer
 
Comments
Nagy Vilmos 4-Feb-13 5:02am    
Thanks.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900