简体   繁体   English

ONVIF PTZ状态响应

[英]ONVIF PTZ status response

I'm using the web services provided by ONVIF to communicate with surveillance camera, so far so good. 到目前为止,我正在使用ONVIF提供的Web服务与监控摄像头进行通信。 My next objective is to create a FOV, and for that I need a continuous status update from camera. 我的下一个目标是创建FOV,为此,我需要从摄像机连续更新状态。

The ideal situation for me is to receive the absolute PTZ position after each camera movement, but so far didn't find a way to do so. 对我来说,理想的情况是在每次摄像机移动之后都获得绝对的PTZ位置,但是到目前为止,还没有找到一种方法。 There is the option of sending GetStatus() method which gives me the info, but sending it after each call is expensive and clumsy. 有发送GetStatus()方法的选项,该方法为我提供了信息,但是在每次调用后发送它既昂贵又笨拙。

Am I missing anything? 我有什么想念的吗? WireShark tells me that the response for ContinuousMove for example is ContinuousMoveResponse. WireShark告诉我,ContinuousMove的响应例如是ContinuousMoveResponse。 Without any status for PTZ position. PTZ位置没有任何状态。

Any help or advice would be appreciated. 任何帮助或建议,将不胜感激。

Thanks 谢谢

You are correct that you can retrieve the camera's coordinates with GetStatus() and as you can see here , ContinuousMoveResponse is empty. 您可以使用GetStatus()检索相机的坐标是正确的,并且如此处所示ContinuousMoveResponse为空。 This is because if you don't specify any timeout then the unit keeps the specified speeds for ever. 这是因为如果您未指定任何超时,则设备将永远保持指定的速度。 If you specify a timeout, ContinuousMove() may return earlier than the device actually finishes moving. 如果您指定一个超时, ContinuousMove()可能会在设备实际完成移动之前返回。

I don't really get why you complain that GetStatus() is expensive and clumsy. 我真的不明白为什么您抱怨GetStatus()昂贵且笨拙。 Anyway, this is the only way to know in ONVIF the orientation for every possible ONVIF-certified camera. 无论如何,这是在ONVIF中知道每个可能的ONVIF认证摄像机的方向的唯一方法。

Some cameras may (but they are not mandated to) send the PTZ coordinates in the RTSP stream as ONVIF metadata. 某些摄像机可能(但没有强制要求)将RTSP流中的PTZ坐标作为ONVIF元数据发送。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM