将Webcam从客户端流式传输到服务器C#的有效方法

时间:2010-02-04 04:06:38

标签: c# client stream webcam

我在客户端和服务器之间设置了自定义tcp连接。 我正在制作一个简单的聊天程序。到目前为止,用户可以相互通信并发送文件。 我正在添加网络摄像头聊天,我使用AForge.Net从我的网络摄像头抓取帧。但是将这些捕获的帧从客户端发送到服务器需要太长时间并占用太多带宽。服务器每2~4秒接收大约1帧。

我尝试过使用Jpeg编码器并将质量设置为30,但这并没有改善任何内容

您是否知道编码网络摄像头流以便发送到服务器的好方法?

干杯 罗马

1 个答案:

答案 0 :(得分:1)

您需要将网络摄像头内容作为视频流发送,而不是一系列图像。我推荐H264,因为它很紧凑,是目前网络上最常用的视频编解码器。然而,编码,流式传输,接收和显示视频并不简单。有很多开源项目可以帮助像X264和VLC,但这肯定比抓取jpgs和发送它们复杂得多。使用支持网络摄像头的现有视频聊天组件会更容易。

带有RTMP服务器的Flash应用程序可以支持网络摄像头,并且有许多开源/免费RTMP服务器可用(我不是100%它们支持实时网络摄像头流 - 商用Adobe Flash Media Server肯定会这样做)。 Flash视频组件可以集成到另一个应用程序中,无论是Windows还是Web。