LoukMouk
LoukMouk

Reputation: 512

How to get real ptz min/max values of an onvif ip camera?

Infos:

Camera model: Amcrest IP2M-841B ip camera

I coded a c# winform app which can connect to any onvif ip camera and send it ptz commands through events such as button clicks.

I'm using the following wsdl for

PTZ: https://www.onvif.org/ver20/ptz/wsdl/ptz.wsdl

MEDIA: http://www.onvif.org/onvif/ver10/media/wsdl/media.wsdl

Question:

How does one get the real min/max ptz values of my camera through an onvif command?

What I tried so far:

//PTZ
var ptzEndpointAddress = new EndpointAddress($"http://{cameraAddress}/onvif/ptz");
_ptzClient = new PTZClient(commonCustomBinding, ptzEndpointAddress);
_ptzClient.Endpoint.EndpointBehaviors.Add(commonPasswordDigestBehavior);

//Get configuration options
var configs = _ptzClient.GetConfigurations();
_ptzConfOptions = _ptzClient.GetConfigurationOptions(configs[0].token);

...

MaxPan = _ptzConfOptions.Spaces.AbsolutePanTiltPositionSpace[0].XRange.Max;
MinPan = _ptzConfOptions.Spaces.AbsolutePanTiltPositionSpace[0].XRange.Min;
MaxTilt = _ptzConfOptions.Spaces.AbsolutePanTiltPositionSpace[0].YRange.Max;
MinTilt = _ptzConfOptions.Spaces.AbsolutePanTiltPositionSpace[0].YRange.Min;
MaxZoom = _ptzConfOptions.Spaces.AbsoluteZoomPositionSpace[0].XRange.Max;
MinZoom = _ptzConfOptions.Spaces.AbsoluteZoomPositionSpace[0].XRange.Min;

Here's an example of what I get from these values: onvif absolute min/max

But, when I pan my camera to the far left, right, botton or top, I don't get the same values as maximum...

actual min/max 0

actual min/max 1

These values make no sense to me...

Upvotes: 0

Views: 971

Answers (1)

Andr Bee
Andr Bee

Reputation: 27

Request "GetCompatibleConfigurations" in https://www.onvif.org/ver20/ptz/wsdl/ptz.wsdl

Upvotes: 1

Related Questions