Search code examples
c#c++.netdirectshowdirectshow.net

How To Get A List Of Available Video Capture Devices


I am creating a project using DirectShow.Net that shows a preview of a webcam view within a windows form using Visual C#.

I would like to start with gaining a collection of available video devices so I can choose between either the built in webcam or the USB webcam.

I have seen several examples of this being done in C++, e.g. on the msdn "http://msdn.microsoft.com/en-us/library/windows/desktop/dd377566(v=vs.85).aspx".

However as I do not know any C++ I do not know how to convert this code into C#.


Solution

  • DirectShow.NET sample \Samples\Capture\DxLogo\Capture.cs shows how to do it:

    // Get the collection of video devices
    capDevices = DsDevice.GetDevicesOfCat(FilterCategory.VideoInputDevice);
    

    The keyword you need is FilterCategory.VideoInputDevice.

    See also: