2013-09-24 76 views
3

在我们的Wpf应用程序中,我们需要从网络摄像头获取输入并持续显示视频。 我发现了一个开源驱动程序Media Foundation .Net,它在windows操作系统中具有即插即用功能的网络摄像头中运行良好。但是,我也有一个Logitech Pro 9000摄像头,它不适用于上述驱动程序。但是,如果我安装设备附带的驱动程序CD,则Skype和Google Hangouts可以识别它并利用Logitech网络摄像头进行视频通话。但是,媒体基础.Net驱动程序仍然无法从Logitech网络摄像头读取。.Net中的网络摄像头驱动程序,支持所有可用的网络摄像头

我想了解Skype和Google Hangouts会使用哪些API,我是否可以在我的应用程序中使用相同的库以及Wpf中可用的库,这些库可用于我的应用程序以使用所有在市场上可用的网络摄像头。

在此先感谢!

+0

http://www.codeproject.com/Articles/285964/WPF-Webcam-Control –

+0

@DanielHilgarth我也尝试过。当它开始捕捉时有相当多的延迟。另外,我不想将像Encoder这样庞大的库与我的应用程序一起发货 – Vasanth

回答

3

有三种视频拍摄/摄像头的API在Windows:

  • Windows视频
  • DirectShow的
  • 媒体基金会

摄像头与WDM驱动程序是在所有三个API和可见 - 受API的限制 - 您可以访问使用任何三个摄像头。

DirectShow是使用最广泛的一些DirectShow设备,尤其是一些DirectShow设备,虚拟相机只能通过DirectShow“可见”。 Skype和环聊使用DirectShow进行视频采集。

所有这三个API都是本机的,在.NET中,您使用包装库来连接原始API。 MediaFoundation.NET不是驱动程序,它是Media Foundation API的开源包装器/适配器。您需要DirectShow.NET,而不是与DirectShow接口,并为您提供最广泛的视频捕获设备选择。