We would like to set-up a live video-chat web site and are looking for bas开发者_高级运维ic architectural advice and/or a recomendation for a particular framework to use. Here are the basic features of the site:
Most streams will be broadcast live from a single person with a web cam, etc., and viewed by typically 1-10 people, although there could be up to 100+ viewers on the high side.
Audio and video do not have to be super-high quality, but do need to be "good enough". The main point is to convey the basic info in the video (and audio). If occasionally the frame-rate drops low and then goes back to normal fairly soon, we could live with that.
Budget is an issue, so we are in general looking for a lower cost solution that will give us most of what we need in temers of performance and quality.
We are looking at Peer1 for co-lo.
The rest of our web site will be .Net / Windows platform. We are open to looking at any platform for the best streaming solution, although our technical expertise is currently more on the Windows side.
I would suggest building your application and infrastructure around one of two poplualr streaming servers:
- Wowza: Java-based (so can run on Windows too) server that can expose web services for consumption by your .Net applcation. The Wowza forums (which are actively supported by Wowza techies) has a run down on this. A con is that Wowza is a bit memory hungry.
- Adobe Flash Media Server (and other servers): Arguable the industry standard. Runs on Windows.
There is also the Java-based Red5 project, but it is (for better and worse) an immature open source project. Saving a few bucks at first might sound good, but even in the short term you'll save yourself time and money by going with either Wowza or Adobe FMS.
Many other streaming servers out there, but these are the big names.
As for Peer1, I've not heard of them (I am in Switzerland, though). From their own web page I see that their racks have only "100Mbps full duplex Fast Ethernet". That's technically enough for the 100+ viewers you quote. But to go beyond that you are going to need Gigabit networking. Changing up later will be painful. Something to think about.
Don't let anyone up-sell you on crazy hardware for this project. 100 concurrent users is not particularly much. Any modern dual-core CPU is going to be fine. Focus your investigations on decent network access & ensure you have enough memory.
For 'good enough' video quality, aim for 368kbps to 512kbps per stream. Codecs matter--go h264 if you can.
Well, the first thing i can think of is Livestream. The free version supports up until 50 simultaneous viewers.
精彩评论