客户端视频控件与视频设备的所有数据交换,包括控制指令、视频流等,
都必须通过视频服务节点进行,客户端视频控件不可与现场的视频设备直接网 络连接。
9.4 控件安装包要求
视频控件的安装包必须使用 cab 文件封装,带电子签名,能在 Internet Explorer6或以上版本浏览器中安装。而且,安装包必须相对稳定,经常变化的 数据如视频监测点的基础信息、服务器位置的信息等不能够内嵌在控件和安装 包中。
9.5 需要实现的方法(method)
以下方法由客户端视频控件实现,并可以在网页上通过 JavaScript 调用。
初始化客户端控件 InitClient(initString) 说明:初始化视频监控的客户端的控件。
函数原型:InitClient (initString);
参数说明:initString: 由视频运营商提供的需要初始化客户端控件的固定 的字符串参数,此参数与视频点 ID 无关。例如:可以为视频分发服务器的地址、
认证服务器地址等,具体格式可以由视频运营商自己定义、自己解释使用。
返回值:0:初始化失败;1:初始化成功
设置客户端显示模式(SetDisplayModel)
说明:设置在登录后客户端接口的显示模式;
12 |
函数原型:SetDisplayModel(Value:SYSUINT);
参数说明:Value:显示模式;0-显示实时视频窗口;1-只显示回放视频 窗口;
返回值:无;
实时播放开始(StartPlay)
说明:在指定播放窗口播放指定监控点视频;
函数原型:StartPlay(CamID, TicketString,CamChn);
参数说明:CamID:监控点设备编号;TicketString:服务器返回的票据,此 票据只用此一次,用过即失效;CamChn:监控点对应的通道号(CamChn(监 控点通道号)暂时不会使用,只在接口中预留)。
返回值:无;
实时播放停止(StopPlay)
说明:停止指定窗口中正在播放的视频;
函数原型:StopPlay();
返回值:无;
开始云台或镜头动作(ifActCtrl)
说明:开始指定窗口视频的云台或镜头动作;
函数原型:ifActCtrl(CtrlStr);
参数说明:CtrlStr:控制命令:
“LEFT”左转
“RIGHT”右转
“UP”上转
13 |
“DOWN”下转
“ZOOMIN”拉近
“ZOOMOUT”拉远 返回值:无;
停止云台或镜头动作(ifActCtrlStop)
说明:停止指定窗口视频的云台或镜头动作;
函数原型:ifActCtrlStop(CtrlStr);
参数说明:CtrlStr:控制命令
“LEFT”左转停
“RIGHT”右转停
“UP”上转停
“DOWN”下转停
“ZOOMIN”拉近停
“ZOOMOUT”拉远停 返回值:无;
打开(/关闭)声音(SetSoundOn)
说明:可打开或关闭指定视频窗画面的声音;
函数原型:SetSoundOn(Value);
参数说明:Value:设定值,True:声音开启,False:声音关闭;
返回值:无;
音量(SetVideoVoice)
说明:可设定指定视频画面音量大小;
函数原型:SetVideoVoice(Value);
14 |
参数说明:Value:设定值(范围 0-100);
返回值:无;
截图(VideoCapture)
说明:对指定视频画面截图;
函数原型:VideoCapture(bPicSum);
参数说明:bPicSum:一次截图的张数;(范围 1-5)
返回值:无;
录像开始(VideoRecordStart)
说明:对指定视频画面开始录像;
函数原型:VideoRecordStart();
返回值:无;
录像停止(VideoRecordStop)
说明:对指定视频画面停止录像;
函数原型:VideoRecordStop();
返回值:无;
回放开始(StartReplayByTime)
说明:在视频窗口按给定的起始时间开始回放;
函数原型:StartReplayByTime(CamID, TicketString,CamChn,Time:WideString)
参数说明:CamID:监控点设备编号;TicketString:服务器返回的票据,此 票据只用此一次,用过即失效;CamChn:监控点通道号;Time:回放起始时间
(包括年,月,日,小时,分钟,秒,如:2007 年 7 月 12 日 8 点 23 分 45 秒的 表示形式为:20070708122345);
返回值:无;
15 |
回放停止(StopReplay)
说明:停止播放回放视频;
函数原型:StopReplay()
回放模式(SetReplayModel)
说明:设置回放模式,如暂停,快进,快退;
函数原型:SetReplayModel(ReplayModel,ReplaySpeed);
参数说明:ReplayModel:回放模式;
1:恢复到正常播放状态;
3:回放暂停;
4:快进;
6:快退;
ReplaySpeed:快进或快退速率,范围:1-8;
十、服务器端集成要求
服务器端集成要求视频监控运营商在视频服务节点上提供符合要求的 Web 服务,监控中心平台需要按照统一的接口标准调用视频服务节点上的 Web 服务,
实现数据交换。视频服务节点上提供的 Web 服务,调用方法采用 XML-RPC。
视频服务节点需要实现的接口如下:
10.1 实时视频接口
权限集成接口 GetRtVideoTicket(CamID) 参数:
CamID:点位 ID
16 |
结果:
实时视频的 VideoTicket 服务说明:
XML-RPC
以下是 XML-RPC 请求和响应示例。所显示的占位符需替换为实际值。
POST /RPC2 HTTP/1.0
User-Agent: Frontier/5.1.2 (WinNT) Host: localhost
Content-Type: text/xml; charset=utf-8 Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<methodCall>
<methodName>GetRtVideoTicket</methodName>
<params>
<param>
<value><string>string</string></value>
</param>
</params>
</methodCall>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8 Content-Length: length
<?xml version="1.0"?>
<methodResponse>
<params>
<param>
<value>
<struct>
<member>
<name>CamID</name>
<value><string>string</string></value>
</member>
<member>
<name>TicketString</name>
<value><string>string</string></value>
17 |
</member>
</struct>
</value>
</param>
</params>
</methodResponse>
10.2 历史视频接口
列表检索接口 QueryHisVideo(CamID,StartTime,EndTime)
参数:
CamID:点位 ID
StartTime:开始时间 EndTime:结束时间 结果:
HisVideoInfo的数组,每段历史视频一个 HisVideoInfo 服务说明:
XML-RPC
以下是 XML-RPC 请求和响应示例。所显示的占位符需替换为实际值。
POST /RPC2 HTTP/1.0
User-Agent: Frontier/5.1.2 (WinNT) Host: localhost
Content-Type: text/xml; charset=utf-8 Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<methodCall>
<methodName>QueryHisVideo</methodName>
<params>
<param>
<value><string>string</string></value>
</param>
18 |
<param>
</methodCall>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8 Content-Length: length
<?xml version="1.0"?>
<methodResponse>
<params>
<param>
</value>
</params>
</methodResponse>
权限集成接口 GetHisVideoTikect(CamID,StartTime,EndTime) 参数:
CamID:点位 ID StartTime:开始时间 EndTime:结束时间 结果:
20 |
历史视频的 VideoTicket 服务说明:
XML-RPC
以下是 XML-RPC 请求和响应示例。所显示的占位符需替换为实际值。
POST /RPC2 HTTP/1.0
User-Agent: Frontier/5.1.2 (WinNT) Host: localhost
Content-Type: text/xml; charset=utf-8 Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<methodCall>
<methodName>GetHisVideoTikect</methodName>
<params>
<param>
<value><string>string</string></value>
</param>
</methodCall>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8 Content-Length: length
<?xml version="1.0"?>
<methodResponse>
<params>
<param>
<value><string>string</string></value>
</member>
<member>
<name>TicketString</name>
<value><string>string</string></value>
</member>
</struct>
</value>
</param>
</params>
</methodResponse>
10.3 开关灯集成
即时开关灯接口:SendCommand(CamID,CommandName, CommandParam) 参数
CamID:点位 ID
CommandName: “LightPowerSwitch”
CommandParam: True/False 结果:
CommandResult 服务说明:
XML-RPC
以下是 XML-RPC 请求和响应示例。所显示的占位符需替换为实际值。
POST /RPC2 HTTP/1.0
User-Agent: Frontier/5.1.2 (WinNT) Host: localhost
Content-Type: text/xml; charset=utf-8 Content-Length: length
22 |
<?xml version="1.0" encoding="utf-8"?>
<methodCall>
<methodName>SendCommand</methodName>
<params>
<param>
<value><string>string</string></value>
</param>
<param>
<value><string>LightPowerSwitch</string></value>
</param>
<param>
<value><string>BooleanString(True/False)</string></value>
</param>
</params>
</methodCall>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8 Content-Length: length
<?xml version="1.0"?>
<methodResponse>
<params>
<param>
<value>
<struct>
<member>
<name>Success</name>
<value><boolean>boolean</boolean></value>
</member>
<member>
<name>ErrorMessage</name>
<value><string>string</string></value>
</member>
</struct>
</value>
</param>
</params>
</methodResponse>
23 |
定时开关灯接口:SendCommand(CamID,CommandName, CommandParam) 参数:
CamID:点位 ID
CommandName: “SetupLightPowerSwitch”
CommandParam: 定时开关灯的时间对,时间对之间用分号(;)隔开;每 个时间对由开始时间和结束时间组成,中间以减号(-)分隔;开始时间与结束 时间均以“小时分钟”的形式表示,不足两位补零。例如: ”0130-0230;1800-1900”,表示有两段时间开灯,分别是 1:30~2:30、18:00~19:00。
结果:
CommandResult 服务说明:
XML-RPC
以下是 XML-RPC 请求和响应示例。所显示的占位符需替换为实际值。
POST /RPC2 HTTP/1.0
User-Agent: Frontier/5.1.2 (WinNT) Host: localhost
Content-Type: text/xml; charset=utf-8 Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<methodCall>
<methodName>SendCommand</methodName>
<params>
<param>
<value><string>string</string></value>
</param>
<param>
<value><string>SetupLightPowerSwitch</string></value>
</param>
<param>
<value><string>0130-0230;1800-1900</string></value>
</param>
</params>
24 |
</methodCall>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8 Content-Length: length
<?xml version="1.0"?>
<methodResponse>
<params>
<param>
<value>
<struct>
<member>
<name>Success</name>
<value><boolean>boolean</boolean></value>
</member>
<member>
<name>ErrorMessage</name>
<value><string>string</string></value>
</member>
</struct>
</value>
</param>
</params>
</methodResponse>
1. 客户端视频控件的 CAB 安装包文件 2. 视频控件的版本号 version 参数 3. 视频控件的类标识 classid 参数
4. 视频控件初始化的固定的字符串 initString 的参数 5. 视频服务节点 Web 服务接口 URL 的参数
26 |