2013-09-24 73 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接口,併爲您提供最廣泛的視頻捕獲設備選擇。