|
|
|
@ -1,304 +0,0 @@
|
|
|
|
|
ICC Demo 使用说明
|
|
|
|
|
|
|
|
|
|
ICC Demo 使用说明 .............................................................................................................. 1
|
|
|
|
|
1 Qt Demo 文件目录说明。 ............................................................................. 2
|
|
|
|
|
2 Demo 运行方法及功能说明 .......................................................................... 2
|
|
|
|
|
2.1 初始化 .................................................................................................... 4
|
|
|
|
|
2.2 登录 ........................................................................................................ 5
|
|
|
|
|
2.3 组织树获取 ............................................................................................ 6
|
|
|
|
|
2.3.1 切换窗口到组织树 ..................................................................... 6
|
|
|
|
|
2.3.2 查询组织信息 ............................................................................. 6
|
|
|
|
|
2.3.3 设备/通道状态接收方法 ............................................................8
|
|
|
|
|
2.4 实时视频操作 ........................................................................................ 9
|
|
|
|
|
2.4.1 播放界面 ..................................................................................... 9
|
|
|
|
|
2.4.2 设置码流类型 ............................................................................. 9
|
|
|
|
|
2.4.3 实时抓图 ................................................................................... 10
|
|
|
|
|
2.4.4 音频音量控制 ........................................................................... 10
|
|
|
|
|
2.4.5 录制当前播放的视频到本地 ...................................................11
|
|
|
|
|
2.4.6 卡口操作 ................................................................................... 11
|
|
|
|
|
2.5 录像回放 .............................................................................................. 13
|
|
|
|
|
2.5.1 录像查询 ................................................................................... 13
|
|
|
|
|
2.5.2 录像相关操作: ....................................................................... 14
|
|
|
|
|
2.5.3 录像下载 ................................................................................... 15
|
|
|
|
|
2.5.4 回放抓图 ................................................................................... 16
|
|
|
|
|
2.5.5 获取回放时间 ........................................................................... 17
|
|
|
|
|
2.5.6 本地回放 ................................................................................... 18
|
|
|
|
|
2.6 云台控制 .............................................................................................. 18
|
|
|
|
|
2.6.1 云台方向控制 ........................................................................... 19
|
|
|
|
|
2.6.2 云台镜头操作 ........................................................................... 19
|
|
|
|
|
2.6.3 云台预置点操作 ....................................................................... 20
|
|
|
|
|
2.7 报警接收 .............................................................................................. 20
|
|
|
|
|
2.8 语音对讲 .............................................................................................. 21
|
|
|
|
|
2.9 电视上墙 ............................................................................................. 21
|
|
|
|
|
|
|
|
|
|
1 Qt Demo 文件目录说明。
|
|
|
|
|
|
|
|
|
|
打开本文档时,你需要已获取到 ICC SDK 二次开发包如下:
|
|
|
|
|
2046311_General_DPSDK_C_Chn_Win64_IS_V1.0.001.210202.zip
|
|
|
|
|
解压缩后文件目录如下:
|
|
|
|
|
|
|
|
|
|
Demo 文件夹下包含有 QtDemo 工程相关文件。
|
|
|
|
|
dll 文件夹中 是 demo 运行需要使用的 dll 库文件。
|
|
|
|
|
lib 文件夹中是 DPSDK.lib 静态库
|
|
|
|
|
ReadMe 文件简单说明开发包文件命名说明、目录主要结构、demo 运行操作步骤以及如何
|
|
|
|
|
|
|
|
|
|
使用 VS 打开 demo 工程并编译调试。
|
|
|
|
|
DSSICCManual.pdf 为 ICC 对接业务调用流程介绍以及接口说明。
|
|
|
|
|
|
|
|
|
|
2 Demo 运行方法及功能说明
|
|
|
|
|
|
|
|
|
|
打开 demo 文件夹,文件信息如下:
|
|
|
|
|
QtDemo ——该文件夹中包含 demo 工程文件,可以通过 Visual Studio 2005(简称 VS2005)
|
|
|
|
|
打开。Demo 使用 visual studio 2005、Qt4.8.5 qt-vs-addin-1.1.11-opensource.exe 进行编
|
|
|
|
|
写。
|
|
|
|
|
Copytobin.bat——库文件拷贝脚本,用来将 dll 中的库文件拷贝到 demo\bin 中
|
|
|
|
|
vs2005_dsl_debug.vsprops——工程属性文件
|
|
|
|
|
vs2005_dsl_release.vsprops——工程属性文件
|
|
|
|
|
bin ——demo 运行需要依赖的库文件等都在该文件夹下,通过双击运行 Copytobin.bat 脚
|
|
|
|
|
本可以将 dll 文件夹中的库文件拷贝到 bin 文件夹中,找到 QtDemo.exe,然后双击即可运
|
|
|
|
|
行。
|
|
|
|
|
|
|
|
|
|
Demo 界面如下:
|
|
|
|
|
2.1 初始化
|
|
|
|
|
|
|
|
|
|
Demo 登录之前需要先进行初始化,点击初始化系统按钮。
|
|
|
|
|
ICC Demo 默认使用 https 方式跟平台进行交互,需要使用的端口为 https 端口(默认 https
|
|
|
|
|
端口为 443),需要勾选 HTTPS Mode.
|
|
|
|
|
2.2 登录
|
|
|
|
|
|
|
|
|
|
填写服务 Ip、端口、用户名、密码,点击登录按钮登录(点击登出登出)。
|
|
|
|
|
2.3 组织树获取
|
|
|
|
|
2.3.1 切换窗口到组织树
|
|
|
|
|
|
|
|
|
|
填入组织编码,根据编码获取组织信息。默认不写即可。
|
|
|
|
|
选中压缩后,网络交互中的组织信息是压缩的,通过网络抓包不能看到正常组织信
|
|
|
|
|
息。通常需要排查组织信息是否正确时,可以通过去除勾选然后通过网络抓包确认
|
|
|
|
|
平台服务是否发送正确数据。
|
|
|
|
|
包含设备选项已无效,不需关心。
|
|
|
|
|
|
|
|
|
|
2.3.2 查询组织信息
|
|
|
|
|
|
|
|
|
|
点击按钮 查询组织可以获取组织信息,demo 接口内部自动请求了设备信息。
|
|
|
|
|
组织树相关说明;
|
|
|
|
|
|
|
|
|
|
<Department coding = 001 name = root sn = >
|
|
|
|
|
<Device>1000000</Device>
|
|
|
|
|
<Device>1000001</Device>
|
|
|
|
|
<Channel>1000000$1$0$0</Channel>
|
|
|
|
|
<Channel>1000000$3$0$0</Channel>
|
|
|
|
|
<Channel>1000000$4$0$0</Channel>
|
|
|
|
|
<Channel>1000001$1$0$0</Channel>
|
|
|
|
|
<Channel>1000001$1$0$1</Channel>
|
|
|
|
|
<Channel>1000001$1$0$2</Channel>
|
|
|
|
|
<Channel>1000001$1$0$3</Channel>
|
|
|
|
|
<Channel>1000001$3$0$0</Channel>
|
|
|
|
|
<Channel>1000001$4$0$0</Channel>
|
|
|
|
|
|
|
|
|
|
</Department>
|
|
|
|
|
|
|
|
|
|
Department 是组织节点字段标识,coding 表示当前组织节点编码。name 表
|
|
|
|
|
|
|
|
|
|
示组织节点名称 sn 是组织节点的 sn 编码
|
|
|
|
|
<Device>1000000</Device> 表示当前节点包含的一个设备,设备 ID 为
|
|
|
|
|
1000000。
|
|
|
|
|
|
|
|
|
|
通道 ID/设备 ID 设备 ID 是 DSS 平台上添加设备后生成的对该设备在该平台的
|
|
|
|
|
|
|
|
|
|
唯一标识编码。通道 ID(CameraId)形如:1000000$1$0$0(设备 ID $1$0$通道
|
|
|
|
|
号),其中:
|
|
|
|
|
|
|
|
|
|
1) 1000000 是设备 ID(DeviceId)。该设备 ID 可以在 DSS 平台 web 管理员端“设
|
|
|
|
|
备管理”页面的“编码”列查询。
|
|
|
|
|
|
|
|
|
|
2) 从左往右数,第一个$后的数字代表的是单元类型。1 是编码单元、2 是解码单
|
|
|
|
|
元、3 是报警输入单元、4 是报警输出单元,5 电视墙输入单元,6 电视墙输出
|
|
|
|
|
单元,7 门禁单元,8 对讲单元,10 动环单元,14 闸道单元,15 LED 单元,16
|
|
|
|
|
周界单元。实时视频都是$1,1000000$1$0$0 表示设备 1000000 的第一个编
|
|
|
|
|
码通道。
|
|
|
|
|
|
|
|
|
|
3) 中间的$0 默认全写 0,代表的是单元类型的序号。
|
|
|
|
|
|
|
|
|
|
4) 最后一个$后面的数字表示通道号,1000000$1$0$0 表示设备 1000000 的第一
|
|
|
|
|
个通道。如一个设备有 8 个通道,则通道序号是 0-7.
|
|
|
|
|
|
|
|
|
|
5) 通过 DPSDK 组织树相关接口可以获取组织信息,组织树信息中包含设
|
|
|
|
|
|
|
|
|
|
备 ID 和通道 ID 信息。
|
|
|
|
|
|
|
|
|
|
<Channel>1000000$1$0$0</Channel> 表示设备 1000000 下的一个编码通
|
|
|
|
|
道,通常视频播放使用的即为编码通道。
|
|
|
|
|
|
|
|
|
|
1000000$3$0$0 表示设备 1000000 下的一个报警输入通道。
|
|
|
|
|
1000000$4$0$0 表示设备 1000000 下的一个报警输出通道。
|
|
|
|
|
|
|
|
|
|
2.3.3 设备/通道状态接收方法
|
|
|
|
|
|
|
|
|
|
ICC 平台通过事件通知上报设备、通道状态信息。
|
|
|
|
|
通过接口 DPSDK_SetEventCallBack 设置事件回调函数
|
|
|
|
|
设备状态通知事件类型为:DPSDK_EVENT_DEVICE_STATUS(值为 7)
|
|
|
|
|
通道状态通知事件类型为:DPSDK_EVENT_CHANNEL_STATUS(值为 8)
|
|
|
|
|
1、登录时的组织信息中的状态信息就是 实时的 ,
|
|
|
|
|
2、之后的状态变更会有 设备状态 或者 通道状态事件通知 上报
|
|
|
|
|
3、设备状态中 syncChannelStauts 为 1 时 ,需要同步通道状态跟设备状态
|
|
|
|
|
一致,其他根据通道状态事件和设备状态信息更新
|
|
|
|
|
|
|
|
|
|
2.4 实时视频操作
|
|
|
|
|
|
|
|
|
|
2.4.1 播放界面
|
|
|
|
|
|
|
|
|
|
界面切换到预览,在通道编码编辑框中填写一个可以播放视频的通道 ID。点
|
|
|
|
|
击开始播放按钮即可播放视频。视频播放画面在窗口界面的下方。
|
|
|
|
|
|
|
|
|
|
2.4.2 设置码流类型
|
|
|
|
|
|
|
|
|
|
默认值为主码流 1。码流类型:1=主码流, 2=辅码流
|
|
|
|
|
其他值使用默认值即可,其他字段详细说明可以查看平台 sdk 开发手册,视频预
|
|
|
|
|
览相关说明。
|
|
|
|
|
2.4.3 实时抓图
|
|
|
|
|
|
|
|
|
|
视频播放成功后,在预览中切换到抓图选项卡。1、填写图片存储位置 2、选择图
|
|
|
|
|
片保存格式 3 点击抓图到文件进行抓图,抓图成功后在图路径设置的位置中。
|
|
|
|
|
|
|
|
|
|
图片保存位置:
|
|
|
|
|
|
|
|
|
|
2.4.4 音频音量控制
|
|
|
|
|
|
|
|
|
|
音量控制需要视频播放成功后使用
|
|
|
|
|
2.4.5 录制当前播放的视频到本地
|
|
|
|
|
|
|
|
|
|
录制视频到本地需要先成功播放视频。
|
|
|
|
|
|
|
|
|
|
录像路径设置文件保存位置以及文件名称,录像文件命名会自动添加后缀,目前视
|
|
|
|
|
频录制仅支持将文件保存为 dav 格式。
|
|
|
|
|
录像分割长度按钮 设置文件分割大小,单位是 MB,设置成功后录制的视频文件
|
|
|
|
|
以这个大小进行分割文件保存。
|
|
|
|
|
点击开始录制进行开始,点击停止录制停止,停止时会显示录像存储完整位置等信
|
|
|
|
|
息。还可以通过按钮判断当前是否正在录制。
|
|
|
|
|
|
|
|
|
|
2.4.6 卡口操作
|
|
|
|
|
|
|
|
|
|
卡口操作跟视频播放相互独立,不依赖视频播放
|
|
|
|
|
GetBayDict 接口可以获取卡口数据字典相关类型定义,DictType 表示字典类型如
|
|
|
|
|
车道号、行车方向、车牌颜色车辆类型、车辆颜色等。具体类型定义可以查看平台
|
|
|
|
|
sdk 开发手册。
|
|
|
|
|
ChannelCode 填写需要卡口设备的通道 ID
|
|
|
|
|
DataType 表示卡口图片监控的订阅类型:1=车辆信息, 2=车辆信息+图片信息
|
|
|
|
|
StreamType 码流类型:1=主码流, 2=辅码流
|
|
|
|
|
StartBayPic 开启卡口图片监控,开启之后会跟据填写的 DataType 在接口设置的
|
|
|
|
|
回调函数中回调对应的数据信息,如设置的是车辆信息,开启卡口监控后会在左侧
|
|
|
|
|
列表中显示过车信息如车牌号、车辆速度、车牌颜色等。如果 DataType 设置为 2,
|
|
|
|
|
除了可以回调车辆信息,还可以回调图片数据,图片数据是以码流的形式回调的,
|
|
|
|
|
demo 中有相关处理示例,并将图片默认保存在 D:/temp.jpeg,同时在车辆信息列
|
|
|
|
|
表左侧展示该图片。具体处理可查看 demo 代码示例。
|
|
|
|
|
StopBayPic 停止卡口图片监控。
|
|
|
|
|
其他卡口相关数据获取请查看平台 sdk 开发手册卡口相关部分说明。
|
|
|
|
|
2.5 录像回放
|
|
|
|
|
|
|
|
|
|
2.5.1 录像查询
|
|
|
|
|
|
|
|
|
|
切换到 Playback 界面,填写想要播放的设备的通道 ID,然后根据时间、码流类型、录
|
|
|
|
|
像类型、录像来源参数查询录像。
|
|
|
|
|
2.5.2 录像相关操作:
|
|
|
|
|
|
|
|
|
|
Speed 选项卡可以设置录像播放的速率,速率值分别为 1、2、4、8、16、1/2、
|
|
|
|
|
1/4、1/8、1/16
|
|
|
|
|
|
|
|
|
|
Direction 用来设置录像播放方向 默认值为 0 正向播放,1 为倒放。
|
|
|
|
|
Start by Time 按钮 点击改按钮,根据 Record 界面的时间进行时间回放,视频
|
|
|
|
|
画面在窗口右侧位置。在进行时间回放的时候,需要修改 Record 界面中 RecordType 为
|
|
|
|
|
1,否则会产生播放报错 2060。
|
|
|
|
|
Start by File 按钮 点击改按钮,前需要先在 Record 界面中查询录像,并选中一
|
|
|
|
|
条想要播放的录像文件
|
|
|
|
|
Pause 按钮 该按钮可以暂停\恢复回放
|
|
|
|
|
Frame step 是单帧播放
|
|
|
|
|
Set Speed 可以在播放过程中调整播放速率
|
|
|
|
|
通过设置播放方向 和 播放速率 可以实现快进快退
|
|
|
|
|
|
|
|
|
|
2.5.3 录像下载
|
|
|
|
|
|
|
|
|
|
录像下载需要现在 Record 中查询录像,查询到录像的设备可以进行下载。
|
|
|
|
|
|
|
|
|
|
当 DownLoadFileName 为空时:
|
|
|
|
|
ChannelCode 中填写想要下载录像的通道 ID。
|
|
|
|
|
ChannelName 填写设备名称,填写 DownLoadPath 时,根据 NameRule 对下载
|
|
|
|
|
文件进行命名。
|
|
|
|
|
NameRule
|
|
|
|
|
FileFormat 可以设置下载录像的保存格式,目前支持的格式有:AVI、MP4、FLV、
|
|
|
|
|
ASF, Normal 是保存成大华码流(dav 格式)的文件。
|
|
|
|
|
DownLoadPath 中设置想要将录像保存的位置,可以只填写到文件夹路径。填写
|
|
|
|
|
了 DownloadPath 的会根据 NameRule 进行命名。
|
|
|
|
|
当 DownLoadFileName 不为空时:
|
|
|
|
|
|
|
|
|
|
DownLoadFileName 填 写 问 文 件 存 储 的 绝 对 路 径 。 下 载 文 件 按 照
|
|
|
|
|
DownloadFileName 里的路径进行存储。
|
|
|
|
|
|
|
|
|
|
2.5.4 回放抓图
|
|
|
|
|
|
|
|
|
|
切换到 Picture,可以进行录像抓图,操作参见实时抓图方法。
|
|
|
|
|
PicFormat 支持的图片格式 0 bmp 1 jpeg
|
|
|
|
|
Path 设置图片保存位置已经文件名称
|
|
|
|
|
GetPictureBuf 抓图,并将图片保存在分配的缓存空间中
|
|
|
|
|
DPSDK_Get24BitPictureFile 抓图,并将图片保存到 path 设置的路径中
|
|
|
|
|
DPSDK_ConvertToBmpFile 将缓存的 图片数据 转 换成 bmp 文件,并 存 储在
|
|
|
|
|
szFileName 设置的路径中
|
|
|
|
|
DPSDK_ConvertToJpegFile 将缓存的图片数据转换成 Jpeg 文件,并存储在
|
|
|
|
|
szFileName 设置的路径中
|
|
|
|
|
|
|
|
|
|
2.5.5 获取回放时间
|
|
|
|
|
|
|
|
|
|
可以通过调用接口 DPSDK_GetPlayedTime,获取播放的时间,demo 界面中目前
|
|
|
|
|
隐藏了相关按钮,可以查看平台 sdk 开发手册查看相关说明。
|
|
|
|
|
2.5.6 本地回放
|
|
|
|
|
|
|
|
|
|
本地视频录像回放,点击本地回放,选择回放文件
|
|
|
|
|
|
|
|
|
|
选择.dav 文件
|
|
|
|
|
|
|
|
|
|
。
|
|
|
|
|
|
|
|
|
|
2.6 云台控制
|
|
|
|
|
|
|
|
|
|
云台控制相关接口在 DeviceFunction 模块中,channelCode 中需要填写想要控制
|
|
|
|
|
的云台设备的通道 ID.
|
|
|
|
|
2.6.1 云台方向控制
|
|
|
|
|
|
|
|
|
|
方向包含上、下、左、右、左上、左下、右上、右下 8 个方向
|
|
|
|
|
命令 表示停止转动还是开始转动
|
|
|
|
|
点击按钮,不切换命令的话,会一直按照之前的方向一直转动。
|
|
|
|
|
步长范围 1-8,默认为 1 即可。
|
|
|
|
|
|
|
|
|
|
2.6.2 云台镜头操作
|
|
|
|
|
|
|
|
|
|
方向 表示增加、减少
|
|
|
|
|
命令 表示停止还是开始
|
|
|
|
|
操作类型:1-变倍,2-变焦,3-光圈
|
|
|
|
|
|
|
|
|
|
2.6.3 云台预置点操作
|
|
|
|
|
|
|
|
|
|
操作类型
|
|
|
|
|
1 定位预置点 2 设置预置点 3 删除预置点 4 更新工作时间
|
|
|
|
|
填写通道 id,查询预置点,获取预置点列表
|
|
|
|
|
|
|
|
|
|
2.7 报警接收
|
|
|
|
|
|
|
|
|
|
成功登陆平台后,平台 SDK 内部会自动连接平台 MQ,并通过 MQ 接收事件通知。
|
|
|
|
|
ICC 平台报警接收方法:
|
|
|
|
|
ICC 平台通过事件通知上报报警信息。
|
|
|
|
|
通过接口 DPSDK_SetEventCallBack 设置事件回调函数
|
|
|
|
|
报警事件类型为:DPSDK_EVENT_ALARM_ALARMEVENT(值为 3)
|
|
|
|
|
在事件回调中根据事件类型判断是否为报警事件,报警事件对应事件信息中有报警类型
|
|
|
|
|
等相关信息,具体请查看 SDK 开发手册 DSSICCManual.pdf。
|
|
|
|
|
2.8 语音对讲
|
|
|
|
|
|
|
|
|
|
切换到对讲页面,对讲选项卡中是语音对讲的接口调用示例。语音对讲分为设备对讲和
|
|
|
|
|
通道对讲,请根据实际设备功能选择对应的对讲类型,也可以切换尝试使用。客户端上有语
|
|
|
|
|
音对讲功能,可先在客户端上选择相应设备测试成功后再通过 demo 接口调用实现。
|
|
|
|
|
|
|
|
|
|
填写通道 id->对讲条件填写(对讲类型->语音类别->对讲比特率->采样速率)->开始对讲
|
|
|
|
|
设备对讲时可填写设备 ID 或者通道 ID(demo 内部会进行解析),通道对讲仅能填写通道 ID。
|
|
|
|
|
对讲失败时,可能是对讲类型以及对讲参数不正确。当接口返回错误码-300 时,表示对讲
|
|
|
|
|
参数不正确,接口返回参数结构体会返回正确的对讲参数,修改参数后重新开始对讲。
|
|
|
|
|
2.9 电视上墙
|
|
|
|
|
|
|
|
|
|
切换到电视墙页面即时上墙操作请参考 QtDemo 中即时上墙操作说明.docx 文档说明
|
|
|
|
|
|