LiveNVR支持预置位控制,包括转到指定预置位,设置指定预置位,删除指定预置位

预置位在安防领域有较为普遍的应用,可以进行很多既定位置的跳转,很方便

之前我们说过如何用Onvif协议进行设备的发现,探测,以及云台控制等,今天我们来说一下如何使用Onvif进行预置位的操作

流程

获取设备能力Capabilities

获取设备的能力,并且可以获取到Media和PTZ的URI,使用这两个URL可以进行流和预置位操作,这里如果PTZ URI获取不到意味着这个设备无法支持预置位控制

_tds__GetCapabilities* capabilities = soap_new__tds__GetCapabilities(proxyDevice, -1);
tt__CapabilityCategory* category = new tt__CapabilityCategory;
capabilities->Category = category;
*(capabilities->Category) = tt__CapabilityCategory__All;
_tds__GetCapabilitiesResponse* response = soap_new__tds__GetCapabilitiesResponse(proxyDevice, -1);
if (SOAP_OK == proxyDevice->GetCapabilities(capabilities, response))
{if (response->Capabilities){//Media URI: response->Capabilities->Media->XAddr;//PTZ URI: response->Capabilities->PTZ->XAddr;}
}

获取Media Profile

_trt__GetProfiles* getProfiles = soap_new__trt__GetProfiles(proxyMedia, -1);
_trt__GetProfilesResponse* response = soap_new__trt__GetProfilesResponse(proxyMedia, -1);
if (SOAP_OK == proxyMedia->GetProfiles(getProfiles, response))
{int size = response->__sizeProfiles;for (int i = 0; i < size; ++i){if (response->Profiles[i]){//Media Profile Token: response->Profiles[i]->token;//一般设备包含多个Profile Token,包含主码流、子码流、第三码流}}
}

预置位控制

bool result = false;PTZBindingProxy* ptzProxy = new PTZBindingProxy;ptzProxy->soap_endpoint = ptzUrl.c_str();if (!security(ptzProxy, username, password)){delete ptzProxy;return result;}char presetToken[8];itoa(index, presetToken, 10);if (command == PRESET_GOTO){_tptz__GotoPreset* preset = soap_new__tptz__GotoPreset(ptzProxy, -1);_tptz__GotoPresetResponse* response = soap_new__tptz__GotoPresetResponse(ptzProxy, -1);preset->ProfileToken = const_cast<char*>(profile.c_str());preset->PresetToken = presetToken;if (SOAP_OK == ptzProxy->GotoPreset(preset, response))result = true;if (response)soap_delete__tptz__GotoPresetResponse(ptzProxy, response);if (preset)soap_delete__tptz__GotoPreset(ptzProxy, preset);}else if (command == PRESET_SET){_tptz__SetPreset* preset = soap_new__tptz__SetPreset(ptzProxy, -1);_tptz__SetPresetResponse* response = soap_new__tptz__SetPresetResponse(ptzProxy, -1);preset->ProfileToken = const_cast<char*>(profile.c_str());preset->PresetToken = presetToken;if (SOAP_OK == ptzProxy->SetPreset(preset, response))result = true;if (response)soap_delete__tptz__SetPresetResponse(ptzProxy, response);if (preset)soap_delete__tptz__SetPreset(ptzProxy, preset);}else if (command == PRESET_REMOVE){_tptz__RemovePreset* preset = soap_new__tptz__RemovePreset(ptzProxy, -1);_tptz__RemovePresetResponse* response = soap_new__tptz__RemovePresetResponse(ptzProxy, -1);preset->ProfileToken = const_cast<char*>(profile.c_str());preset->PresetToken = presetToken;if (SOAP_OK == ptzProxy->RemovePreset(preset, response))result = true;if (response)soap_delete__tptz__RemovePresetResponse(ptzProxy, response);if (preset)soap_delete__tptz__RemovePreset(ptzProxy, preset);}delete ptzProxy;return result;

关于LiveNVR

LiveNVR能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera、NVR等具有RTSP协议输出的设备接入到LiveNVR,LiveNVR能够将这些视频源的音视频数据进行拉取,转换为RTMP/HLS,进行全平台终端H5直播(Web、Android、iOS),并且LiveNVR能够将视频源的直播数据对接到第三方CDN网络,实现互联网级别的直播分发;

获取更多信息

邮件:support@liveqing.com

技术交流QQ群:947137753

咨询电话:15156896292(同微信)

试用下载: https://www.liveqing.com/docs/download/LiveNVR.html

LiveQing视频流媒体无插件直播方案:www.liveqing.com

Copyright © LiveQing Team 2016-2019

LiveNVR中使用Onvif协议控制预置位相关推荐

  1. golang通过onvif协议控制云台

    golang通过onvif协议控制云台 onvif协议 推荐使用github三方库 代码示例 onvif协议 协议详情参考onvif官网, 本文章只是go通过onvif协议控制云台 推荐使用githu ...

  2. 使用ONVIF协议控制海康威视球机

    运行前应检测摄像头是否开启onvif协议,并添加添加用户 import time import zeep import requests from onvif import ONVIFCamera f ...

  3. VC中基于TWAIN协议控制扫描仪-----初级版

    PS:本人是C++小白一枚,在研究此功能时不知走了多少弯路,网上的资料各种残缺不齐,很多重点还一笔带过 参考博文:http://www.cnblogs.com/yedaoq/archive/2010/ ...

  4. java 使用onvif协议 PTZ 登录认证,获取摄像头位置, 控制摄像头转动,digest认证,拍照截图

    1. 介绍 前面公司做摄像头相关的项目,一开始使用的海康威视提供的相关接口来控制摄像头转动,获取位置等,后面发现由于大华的很多摄像头使用该接口却行不通,后面所以就转用通用的 onvif 协议来做相关的 ...

  5. android studio集成onvif协议的网络摄像头

    android版本的onvif及rtsp协议基本使用介绍 onvif协议实现源码 rtsp源码 Onvif协议基本介绍 1.搜索可用的设备 2.获取摄像头信息 3.获取摄像头截图 4.其他功能不一一介 ...

  6. SfxMCP基于onvif协议H5无插件直播方案中onvif设备的接入方法 - sfxlab

    SfxMCP基于onvif协议H5无插件直播方案中onvif设备的接入方法 - sfxlab SFX流媒体解决方案基于安防行业推出了以媒体汇聚平台(SfxMCP)为主,以媒体分发平台(SfxMDP)和 ...

  7. Onvif协议:IPC客户端开发之PTZ控制

    介绍 在安防摄像头中,不仅仅涉及到固定摄像头的枪击,同样还包含可以360°转动的球机.因此对球机的云台方向控制是Onvif协议开发过程中必不可少的过程 球机的云台控制主要包含:八个方向(上.下.左.右 ...

  8. Onvif协议客户端开发(8)--球机云台的控制

    球机的云台控制 一.介绍 在安防摄像头中,不仅仅涉及到固定摄像头的枪击,同样还包含可以360°转动的球机.因此对球机的云台方向控制是Onvif协议开发过程中必不可少的过程 球机的云台控制主要包含:八个 ...

  9. Onvif协议学习:14、球机云台控制PTZ

    Onvif协议学习:14.球机云台控制PTZ 文章目录 Onvif协议学习:14.球机云台控制PTZ 一.介绍 二.代码实现 八个方向.放下及缩小控制 聚焦控制 原文链接:https://blog.c ...

最新文章

  1. 济南学习 Day2 T2 am
  2. java metrics 简书_Metrics 入门文档翻译
  3. 化工原理各章知识点汇总
  4. Activity的生命周期及各生命周期方法的作用
  5. C/C++字符串输入方法比较(带回车不带回车输入)
  6. CSS three column layout
  7. 软件测试 学习之路 DOS常用命令
  8. [费用流]Bzoj P1877 晨跑
  9. 支持向量机SVM推导
  10. python进阶课程目标 学习内容_Python学习教程(Python学习路线):第九天-面向对象进阶...
  11. linux定时备份文件到指定文件夹,Linux定时备份数据库到指定邮箱的方法
  12. 12.高性能MySQL --- 高可用性
  13. 分布式架构入门心得小结(1)
  14. 扩展频谱--直接序列扩频
  15. linux备份没有vmlinuz,模拟centos6.8系统下initramfs文件和vmlinuz文件损坏恢复
  16. 深入浅出虚拟机-第三版笔记(重点)整理-2022-04-06
  17. 免费学java的网站_java免费学习网站推荐
  18. 【VUE】vue安装教程
  19. Django之 migration 原理
  20. python一元线性回归算法,代码及参数更新动图展示

热门文章

  1. Linux下的文件目录及其作用
  2. 《第一行代码》Android学习笔记(6)数据存储
  3. 系统调用sys_write的过程
  4. 计算机组成原理南阳理工学院教务管理系统,南阳理工学院教务管理系统登录入口...
  5. Jena RDF API 使用教程
  6. 您真的理解了SQLSERVER的日志链了吗
  7. java变形金刚视频,Java 通用代码生成器光 2.0.0 Insight(内省) 发布尝鲜版 4,代码变形金刚...
  8. OPPO_1107刷机包 救砖解锁刷机教程
  9. Telling INIT to go to single user mode. init: rc main
  10. win7 64位下安装delphi xe3及破解