1

I am investigating playing live streamed video at an event venue, to a large number of Wifi connected devices. Set up would be:

Camera -> PC -> cloud streaming server (like Wowza) -> wifi AP -> devices

I'm trying to figure out how to affordably maximise the number of devices that can consume the stream in a single venue.

If the video stream bitrate is 5 Mbps then having the internet connection quickly becomes the bottleneck; with a limit of 20 users on a 100 Mbps connection.

I'm wondering if I could set-up some kind of proxy for the video stream, that would cache the stream locally to the venue and then the devices could connect to that instead.

In searching for solutions I came across a hardware proxy that could do this, but it was 10's of thousands of pounds which is not viable for my budget.

So, I'm wondering is there is a server software solution?

Secondly I've been trying to find out the limits on Wifi APs. Standard APs appear to top out at ~100 users and are then limited by their ethernet connection - say 1 Gbit.

Is it possible to set up an AP that can use a 10 Gbit ethernet and can handle order 1000 connections?

Thanks for any pointers.

  • Do you control the whole chain? Or is the original stream outside of your control? – TBR Mar 18 '16 at 5:08
  • We are creating the content ourselves but are handing off the hosting to a paid 3rd party – Jules Mar 18 '16 at 19:19
2

Streaming

Proxying a stream is well possible and shouldn't require expensive hardware.

In case of a continuous HTTP stream (like e.g. WebM over Icecast) a simple Icecast instance set to relay the original stream will take care of things. One stream to the Internet, local availability with capacity only limited by network.

In case of progressive HTTP (DASH, HLS, etc) you could resort to a simple HTTP proxy (unless the origin server is trying hard to prevent proxying).

In all other cases it will be more involved, but if all else fails you can always run a transcoder and have that send a stream to a local server (e.g. avconv/ffmpeg → Icecast).

Network

This is going to be by far the larger challenge and will require some engineering and considerable testing.

An ordinary off the shelf AP can handle somewhere between 10 and 30 client devices on the wireless side. Enterprise hardware may come closer to 100. That doesn't cover bandwidth though, with increasing number of devices you have a non-linear decrease of available bandwidth (A theoretical 100MBit/s AP with 100 clients would have considerably less than 1MBit/s per client of effective bandwidth), this is further compounded by legacy devices that force the AP to switch between fast and slower modes.

You'll need to deploy a fleet of enterprise Access points with intelligent network control if you plan to serve 1000 concurrent client devices at considerable bandwidth.

Stream format

You may want to consider the format of streaming and its parameters you'll choose, as this can reduce your bandwidth needs by orders of magnitude.

Even if you don't control the original stream, you should consider serving a modified local stream to accommodate the networking challenges you face.

An example: If you choose to stream WebM with carefully tuned parameters and the Video signal being encoded is 'simple' (e.g. a conference speaker and slides, as opposed to a sports game with lots of movement in the picture). Then you'll likely have a resulting stream bandwidth well below 1 MBit/s for most of the time. Added benefit: plays straight in most web browsers (excluding iDevices, but there are apps).

Conclusion

Good luck, this is going to be neither cheap, nor easy, but certainly is feasible.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.