WPFMediaKit Webcam Property Page Enumeration ability? ...like Expression Encoder 4 SDK

May 2, 2013 at 4:27 PM
Hi Jeremiah,
Thanks for this awesome kit, I've only just discovered it and I'm very impressed!

Currently I can detect multiple webcams, display & capture stills inside my wpf application. I can also programmatically detect the current webcams max resolution and instantiate a VideoCaptureElement with this full resolution on opening. So far, so good.

However, I can't find a way to bring up the property page of the camera to manually set the camera resolution, fps etc. I know you provided a sample application that contains a properties button, which opens a property page when clicked...and yes this works, but it's just the brightness, focus etc properties.

There is a second property page that allows the resolution to be set. I've used Expression Encoder SDK before and this would return all property pages, much like your MultimediaUtil.VideoInputDevices. I could then enumerate them (usually only 2) and if there was a 2nd property page, provide the functionality to view it.

The brightness, focus etc page is usually the first page returned in Expression Encoder SDK and the resolution is usually the second page. I assume your app is just grabbing the first property page for simplicity, but I can not find it anywhere in your source code.

Is there a facility/variable/index somewhere in WPFmediakit that enables webcam property page enumeration?

Cheers & Thanks again for such a great tool!

May 3, 2013 at 5:14 AM
I suppose this is related to DirectShow and not really with WPFMediaKit?
May 3, 2013 at 5:31 AM
Yes it most likely is related to DirectShow. I was hoping wpfmediakit had a simple way of doing this. There is a PropertyPageHelper class I was looking at, but I'm yet to discover how to deal with multiple property pages. The ISpecifyPages interface suggests this is possible.

It's not critical, as I can determine the camera resolution capabilities etc myself and thus create my own property page, but if the option is there to use existing code I'll take it. Especially since it was so easy with the ee sdk.