ASP.NET应用程序Webcam Capture

时间:2010-01-08 03:02:32

标签: asp.net-mvc webcam

好的,所以我看到很多关于从网络摄像头捕获图像的东西,但我想拍摄视频。我希望能够控制将要传输的文件的质量,长度和大小。

它是ASP.NET MVC C#Web应用程序的一部分,非常感谢您在查找有关此主题的信息时的任何指导,以及对效率,安全性等方面的任何评论。

由于

4 个答案:

答案 0 :(得分:4)

出于安全原因,链接到外部硬件设备不是大多数浏览器允许的功能。您将需要在客户端的计算机上使用具有二进制存在的Flash或ActiveX等技术,并且可以绕过浏览器安全模型; ASP.NET MVC本身不会削减它。

答案 1 :(得分:2)

我在工作中已经多次这样做了。您必须使用您编写的活动x控件执行此操作,或者您可以使用Web cam制造商生成的分布式活动x控件(logitech用于制作一个,等等)。

如果您想在实际页面上进行实时预览,直接展示是一个不错的选择。 TWAIN(根据我的记忆)不能让您预览Feed。

会影响您实施的事情:

  • 您是希望它嵌入页面还是弹出一个新窗口好吗?
  • 您想要实时Feed
  • 您希望支持哪些网络摄像头

还有其他一些有影响的事情,但您只需要知道您的客户将不得不安装您编写的一些客户端软件(或他们的网络摄像头制造商提供的)

哦,MVC与它无关,这就是服务器端技术,它在服务器上呈现内容。

答案 2 :(得分:2)

您最好的选择是使用Silverlight 4访问用户的网络摄像头。目前Silverlight 4仍然处于测试阶段,但它不会花费很长时间才能超过测试阶段。 Silverlight使用.net框架的子集,因此您可以重用现有知识。

退房: http://silverlight.net/learn/

答案 3 :(得分:1)

你到底想要什么?您在服务器上有WebCam 并想向用户显示内容吗?在那种情况下,看看WIA,它有.net Wrappers。

或者您在客户端上有WebCam 并想要将视频上传到服务器吗?为此,您需要客户端上的某些内容。由于Silverlight不支持WebCams,因此您可以使用Flash。不完全确定如何上传它,但我认为你可以发送一个字节流(通过POST)到一个接受byte []作为输入的方法。

编辑:由于您想在客户端捕获网络摄像头,您需要编写客户端的某个人。 Flash是最常见的选择,您可以使用related question here作为起点。很难获得视频,然后将视频上传到服务器应该是直截了当的。