I am trying to change the properties of my Orbbec Astra Pro which is connected to a Windows 10 machine.
Unfortunately no matter what I set using SetCaptureProperty() it doesnt seem to make a difference.
When I use System.Reflection to retrieve all values from my camera, I receive many -1 result. I guess that means something like: “Nope, sorry, not supported!”.
What am I doing wrong here? How can I set at least the resolution and fps?
foreach (var prop in Enum.GetValues(typeof(CapProp)))
{
Debug.WriteLine($"{prop.ToString()} : " +
$"{this.videoCapture.GetCaptureProperty((CapProp)prop)}");
}
It seems that I am able to set the contrast using, e.g:
this.videoCapture.SetCaptureProperty(CapProp.Contrast, 50.0);
But using a value of e.g. 100.0 has no effect. I guess it violates some boundary/maximum the camera/driver does read / accept. So the next question is:
How can I find out the accepted range the camera/driver accepts for a property?