Question

I am looking how to do multicast (video streams) router, with the following requirements:

  • receiving and sending multicast streams at 3-30Mbps (vlan forwarding)
  • in-ram (or storage) delaying to compensate for network congestion
  • TCP tunneling (UDP to TCP and vice-versa)
  • rate shaping of output UDP streams with up to 1 second jitter
  • for TCP tunneling, multi-homed network support
  • hundreds of streams at 3-30Mbits

I have did extensive research and I could not find any networking or video broadcast product actually matching these requirements.

I have implemented C linux app which does the above for a single stream, but now I would need to add web interface, multiple stream support etc, so I was wondering if there is something which can accomplish the above with the quality and reliability suitable for the video broadcast, like some kind of product? Doing this in C is not easy so I was wondering if there are any higher level languages which could match the performance? Would perl, python, java would be a good choice?

How do I architect this kind of software? I am currently using C application running Redhat with RT kernel with command line interface and single stream support.

I want to do application which would run 100 streams 24/7 (using 8 or 16 core system with 64GB RAM) and would be easy to configure it on the fly using either command line or web interface.

I just cant see any better option than current Redhat RT kernel and simple C userspace app. It seems to be the best and easiest option to go with.

Was it helpful?

Solution

The usual division in architecting such an application is to have the high performance parts done by C code and to write low performance components, like a user interface for configuration and such, in a higher level language like Python or Ruby or what have you. It would be hard to achieve the performance requirements in a high level language, but it would be unnecessarily masochistic to write a web configuration system in C.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top