In our Wpf application, we need to get input from a webcam and display the video continuously. I have found a opensource driver Media Foundation .Net , which is working well with webcams having plug and play feature in windows OS. But, I also have a Logitech Pro 9000 webcam, which is not working with the above mentioned driver. But, if I install the driver CD that came along with the device, Skype and Google hangouts are able to recognize it and utilize the logitech webcam for video calls. But, the Media foundation .Net driver is still not able to read from the Logitech webcam.
I would like to understand what are the API's that Skype and Google hangouts would be using, whether I can use the same libraries in my application and also any libraries available in Wpf, that can be used in my application to work with all webcams that are available in market.
Thanks in advance!
There are three video capture/camera APIs in Windows:
Webcams with WDM drivers are visible on all the three APIs and - subject to API limitations - you can access cameras using any of the three.
DirectShow is the most widely used, and some DirectShow devices, esp. virtual cameras, are only "visible" through DirectShow. Skype and Hangouts use DirectShow for video capture.
All the three APIs are native, in .NET you use wrapper libraries to interface to the original APIs. MediaFoundation.NET is not a driver, it is an open source wrapper/adapter for Media Foundation API. You want DirectShow.NET instead that interfaces to DirectShow and gets you the widest choice of video capture devices.