首页 客户端SDK使用手册

客户端SDK使用手册

举报
开通vip

客户端SDK使用手册 技术文档 DS_8000HC 系列网络硬盘录像机 客户端软件开发包编程手册 版本 1.4(Build 050708) 2005-07-08 第1 页 技术文档 前 言 非常感谢您使用我们公司的设备,我们将为您提供最好的服务。 本手册可能包含技术上不准确的地方或印刷错误。本手册...

客户端SDK使用手册
技术文档 DS_8000HC 系列网络硬盘录像机 客户端软件开发包编程手册 版本 1.4(Build 050708) 2005-07-08 第1 页 技术文档 前 言 非常感谢您使用我们公司的设备,我们将为您提供最好的服务。 本手册可能包含技术上不准确的地方或印刷错误。本手册的内容将做定期的更 新,恕不另行通知;更新的内容将会在本手册的新版本中加入。我们随时会改进或 更新本手册中描述的产品或程序。 第2 页 技术文档 目 录 第一章 简介……………………………………………………………….5 1.1 组成………………………………………………………………………………5 1.2 注意事项…………………………………………………………………………5 第二章 编程指南………………………………………………………….7 2.1 编程 说明 关于失联党员情况说明岗位说明总经理岗位说明书会计岗位说明书行政主管岗位说明书 …………………………………………………………………………7 2.2 函数调用顺序……………………………………………………………………8 第三章 数据结构………………………………………………………….11 3.1 客户端数据结构…………………………………………………………………11 3.1.1 显示模式………………………………………………………………………………….11 3.1.2 发送模式………………………………………………………………………………….11 3.1.3 设备信息结构……………………………………………………………………………..11 3.1.4 图像预览参数…………………………………………………………………………….11 3.1.5 文件信息结构…………………………………………………………………………….12 3.1.6 上传的报警信息………………………………………………………………………….12 3.1.7 报警输出状态…………………………………………………………………………….13 3.1.8 硬件解码预览图像参数………………………………………………………………….13 3.1.9 日志信息……………………………………………………………………………….…13 3.1.10 设备的状态信息……………………………………………………………………...…15 3.1.11 ATM DVR上传交易信息………………………………………………………………..16 3.2 设备端参数数据结构……………………………………………………………16 3.2.1 设备系统配置结构…………………………………………………………………...…..17 3.2.2 网络配置结构…………………………………………………………………...………..17 3.2.3 通道图像配置结构…………………………………………………………………...…..18 3.2.4 压缩参数配置结构…………………………………………………………………...…..21 3.2.5 录像配置参数结构…………………………………………………………………...…..21 3.2.6 解码器参数配置结构…………………………………………………………………….22 3.2.7 串口配置结构………………………………………………………………….…………24 3.2.8 报警输入配置结构………………………………………………………………….……24 3.2.9 报警输出配置结构………………………………………………………………….……25 3.2.10 本地预览参数配置结构……………………………………………………………...…25 3.2.11 视频输出配置结构…………………………………………………………………...…25 3.2.12 用户参数配置结构…………………………………………………………………...…26 3.2.13 异常参数配置结构…………………………………………………………………...…27 3.2.14 帧信息配置结构……………………………………………………………………...…27 第四章 函数说明………………………………………………………….28 4.1 客户端函数………………………………………………………………………28 4.1.1 初始化…………….………………………………………………………………………28 4.1.2 设置显示模式…….………………………………………………………………………31 4.1.3 启动/停止监听程序………………………………………………………………………31 4.1.4 获取错误代码…………………………………………………………………………….31 4.1.5 用户注册………….………………………………………………………………………33 4.1.6 图像预览………….………………………………………………………………………33 4.1.6.1 视频参数…….….……………………………………………………………………34 第3 页 技术文档 4.1.6.2 叠加字符和图像.………….…………………………………………………………34 4.1.6.3 播放控制…….….……………………………………………………………………35 4.1.6.4 声音控制…….….……………………………………………………………………35 4.1.6.5 捕获…….….…………………………………………………………………………36 4.1.6.6 抓图…….….…………………………………………………………………………37 4.1.7 云台控制…….….………………………………………………………………………...37 4.1.8 回放与下载…….….……………………………………………………………………...40 4.1.8.1 查找文件…….….……………………………………………………………………40 4.1.8.2 回放…….….…………………………………………………………………………41 4.1.8.3 播放控制…….….……………………………………………………………………42 4.1.8.4 捕获…….….…………………………………………………………………………42 4.1.8.5 获取OSD时间…….….……………………………………………………………..43 4.1.8.6 抓图…….….…………………………………………………………………………44 4.1.8.7 下载…….….…………………………………………………………………………44 4.1.9 报警…….….………………………………………………………………………………45 4.1.10 语音对讲…….….……………………………………………………………………….45 4.1.11 语音广播…….….……………………………………………………………………….46 4.1.12 透明通道…….….……………………………………………………………………….46 4.1.13 远程控制本地显示…….….………………………………………………………...…..47 4.1.14 远程手动录像…….….…………………………………………………………………..48 4.1.15 解码卡…….….…………………………………………………………………………..48 4.1.16 日志…….….……………………………………………………………………………..50 4.1.17 获取设备状态…….….…………………………………………………………………..50 4.2 设备端配置函数…….….………………………………………………………...51 4.2.1 参数配置…….….…………………………………………………………………………51 4.2.2 恢复默认值…….….………………………………………………………………………53 4.2.3 保存参数…….….…………………………………………………………………………53 4.2.4 重启/关闭设备…….….…………………………………………………………………...53 4.2.5 远程升级…….….…………………………………………………………………………53 4.2.6 远程格式化硬盘…….….…………………………………………………………………54 4.2.7 配置交易信息……………………….….…………………………………………………55 第4 页 技术文档 第一章 简 介 1.1 组成 客户端软件开发包是 DS_8000HC 系列网络硬盘录像机、DS_6000HC 系列网络视频服务器 的配套产品,本手册详细介绍了此软件开发包中各个函数所实现的功能以及使用方法、各个函 数之间的调用关系。 客户端软件开发包主要由客户端操作和设备端操作两大部分组成: 客户端操作:图像预览、文件回放和下载、云台控制、布防/撤防、语音对讲、日志管理、 解码卡等功能。 设备端操作:远程升级、远程重启/关闭、格式化硬盘、参数配置(系统配置、通道配置、 串口配置、报警配置、用户配置)等功能。 本开发包包括以下文件: HCNetSDK.lib, HCNetSDK.dll, HCNetSDK.h, PlayM4.lib, PlayM4.dll, DsSdk.lib, DsSdk.dll, DataType.h, DecodeCardSdk.h 。 其 中 PlayM4.lib, PlayM4.dll 是解码库, DsSdk.lib, DsSdk.dll, DataType.h, DecodeCardSdk.h 是硬解码的库函数。 1.2 注意事项 1.2.1 基本注意事项 z 本软件开发包同时兼容 ATM 专用设备(DS8002AH 和 DS8002AHL)和 DS8000HC, DS6000 系列的网络硬盘录像机。 z 同时支持 TCP、UDP、RTP、MULTICAST 网络传输模式。 z 本客户端可以采用软解码和硬解码(采用 MD 系列的解码卡)进行网络预览图像,2 种模 式都支持以下码流格式:QCIF、CIF、2CIF、4CIF、DCIF。 z ATM 专用设备(DS8002AH 和 DS8002AHL)只支持 CIF 的分辨率。 z 网络预览时,设备的每个通道最多支持 6 路同时连接,每台设备最多支持 24 路同时连接。 z 本开发包同时支持 512 个用户注册,同时支持 100 路网络预览和网络回放(回放和下载的总 数),同时支持 512 路报警上传,解码卡最多支持 64 路输出。以上均为理论数值,实际情 况还得看设备的运行情况和运行客户端的计算机 CPU 能力。 1.2.2 显卡注意事项 此软件开发包的图像显示部分采用的是我们公司自己的播放器,播放器的显示部分,主要 采用了 DirectDraw 技术。目前使用了 off_screen 画面和 Blt 操作。我们在画面的放大缩小方面 第5 页 技术文档 主要依靠显卡的支持,因为通过软件来缩放,会占用大量 CPU 资源。为此,我们提供了测试系 统是否支持的一个接口 NET_DVR_IsSupport(),用户可以用它测试在你的系统中播放器是否 能正常工作,另外,显示属性里的颜色设置应该设置为 16 位或 32 位的,对于 24 位的,我们是 不支持的。 我们测试过的几款显卡有以下几种(Win2000 下) 注意:nVidia 公司的显卡需要更新最新的驱动,老的驱动可能不支持缩小功能;其他没有测试 过的显卡,如果在使用过程中发现不支持某些播放需要的功能,不妨安装该显卡的最新的驱动 程序试试。 显卡型号 显存(M) 是否支持颜色转换 是否支持缩小 是否支持放大 ATI Rage128 32 是 是 是 ATI Radeon LE 32 是 是 是 ATI Radeon 7200 64 是 是 是 nVidia TNT2 Model64 16 和 32 是 是 是 nVidia TNT2 Pro 32 是 是 是 Geforce2 Mx,Mx200,Mx400 32 是 是 是 Geforce4 Mx420,Mx440 32 是 是 是 ***************************************************************************** Sis630 16 否 否 否 Sis305 32 是 否 否 1.2.3 硬解码注意事项 在此开发包中,网络预览图像时支持软件解码和硬件解码,硬件解码采用的是 DS400XMD 系列的解码卡,此解码卡的具体功能请参见相关解码卡的功能书,此解码卡具有视频矩阵功能, 并且可以解 4CIF 的图像。由于功能的增加此解码卡较原来的 D 卡增加了一些 API 函数,增加 的函数不通过客户端用户可以直接调用,这样以后修改解码卡的库函数时可以不用修改客户端 的 SDK。客户端和用户应用程序同时对这个解码卡的库函数操作,要注意对解码卡的初始化和 释放函数只能做一次,一般都是由客户端来初始化解码卡,解码通道可以重复打开,现在返回 的解码句柄其实就是解码通道号。 第6 页 技术文档 第二章 编程指南 2.1 编程说明 z 初始化:使用客户端软件包首先对系统进行初始化 NET_DVR_Init(),退出该软件包则调用 NET_DVR_Cleanup()释放资源。 z 系统检测:检测系统函数 NET_DVR_IsSupport()可以在 NET_DVR_Init()之前调用,如果系 统不支持则无法正常显示图像。 z 用户注册:用户在访问设备之前必须通过 NET_DVR_Login()函数到设备上注册,注册成功 后返回该用户的 ID 值。此 ID 值就像一把钥匙一样,之后该用户都必须通过此 ID 号访问 该设备,每台设备允许同时有 16 个不同用户注册。退出对设备的操作则通过 NET_DVR_Logout()函数在设备上注销此 ID 号,该用户就无权访问设备了。 z 主动上传:软件包中所有需主动上传的信息(异常除外)都通过 NET_DVR_ SetDVRMessCallBack()函数设置的回调函数上传(具体回调内容参见函数说明)。软件包中 的异常信息则通过 NET_DVR_SetDVRMessage()函数设置的消息窗口接收。 z 网络延时和流畅度:软解码时,通过 NET_DVR_SetPlayerBufNumber()函数调节播放的延时 和流畅程度,如果 dwBufNum 值越大,播放的流畅性越好,相应的延时比较大,dwBufNum 值越小,播放的延时很小,但是当网络不太顺畅的时候,会有丢帧现象,感觉播放不会很 流畅。一般设置的帧缓冲大于等于 6 帧时,音频预览才会正常,如果不需要音频预览,只 需要视频实时性则这个值可以设置的更小。此函数要紧跟在 NET_DVR_RealPlay()后使用, 在图像播放之后设置则不起作用!硬解码时则通过相应的硬解码的函数来调整延时和流畅 程度。 z 云台控制:云台控制分为两种模式,一种是通过图像预览返回的句柄进行控制,一种是没 有预览限制,通过用户 ID 号进行云台控制。在控制云台之前,须先获取云台的控制权,返 回该用户当前是否有权限控制云台,这样做的目的是为了防止优先级不同的用户同时控制 云台造成的混乱。(具体参见后面的函数说明) z 透明通道:可以分别选择 485 和 232 串口作为透明通道功能,其中要把 232 串口作为透明 通道使用,必须先在 232 串口的配置信息(结构 NET_DVR_RS232CFG)中将工作模式选 为透明通道,这样 232 串口才可作为透明通道使用。 z 回放和下载:在调用回放和下载命令后,回放和下载并没有立即执行,要调用开始播放 (NET_DVR_PLAYSTART)来启动当前操作,用 NET_DVR_PlayBackControl()函数实现。 在调用开始播放之前,可以设置保存数据 NET_DVR_PlayBackSaveData()和回调函数 NET_DVR_SetPlayDataCallBack()。 第7 页 技术文档 2.2 函数调用顺序 初始化软件包 NET_DVR_Init() A. 判断系统是否支持播放器 NET_DVR_IsSupport() 设置连接超时时间 NET_DVR_SetConnectTime() 设置接收设备消息的回调函数 NET_DVR_SetDVRMessCallBack() 设置播放器显示模式 NET_DVR_SetShowMode() 启动监听程序,监听设备端的消息 NET_DVR_StartListen() 若设备通过解析服务器和客户端连接,则客户端先从解析服务器处获得 该设备的 IP 地址 NET_DVR_GetDVRIPByResolveSvr() 设置声音播放模式 NET_DVR_SetAudioMode() B. 查找文件 NET_DVR_FindFile() NET_DVR_FindNextFile() NET_DVR_FindClose() 回放 NET_DVR_PlayBackByName() NET_DVR_PlayBackByTime() 启动图像预览 NET_DVR_RealPlay() 播放器帧缓冲区个数 NET_DVR_SetPlayerBufNumber() 设置解码时丢弃 B 帧的个数 NET_DVR_ThrowBFrame() 设置/获取视频参数 NET_DVR_ClientSetVideoEffect() NET_DVR_ClientGetVideoEffect() 叠加字符和图像 NET_DVR_RigisterDrawFun() 声音控制 NET_DVR_OpenSound() NET_DVR_CloseSound() NET_DVR_OpenSoundShare() NET_DVR_CloseSoundShare() NET_DVR_Volume() 数据捕获 NET_DVR_SetRealDataCallBack() NET_DVR_SaveRealData() NET_DVR_StopSaveRealData() 抓图 NET_DVR_CapturePicture() 云台控制 NET_DVR_GetPTZCtrl() NET_DVR_PTZControl() NET_DVR_TransPTZ() NET_DVR_PTZPreset() 停止预览 NET_DVR_StopRealPlay() 用户在设备上注册 NET_DVR_Login() C. D. E. 第8 页 技术文档 NET_DVR_PlayBackControl() NET_DVR_StopPlayBack() 捕获 NET_DVR_PlayBackSaveData() NET_DVR_StopPlayBackSave() NET_DVR_SetPlayDataCallBack() 抓图 NET_DVR_PlayBackCaptureFile() 下载 NET_DVR_GetFileByName() NET_DVR_GetFileByTime() NET_DVR_GetDownloadPos() NET DVR StopGetFile() E. 恢复默认值 NET_DVR_RestoreConfig() 获取设置参数 NET_DVR_GetDVRConfig() NET_DVR_SetDVRConfig() 保存参数 NET_DVR_SaveConfig() 重启/关闭 NET_DVR_RebootDVR() NET_DVR_ShutDownDVR() 远程升级 NET_DVR_Upgrade() NET_DVR_GetUpgradeState() NET_DVR_CloseUpgradeHandle() 远程格式化硬盘 NET_DVR_FormatDisk() NET_DVR_GetFormatProgress() NET_DVR_CloseFormatHandle() F. 报警 NET_DVR_SetupAlarmChan() NET_DVR_CloseAlarmChan() NET_DVR_SetAlarmOut() NET_DVR_GetAlarmOut() 语音对讲 NET_DVR_StartVoiceCom() NET_DVR_SetVoiceComClientVolume() NET_DVR_StopVoiceCom() 透明通道 NET_DVR_SerialStart() NET_DVR_SerialSend() NET_DVR_SerialStop() 远程控制本地显示 NET_DVR_ClickKey() 远程手动录像 NET_DVR_StartDVRRecord() NET_DVR_StopDVRRecord() 日志 NET_DVR_FindDVRLog() NET_DVR_FindNextLog() NET DVR FindLogClose() G. 注销用户 NET_DVR_Logout() H. 释放软件包资源 NET_DVR_Cleanup() I. 第9 页 技术文档 以上为软件解码的函数调用 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 ,其中 D、E、F、G 四大部分内容是没有先后调用顺序的。 F 模块主要完成对设备的配置工作,如果采用硬件解码,则只需把其中的 D 模块用以下的代替: 初始化解码卡 NET_DVR_InitDevice_Card() 初始化解码卡 OVERLAY 表面 NET_DVR_InitDDraw_Card() 解码卡预览图像 NET_DVR_RealPlay_Card() NET_DVR_ResetPara_Card() NET_DVR_OpenSound_Card() NET_DVR_CloseSound_Card() NET_DVR_SetVolume_Card() NET_DVR_AudioPreview_Card() 数据捕获 NET_DVR_SetRealDataCallBack() NET_DVR_SaveRealData() NET_DVR_StopSaveRealData() 云台控制 NET_DVR_GetPTZCtrl() NET_DVR_PTZControl() NET_DVR_TransPTZ() NET_DVR_PTZPreset() 停止预览 NET_DVR_StopRealPlay() 刷新解码卡使用的 OVERLAY 表面 NET_DVR_RefreshSurface_Card() 清除解码卡使用的 OVERLAY表面 NET_DVR_ClearSurface_Card() 恢复解码卡使用的 OVERLAY 表面 NET_DVR_RestoreSurface_Card() 释放解码卡使用的 OVERLAY 表面 NET_DVR_ReleaseDDraw_Card() 释放解码卡资源 NET_DVR_ReleaseDevice_Card() 第10 页 技术文档 第三章 数据结构 3.1 客户端数据结构 3.1.1 显示模式 enum{NORMALMODE = 0,OVERLAYMODE}; NORMALMODE:可以同时显示多窗口,但是对显卡有一定的要求; OVERLAYMODE:只能同时显示一个窗口,但是对显卡基本没有要求; 3.1.2 发送模式 enum{PTOPTCPMODE =0, PTOPUDPMODE, MULTIMODE, RTPMODE, AUDIODETACH, RESERVEDMODE}; PTOPTCPMODE:TCP 方式 PTOPUDPMODE:UDP 方式 MULTIMODE: 多播方式 RTPMODE: RTP方式 AUDIODETACH:音视频分开模式 RESERVEDMODE: 保留模式 3.1.3 设备信息结构 设备类型定义如下: #define DVR 1 #define ATMDVR 2 #define DVS 3 #define DEC 4 /* 6001D */ #define ENC_DEC 5 /* 6001F */ #define DVR_HC 6 #define DVR_HT 7 #define DVR_HF 8 #define DVR_HS 9 #define DVR_HTS 10 #define DVR_HB 11 typedef struct { BYTE sSerialNumber[SERIALNO_LEN]; /* 序列号 */ BYTE byAlarmInPortNum; /* DVR 报警输入个数 */ 第11 页 技术文档 BYTE byAlarmOutPortNum; /* DVR 报警输出个数 */ BYTE byDiskNum; /* DVR 硬盘个数 */ BYTE byDVRType; /* DVR 类型*/ BYTE byChanNum; /* DVR 通道个数 */ BYTE byStartChan; /* 起始通道号,例如 DVS-1,DVR – 1 */ }NET_DVR_DEVICEINFO, *LPNET_DVR_DEVICEINFO; 3.1.4 图像预览参数 typedef struct{ LONG lChannel; /* 通道号 */ LONG lLinkMode; /* 最高位(31)为 0 表示主码流,为 1 表示子码流,0-30 位表示码流连 接方式:0:TCP 方式,1:UDP 方式,2:多播方式,3 - RTP 方式,4—音视频分开 */ HWND hPlayWnd; /* 播放窗口的句柄 */ char* sMultiCastIP;/* 多播组地址 */ }NET_DVR_CLIENTINFO, *LPNET_DVR_CLIENTINFO; 如果将 hPlayWnd 参数设置为 NULL,则客户端收到数据后不解码,但是可以录像。 3.1.5 文件信息结构 typedef struct{ DWORD dwYear; /* 年 */ DWORD dwMonth; /* 月 */ DWORD dwDay; /* 日 */ DWORD dwHour; /* 时 */ DWORD dwMinute; /* 分 */ DWORD dwSecond; /* 秒 */ } NET_DVR_TIME,*LPNET_DVR_TIME; typedef struct { char sFileName[100]; /* 文件名 */ NET_DVR_TIME struStartTime; /* 文件的开始时间 */ NET_DVR_TIME struStoptime; /* 文件的结束时间 */ DWORD dwFileSize; /* 文件的大小 */ }NET_DVR_FIND_DATA,*LPNET_DVR_FIND_DATA; 3.1.6 上传报警信息 typedef struct{ DWORD dwAlarmType; /*0-信号量报警,1-硬盘满,2-信号丢失,3-移动侦测,4- 硬盘未格式化, 5-读写硬盘出错,6-遮挡报警,7-制式不匹配, 8-非法访问*/ DWORD dwAlarmInputNumber; /*报警输入端口*/ 第12 页 技术文档 DWORD dwAlarmOutputNumber[MAX_ALARMOUT]; /*报警输入端口对应的输出端口, 哪一位为 1 表示对应哪一个输出*/ DWORD dwAlarmRelateChannel[MAX_CHANNUM]; /*报警输入端口对应的录像通道, 哪一位为 1 表示对应哪一路录像,dwAlarmRelateChannel[0]对应第 1 个通道*/ DWORD dwChannel[MAX_CHANNUM]; /*dwAlarmType 为 2 或 3 时,表示哪个 通道,dwChannel[0]位对应第 0 个通道*/ DWORD dwDiskNumber[MAX_DISKNUM]; /*dwAlarmType 为 4 时,表示哪个硬盘*/ }NET_DVR_ALARMINFO,*LPNET_DVR_ALARMINFO; 3.1.7 报警输出状态 typedef struct{ BYTE Output[MAX_ALARMOUT]; /* 报警输出的状态 0:无效 1:有效 */ }NET_DVR_ALARMOUTSTATUS,*LPNET_DVR_ALARMOUTSTATUS; 3.1.8 硬件解码预览图像参数 typedef struct{ long lToScreen; /* 是否输出到显示器屏幕上,1-是,0-否 */ long lToVideoOut;/* 是否输出到监视器上,1-是,0-否 */ long lLeft; /* 输出位置的左上点的横坐标,相对与父窗口而言,lToScreen 为 1 时// 需要指定 */ long lTop; /* 输出位置的左上点的纵坐标,相对与父窗口而言,lToScreen 为 1 时// 需要指定 */ long lWidth; /* 输出图象的宽度,lToScreen 为 1 时需要指定 */ long lHeight; /* 输出图象的高度,lToScreen 为 1 时需要指定 */ long lReserved; /* 保留 */ } NET_DVR_DISPLAY_PARA,*LP NET_DVR_DISPLAY_PARA; typedef struct{ LONG lChannel; /* 通道号 */ LONG lLinkMode; /*最高位(31)为 0 表示主码流,为 1 表示子码流,0-30 位表示码流连接 方式:0:TCP 方式,1:UDP 方式,2:多播方式,3 - RTP 方式,4—电话线, 5-128k 宽带,6-256k 宽带,7-384k 宽带,8-512k 宽带*/ char* sMultiCastIP;/* 多播组地址 */ NET_DVR_DISPLAY_PARA struDisplayPara; }NET_DVR_CARDINFO,*LPNET_DVR_CARDINFO; 3.1.9 日志信息 /* 报警 */ //主类型 #define MAJOR_ALARM 0x1 //次类型 第13 页 技术文档 #define MINOR_ALARM_IN 0x1 /* 报警输入 */ #define MINOR_ALARM_OUT 0x2 /* 报警输出 */ #define MINOR_MOTDET_START 0x3 /* 移动侦测报警开始 */ #define MINOR_MOTDET_STOP 0x4 /* 移动侦测报警结束 */ #define MINOR_HIDE_ALARM_START 0x5 /* 遮挡报警开始 */ #define MINOR_HIDE_ALARM_STOP 0x6 /* 遮挡报警结束 */ /* 异常 */ //主类型 #define MAJOR_EXCEPTION 0x2 //次类型 #define MINOR_VI_LOST 0x21 /* 信号丢失 */ #define MINOR_ILLEGAL_ACCESS 0x22 /* 非法访问 */ #define MINOR_HD_FULL 0x23 /* 硬盘满 */ #define MINOR_HD_ERROR 0x24 /* 硬盘错误 */ #define MINOR_DCD_LOST 0x25 /* MODEM 掉线 */ #define MINOR_IP_CONFLICT 0x26 /* IP 地址冲突 */ /* 操作 */ //主类型 #define MAJOR_OPERATION 0x3 //次类型 #define MINOR_START_DVR 0x41 /* 开机 */ #define MINOR_STOP_DVR 0x42 /* 关机 */ #define MINOR_STOP_ABNORMAL 0x43 /* 非法关机 */ #define MINOR_LOCAL_LOGIN 0x50 /* 本地登陆 */ #define MINOR_LOCAL_LOGOUT 0x51 /* 本地注销登陆 */ #define MINOR_LOCAL_CFG_PARM 0x52 /* 本地配置参数 */ #define MINOR_LOCAL_PLAYBYFILE 0x53 /* 本地按文件回放 */ #define MINOR_LOCAL_PLAYBYTIME 0x54 /* 本地按时间回放 */ #define MINOR_LOCAL_START_REC 0x55 /* 本地开始录像 */ #define MINOR_LOCAL_STOP_REC 0x56 /* 本地停止录像 */ #define MINOR_LOCAL_PTZCTRL 0x57 /* 本地云台控制 */ #define MINOR_LOCAL_PREVIEW 0x58 /* 本地预览 */ #define MINOR_LOCAL_MODIFY_TIME 0x59 /* 本地修改时间 */ #define MINOR_LOCAL_UPGRADE 0x5a /* 本地升级 */ #define MINOR_LOCAL_COPYFILE 0x5b /* 本地备份文件 */ #define MINOR_REMOTE_LOGIN 0x70 /* 远程登录 */ #define MINOR_REMOTE_LOGOUT 0x71 /* 远程注销登陆 */ #define MINOR_REMOTE_START_REC 0x72 /* 远程开始录像 */ #define MINOR_REMOTE_STOP_REC 0x73 /* 远程停止录像 */ #define MINOR_START_TRANS_CHAN 0x74 /* 开始透明传输 */ #define MINOR_STOP_TRANS_CHAN 0x75 /* 停止透明传输 */ #define MINOR_REMOTE_GET_PARM 0x76 /* 远程获得参数 */ #define MINOR_REMOTE_CFG_PARM 0x77 /* 远程配置参数 */ #define MINOR_REMOTE_GET_STATUS 0x78/* 远程获得状态 */ 第14 页 技术文档 #define MINOR_REMOTE_ARM 0x79 /* 远程布防 */ #define MINOR_REMOTE_DISARM 0x7a /* 远程撤防 */ #define MINOR_REMOTE_REBOOT 0x7b /* 远程重启 */ #define MINOR_START_VT 0x7c /* 开始语音对讲 */ #define MINOR_STOP_VT 0x7d /* 停止语音对讲 */ #define MINOR_REMOTE_UPGRADE 0x7e /* 远程升级 */ #define MINOR_REMOTE_PLAYBYFILE 0x7f /* 远程按文件回放 */ #define MINOR_REMOTE_PLAYBYTIME 0x80 /* 远程按时间回放 */ #define MINOR_REMOTE_PTZCTRL 0x81 /* 远程云台控制 */ typedef struct { NET_DVR_TIME strLogTime; DWORD dwMajorType; /* 主类型 1-报警; 2-异常; 3-操作; 0xff-全部*/ DWORD dwMinorType; /* 次类型 */ BYTE sPanelUser[MAX_NAMELEN]; /* 操作面板的用户名 */ BYTE sNetUser[MAX_NAMELEN]; /* 网络操作的用户名 */ char sRemoteHostAddr[16]; /* 远程主机地址 */ DWORD dwParaType; /* 参数类型 */ DWORD dwChannel; /* 通道号 */ DWORD dwDiskNumber; /* 硬盘号 */ DWORD dwAlarmInPort; /* 报警输入端口 */ DWORD dwAlarmOutPort; /* 报警输出端口 */ }NET_DVR_LOG,*LPNET_DVR_LOG; 3.1.10 设备的状态信息 typedef struct { DWORD dwVolume; /* 硬盘的容量 */ DWORD dwFreeSpace; /* 硬盘的剩余空间 */ DWORD dwHardDiskStatic; /* 硬盘的状态,按位 1-休眠,2-不正常等 */ }NET_DVR_DISKSTATE,*LPNET_DVR_DISKSTATE; typedef struct { BYTE byRecordStatic; /* 通道是否在录像,0-不录像,1-录像 */ BYTE bySignalStatic; /* 连接的信号状态,0-正常,1-信号丢失 */ BYTE byHardwareStatic; /* 通道硬件状态,0-正常,1-异常,例如DSP死掉 */ char reservedData; /* 保留 */ DWORD dwBitRate; /* 实际码率 */ DWORD dwLinkNum; /* 客户端连接的个数 */ DWORD dwClientIP[MAX_LINK];/* 客户端的IP地址 */ }NET_DVR_CHANNELSTATE,*LPNET_DVR_CHANNELSTATE; typedef struct{ DWORD dwDeviceStatic; /* 设备的状态,0-正常,1-CPU占用率太高,超过85%,2-硬件错误, 例//如串口死掉 */ NET_DVR_DISKSTATE struHardDiskStatic[MAX_DISKNUM]; /* 硬盘状态 */ NET_DVR_CHANNELSTATE struChanStatic[MAX_CHANNUM];/* 通道的状态 */ BYTE byAlarmInStatic[MAX_ALARMIN]; /* 报警端口的状态,0-没有报警,1-有报警 */ BYTE byAlarmOutStatic[MAX_ALARMOUT]; /* 报警输出端口的状态,0-没有输出,1- 第15 页 技术文档 有报警//输出 */ DWORD dwLocalDisplay; /* 本地显示状态,0-正常,1-不正常 */ }NET_DVR_WORKSTATE,*LPNET_DVR_WORKSTATE; 3.1.11 ATM DVR 上传交易信息 typedef struct{ USHORT m_Year; /* 年 */ USHORT m_Month; /* 月 */ USHORT m_Day; /* 日 */ USHORT m_Hour; /* 时 */ USHORT m_Minute; /* 分 */ USHORT m_Second; /* 秒 */ BYTE DeviceName[24]; /* 设备名称 */ DWORD dwChannelNumer; /* 通道号 */ BYTE CardNumber[32]; /* 卡号 */ char cTradeType[12]; /* 交易类型 */ DWORD dwCash; /* 交易金额 */ }NET_DVR_TRADEINFO,*LPNET_DVR_TRADEINFO; 3.2 设备端参数数据结构 #define NAME_LEN 32 #define SERIALNO_LEN 48 #define MACADDR_LEN 6 #define MAX_ETHERNET 2 #define PATHNAME_LEN 128 #define PASSWD_LEN 16 #define MAX_CHANNUM 16 #define MAX_ALARMOUT 4 #define MAX_TIMESEGMENT 4 #define MAX_PRESET 128 #define MAX_DAYS 7 #define PHONENUMBER_LEN 32 #define MAX_DISKNUM 16 #define MAX_WINDOW 16 #define MAX_VGA 1 #define MAX_USERNUM 16 #define MAX_EXCEPTIONNUM 16 #define MAX_LINK 6 #define MAXCARD_NUM 40 #define MAX_ALARMIN 16 #define MAX_SERIALNUM 2 #define CARDNUM_LEN 20 #define MAX_VIDEOOUT 2 #define MAX_DISPLAY_REGION 16 第16 页 技术文档 #define MAX_NAMELEN 16 #define MAX_RIGHT 32 #define MAX_SHELTERNUM 4 3.2.1 设备系统配置结构 typedef struct{ DWORD dwSize; BYTE sDVRName[NAME_LEN]; /* DVR 名称 */ DWORD dwDVRID; /* DVR ID,用于遥控器 */ DWORD dwRecycleRecord; /* 是否循环录像,0:不是; 1:是 */ //以下不能更改 BYTE sSerialNumber[SERIALNO_LEN]; /* 序列号 */ DWORD dwSoftwareVersion; /* 软件版本号,高 16 位是主版本,低 16 位是次版本 */ DWORD dwSoftwareBuildDate; /* 软件生成日期,0xYYYYMMDD */ DWORD dwDSPSoftwareVersion; /* DSP 软件版本,高 16 位是主版本,低 16 位是次版本 */ DWORD dwDSPSoftwareBuildDate; /* DSP 软件生成日期,0xYYYYMMDD */ DWORD dwPanelVersion; /* 前面板版本,高 16 位是主版本,低 16 位是次版本 */ DWORD dwHardwareVersion; /* 硬件版本,高 16 位是
本文档为【客户端SDK使用手册】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_197673
暂无简介~
格式:pdf
大小:521KB
软件:PDF阅读器
页数:50
分类:互联网
上传时间:2010-11-17
浏览量:95