前言

非常感谢您使用我们公司的产品，我们将竭诚为您提供最好的服务。

本手册可能包含技术上不准确的地方或文字错误。

本手册的内容将做定期的更新，恕不另行通知；更新的内容将会在本手册的新版本中加入。

我们随时会改进或更新本手册中描述的产品或程序。


说明书指南

本说明书由前言、内容简介、SDK版本更新、各类设备支持的接口、编程引导、结构体和接口定义、帮助7部分组成。
“内容简介”中的“概述”部分介绍了SDK支持的设备型号、功能、SDK开发包的组件及各组件的功能等基本信息。
“SDK版本更新”部分介绍了SDK各版本新增的功能及接口等信息。
“各类设备支持的接口”部分罗列了各个设备支持的功能对应的接口。
“编程引导”部分给出了SDK主要模块的接口调用流程和几款典型设备的主要功能的接口调用流程等。
“结构体和接口定义”部分包含了SDK所有接口函数和结构体的详细说明。
“帮助”部分罗列了一些常见问题的解答。


概述

设备网络SDK是基于设备私有网络通信协议开发的，为后端设备（嵌入式网络硬盘录像机、视频服务器）、前端设备（网络摄像机、网络球机、IP模块）等产品服务的配套模块，用于远程访问和控制设备软件的二次开发。
适用于以下产品型号：
DS-95xx、DS-96xxNVR； DS-90xx混合型硬盘录像机；
DS-91xx、DS-81xx、DS-80xx、DS-70xx、DS-71xx、DS-7116、DS-72xx硬盘录像机；
DS-60xx、DS-61xx视频服务器、编/解码器；
iDS-6002HF/B双摄像机跟踪、iDS-6101HF智能设备（行为分析）、iDS52xx智能分析仪、iDS90XX、iDS91XX；
DS630x_D、DS-6401HD多路解码器；
IP摄像机（以下简称“IPC”）：DS-2CD71xx、DS-2CD81xx、DS-2CD7xx、DS-2CD8xx、DS-2CD9xx；
其他IP设备：包含IP模块、IP快球等。

由于某些功能在此SDK版本中做了扩展，同时设备程序也做了相应的更新扩展，为了方便下文说明，此处将以上设备归为两类：如DS-7116、DS-81xx、DS-90xx、DS-91xx、DS-95xx、DS-96xx等系列设备称为V3.0以上版本支持的设备；如DS-80xx、IPC等设备称为V3.0以下版本支持的设备。

设备网络SDK主要功能
图像预览、文件回放和下载、云台控制、布防/撤防、语音对讲、日志管理、解码卡、远程升级、远程重启/关闭、格式化硬盘、参数配置（系统配置、通道配置、串口配置、报警配置、用户配置）、多路解码器、智能设备功能和获取设备能力集等。

设备网络SDK包含网络通讯库、软解码库、硬解码库等功能组件，我们提供Windows和Linux两个版本的SDK，各自所包含的组件如下：
Windows下设备网络SDK：
网络通讯库
HCNetSDK.h | 头文件
HCNetSDK.lib | LIB库文件
HCNetSDK.dll | DLL库文件
Qos库
QosControl.dll DLL库文件
RTSP通讯库
StreamTransClient.dll DLL库文件
软解码库
PlayM4.h | 头文件
PlayCtrl.lib | LIB库文件
PlayCtrl.dll | DLL库文件
转封装库
SystemTransform.dll DLL库文件
硬解码库
DataType.h和DecodeCardSdk.h | 头文件
DsSdk.lib | LIB库文件
DsSdk.dll | DLL库文件

Linux下设备网络SDK库：
网络通讯库
hcnetsdk.h | 头文件
libhcnetsdk.so | SO库文件
Qos库
libQosControl.so SO库文件
RTSP通讯库
libStreamTransClient.so SO库文件
软解码库
playsdkpu.h | 头文件
libm4play.so | SO库文件
转封装库
libSystemTransform.so SO库文件

本版本的设备网络SDK开发包中包含以上各个组件，除网络通讯库这个组件为必须项外，用户可以根据需要选择其中的一部分组件，以下将对各个组件在SDK中的作用和使用条件分别说明。
  • 网络通讯库是设备网络SDK的主体，主要用于网络客户端与各类产品之间的通讯交互，负责远程功能调控、远程参数配置及码流数据的获取和处理等。

  • Qos库是流控库。推模式下支持，用于无线实时流的码流传输质量优化。

  • RTSP通讯库是支持RTSP传输协议的网络库。当需要对支持RTSP协议的产品进行取流等操作时就必须加载该项组件。

  • 软解码库主要用于对实时码流数据进行解码显示（实现预览功能）和对录像文件进行回放解码等。用户如果需要在SDK内部进行对实时流和录像码流播放显示时（即NET_DVR_RealPlay_V30接口的第二个结构体参数的播放句柄设置成有效句柄时）必须加载该组件，而如果用户仅需要用网络通讯库捕获到数据后再外部自行处理就不需要加载该组件，这种情况下用户在外部自行解码将更灵活，可参见软解码库函数说明《播放器SDK编程指南》。

  • 转封装库的功能可以分为两种：一种是将标准码流转换成采用我们公司封装格式的码流。当用户需要对支持RTSP协议的产品捕获采用本公司封装格式的码流数据时（即当设置NET_DVR_RealPlay_V30接口中的回调函数捕获数据或者调用NET_DVR_SetRealDataCallBack接口捕获数据时）必须加载该组件。另一种功能是能将标准码流转换成其他格式的封装，如3GPP、PS等。例如，当用户需要对支持RTSP协议的产品实时捕获指定封装格式的码流数据（对应的SDK接口为NET_DVR_SaveRealData）时必须加载该项组件。

  • 硬解码库需在配备硬解码卡（MD卡）的前提下使用，通过解码卡的解码与输出功能实现实时流的解码显示及向监视器上矩阵输出的功能。用户如果需要在SDK内部对实时流码流播放显示时必须加载该项组件。为更方便灵活地调用硬解码的相关功能，建议用户通过捕获数据在外部处理解码。相关硬解码库的功能函数可参见《板卡SDK编程指南》中解码卡API相关介绍。Linux下无硬解功能。


SDK支持的系统说明

Windows下设备网络SDK：
  • Windows 7/vista/xp/2000 以及Windows Server 2008/2003

    Linux下设备网络SDK：
  • 32位的Linux系统，版本要求gcc 3.4或者3.4以上。
  • 测试过的系统：RedHat AS4/5/6， (Fedora)FC8/10/12，CentOS 4/5，SUSE 10， openSUSE 11，以及Ubuntu 9.04/10.04。


版本更新

设备网络SDK开发使用手册

版本新增内容

日期 | 版本 | 新增设备型号 | 新增内容
2012.5.9 V4.1.0 TII_IPCAM（红外热成像摄像机） 新增热成像仪手动快门补偿接口
NET_DVR_ShutterCompensation
新增热成像仪坏点校正接口
NET_DVR_CorrectDeadPixel
新增IPC一键聚焦控制接口
NET_DVR_FocusOnePush
新增IPC恢复镜头电机默认位置接口
NET_DVR_ResetLens
新增配置功能
NET_DVR_AUDIO_INPUT_PARAM
NET_DVR_CAMERA_DEHAZE_CFG
NET_IPC_AUX_ALARMCFG
新增遥控器控制接口
NET_DVR_RemoteControl
新增报警上传消息类型
NET_IPC_AUXALARM_RESULT
新增设备报警能力集
设备报警能力XML描述
新增报警日志的次类型
MINOR_WIRELESS_ALARM_START,
MINOR_WIRELESS_ALARM_STOP,
MINOR_PIR_ALARM_START,
MINOR_PIR_ALARM_STOP,
MINOR_CALLHELP_ALARM_START,
MINOR_CALLHELP_ALARM_STOP
2012.4.23 V4.1.0 邦诺CVR 新增对录像段加锁接口
NET_DVR_LockFileByTime
NET_DVR_UnLockFileByTime
新增按流ID对录像段加锁接口
NET_DVR_LockStreamFileByTime
NET_DVR_UnlockStreamFileByTime
新增配置功能
NET_DVR_CHAN_GROUP_RECORD_STATUS
NET_DVR_IPPARACFG_V40
新增按流ID批量配置接口
NET_DVR_GetDeviceConfig
NET_DVR_SetDeviceConfig
新增按流ID批量配置功能
NET_DVR_STREAM_RECORD_STATUS
NET_DVR_STREAM_SRC_INFO
NET_DVR_STREAM_RECORD_INFO
新增按流ID和时间录像回放的接口
NET_DVR_PlayBackByTime_V40
新增按流ID开启设备手动录像的接口
NET_DVR_StartManualRecord
NET_DVR_StopManualRecord
新增按流ID查找录像功能
NET_DVR_SEARCH_EVENT_PARAM
NET_DVR_SEARCH_EVENT_RET
2012.4.20 V4.1.0 新增获取智能IPC设备（v3.1及之后版本）的能力集功能
NET_ITC_TRIGGERMODE_ABILITY
新增配置功能
NET_ITC_IOOUT_PARAM
NET_ITC_TRIGGERCFG
NET_ITC_SINGLE_TRIGGERCFG
NET_DVR_STATUS_DETECTCFG
新增状态检测上传功能
NET_ITC_STATUS_DETECT_RESULT
新增布防(扩展)接口
NET_DVR_SetupAlarmChan_V41
新增操作日志次类型
MINOR_SET_TRIGGERMODE_CFG, MINOR_GET_TRIGGERMODE_CFG,
MINOR_SET_IOOUT_CFG, MINOR_GET_IOOUT_CFG,
MINOR_GET_TRIGGERMODE_DEFAULT, MINOR_GET_ITCSTATUS,
MINOR_SET_STATUS_DETECT_CFG, MINOR_GET_STATUS_DETECT_CFG,
MINOR_GET_VIDEO_TRIGGERMODE_CFG,
MINOR_SET_VIDEO_TRIGGERMODE_CFG
2012.4.5 V4.1.0 新增G726音频编解码接口
NET_DVR_InitG726Encoder
NET_DVR_EncodeG726Frame
NET_DVR_ReleaseG726Encoder
NET_DVR_InitG726Decoder
NET_DVR_DecodeG726Frame
NET_DVR_ReleaseG726Decoder
2012.3.30 V4.1.0 新增多屏控制器OSD配置功能
NET_DVR_OSDCFG
新增多屏控制器底图上传和控制功能
NET_DVR_PicUpload
NET_DVR_GetPicUploadProgress
NET_DVR_CloseUploadHandle
NET_DVR_PicControl
新增图像位置微调功能
NET_DVR_MatrixPicAdjust
新增图片回显功能
NET_DVR_StartScreenPic
NET_DVR_StopScreenPic
新增屏幕控制功能
NET_DVR_ScreenCtrl
新增异常日志次类型
MINOR_SCREEN_SUBSYSTEM_ABNORMALINSERT, MINOR_SCREEN_SUBSYSTEM_ABNORMALPULLOUT, MINOR_SCREEN_ABNARMALTEMPERATURE
2012.3.19 V4.1.0 DS_1HXX（ATM防护舱控制器） 新增语音上传下载功能
NET_DVR_StartUploadAudio
NET_DVR_StartDownloadAudio
NET_DVR_GetAudioProgress
NET_DVR_StopAudioOperate
NET_DVR_AudioCtrl
新增报警主机报警信息上传
NET_DVR_ALARMHOST_SAFETYCABINSTATE
NET_DVR_ALARMHOST_ALARMOUTSTATUS
新增报警主机日志类型
MINOR_URGENCYBTN_ON, MINOR_URGENCYBTN_OFF
2012.3.19 V4.1.0 DS_1HXX（ATM防护舱控制器） 新增语音上传下载功能
NET_DVR_StartUploadAudio
NET_DVR_StartDownloadAudio
NET_DVR_GetAudioProgress
NET_DVR_StopAudioOperate
NET_DVR_AudioCtrl
新增报警主机报警信息上传
NET_DVR_ALARMHOST_SAFETYCABINSTATE
NET_DVR_ALARMHOST_ALARMOUTSTATUS
新增报警主机日志类型
MINOR_URGENCYBTN_ON, MINOR_URGENCYBTN_OFF
2012.2.22 V4.1.0 DS-19AXX 新增子系统配置功能
NET_DVR_ALARMSUBSYSTEMPARAM
新增对报警输入子系统布防、撤防、消警功能
NET_DVR_AlramHostSubSystemSetupAlarmChan
NET_DVR_AlramHostSubSystemCloseAlarmChan
NET_DVR_AlramHostClearAlarm
新增报警输入口进行组旁路和组旁路恢复功能
NET_DVR_AlramHostArrayBypass
NET_DVR_AlramHostArrayBypassResume
新增报警主机GPRS参数配置功能
NET_DVR_ALARMHOST_GPRS_CFG
新增报警主机网络参数配置功能
NET_DVR_ALARMHOST_NETCFG
新增报警主机报警上传方式配置接口
NET_DVR_AlarmHostSetReportMode
NET_DVR_AlarmHostGetReportMode
2012.2.14 V4.1.0 iDS_2CD976/F 新增报警上传
NET_VCA_FACESNAP_MATCH_ALARM
新增黑名单比对报警结果查询功能
NET_DVR_FindFaceMatchAlarm
NET_DVR_FindNextFaceMatchAlarm
NET_DVR_FindFaceMatchAlarmClose
NET_DVR_GetFaceMatchPic
新增单张图片检测功能
NET_DVR_DetectImage
新增黑白名单添加、查询、删除和修改功能
NET_DVR_AddBlackList
NET_DVR_FastAddBlackList
NET_DVR_FindBlackList
NET_DVR_FindNextBlackList NET_DVR_FindBlackListClose
NET_DVR_GetBlackListPicture
NET_DVR_UpdateBlackList
NET_DVR_DelBlackList
新增事后查询和检索功能
NET_DVR_FindSnapPicture
NET_DVR_FindNextSnapPic
NET_DVR_FindSnapPicClose
NET_DVR_AdvanceFindSnapPicture
2012.1.18 V4.1.0 DS_19CXX 新增配置功能
NET_DVR_ALARMHOSTDIALCFG
NET_DVR_ALARMHOSTDIALSETUPMODE
2012.1.16 V4.1.0 DS_C10H 多屏控制器 新增接口
NET_DVR_GetAllValidWinInfo
NET_DVR_ScreenWinCtrl
新增配置功能
NET_DVR_SCREEN_WINCFG
NET_DVR_LAYOUT_LIST
NET_DVR_INPUTSTREAMCFG
NET_DVR_OUTPUTCFG
布局控制命令：NET_DVR_LAYOUTCTRL
新增能力集
NET_DVR_SCREENCONTROL_ABILITY
新增报警上传
NET_DVR_SCREENALARMCFG
新增日志类型
MINOR_SCREEN_SUBSYSTEM_ABNORMALREBOOT
MINOR_SCREEN_SET_INPUT
MINOR_SCREEN_SET_OUTPUT
MINOR_SCREEN_SET_OSD
MINOR_SCREEN_SET_LOGO
MINOR_SCREEN_SET_LAYOUT
2012.1.12 V4.1.0 DS-64XX-T系列 新增解码器能力集（扩展）
NET_DVR_MATRIX_ABILITY_V41
新增解码器显示通道配置扩展接口
NET_DVR_MatrixGetDisplayCfg_V41
NET_DVR_MatrixSetDisplayCfg_V41
新增解码器设备状态扩展接口
NET_DVR_MatrixGetDeviceStatus_V41
新增解码延时设置
NET_DVR_MATRIX_DECCHAN_CONTROL
新增64T高清解码器大屏拼接功能
NET_DVR_BIGSCREENCFG
2011.12.20 V4.1.0 DS-9664N-RH 新增IP接入配置功能（扩展）
NET_DVR_IPPARACFG_V40
新增安全拔盘和扫描阵列接口
NET_DVR_RaidPullDiskStart
NET_DVR_ScanRaidStart
NET_DVR_CloseLongCfgHandle
新增日志类型
MINOR_LOCAL_STOP_RAID, MINOR_REMOTE_STOP_RAID, MINOR_RAID_ERROR
2011.11.21 V4.1.0 iDS_2CD976/F 新增SDK接口
NET_DVR_FindBackgroundPic
人脸抓拍配置功能
NET_VCA_FACESNAPCFG
人脸抓拍结果上传
NET_VCA_FACESNAP_RESULT
2011.9.20 V4.0.9 DS-660X、
DS-72XXHV_GX 		推模式
新增SDK接口
NET_DVR_SetRegisterCallBack
NET_DVR_StartServer
NET_DVR_StopServer
NET_DVR_PreviewRequest
NET_DVR_PlaybackRequest
NET_DVR_VoiceRequest
NET_DVR_AlarmSetupRequest
NET_DVR_SetPushModeParam
NET_DVR_SpringJPEGPicture
NET_DVR_SetPreviewResponseCallBack
NET_DVR_SetPlaybackResponseCallBack
NET_DVR_SetVoiceResponseCallBack
新增配置功能
NET_DVR_CMSPARAM
NET_DVR_DIALSTATUS
NET_DVR_SMSRELATIVEPARAM
NET_DVR_PINSTATUS
NET_DVR_MB_POWERCTRLPARA
NET_DVR_MB_AUTOBACKUPPARA
NET_DVR_MB_GPSPARA
NET_DVR_MB_SENSORINPARA
NET_DVR_GSENSORPARA
NET_DVR_MB_DOWNLOADSVRPARA
NET_DVR_PLATERECOG_PARA
NET_DVR_ENFORCESYS_PARA
新增报警信息上传功能
NET_DVR_PUSHALARMINFO
NET_DVR_PUSHALARMINFO_V30
NET_DVR_GPSALARMINFO
2011.9.1 V4.0.9 DS-96XXN_ST、
DS-86XXN_ST、
DS-80XXHF_ST、
DS-90XXHF_ST、
DS-76XXN_ST 		增加是否同步前端IPC设备参数的配置功能（NET_DVR_SYNCHRONOUS_IPC）；
增加IPC的用户名/密码配置功能（NET_DVR_IPC_PASSWD）；
增加获取设备当前网络资源使用情况的功能（NET_DVR_DEVICE_NET_USING_INFO）；
增加网络参数设置功能（NET_DVR_IPC_NETCFG）
2011.8.18 V4.0.7 DS_19DXX 新增获取报警主机设备能力集的接口（NET_DVR_GetDeviceAbility）；
新增报警主机用户配置接口的接口（NET_DVR_GetAlarmDeviceUser、NET_DVR_SetAlarmDeviceUser、 NET_DVR_GetOperateUser、NET_DVR_SetOperateUser）；
新增获取485前端设备能力列表（NET_DVR_GetDeviceTypeList）；
新增获取485前端设备支持的协议列表（NET_DVR_GetDeviceProtoList）；
新增报警主机配置功能（NET_DVR_ALARM_RS485CFG、NET_DVR_ALARMIN_PARAM、 NET_DVR_ALARMOUT_PARAM、NET_DVR_SIREN_PARAM、 NET_DVR_ALARMHOST_ENABLECFG、NET_DVR_SENSOR_INFO、 NET_DVR_ALARMHOST_MAIN_STATUS、NET_DVR_ALARMHOST_OTHER_STATUS）；
新增控制空调遥控器接口（NET_DVR_SetAirCondition）；
新增报警主机透明通道接口（NET_DVR_AlarmHostSerialStart、NET_DVR_AlarmHostSerialSend、 NET_DVR_AlarmHostSerialStop）；
新增报警输入口设置接口（NET_DVR_AlarmHostSetupAlarmChan、NET_DVR_AlarmHostCloseAlarmChan、 NET_DVR_BypassAlarmChan、NET_DVR_UnBypassAlarmChan）；
新增报警上传功能（NET_DVR_SENSOR_ALARM、NET_DVR_SWITCH_ALARM、 NET_DVR_ALARMHOST_EXCEPTION_ALARM、NET_DVR_ALARMHOST_ALARMINFO）；
新增报警输出口控制接口（NET_DVR_SetAlarmHostOut）；
新增警号控制接口（NET_DVR_AlarmHostAssistantControl）；
新增获取蓄电池电压的接口（NET_DVR_GetBatteryVoltage）；
新增报警主机日志查询接口（NET_DVR_FindAlarmHostLog、NET_DVR_FindNextAlarmHostLog、 NET_DVR_FindAlarmHostLogClose）；
2011.8.8 V4.0.7 审讯机
81SNL，81SH，81SFH 		新增审讯文件上传的接口（NET_DVR_InquestUploadFile_V30）；
新增审讯文件搜索的接口（NET_DVR_InquestFindFile_V30）；
新增删除审讯文件的接口（NET_DVR_InquestDeleteFile_V30）；
新增画中画状态配置接口（NET_DVR_InquestGetPIPStatus_V30、NET_DVR_InquestSetPIPStatus_V30）；
新增系统信息配置接口（NET_DVR_InquestGetSystemInfo、NET_DVR_InquestSetSystemInfo）；
新增重点标记信息发送接口（NET_DVR_InquestSendMessage）；
新增审讯中刻录控制接口（NET_DVR_InquestStartCDW_V30、NET_DVR_InquestStopCDW_V30）；
新增获取刻录机状态接口（NET_DVR_InquestGetCDWState_V30）；
新增审讯事件恢复接口（NET_DVR_InquestResumeEvent、NET_DVR_InquestGetResumeProgress 、NET_DVR_InquestStopResume）；
新增获取设备版本信息的接口（NET_DVR_InquestGetDeviceVersion）；
2011.8.4 V4.0.7 增加交通事件报警的接口（NET_DVR_AID_ALARM、NET_DVR_TPS_ALARM）；
增加标定配置功能（NET_DVR_CALIBRATION_CFG）；
增加获取交通能力集的功能（NET_DVR_ITS_ABILITY）
2011.7.29 V4.0.7 iDS-65XX 增加历史数据查找和清除的接口（NET_DVR_GetHistoricDataInfo、NET_DVR_GetHistoricData、NET_DVR_ClearHistoricData）
2011.7.18 | V4.0.7 | DS81XXHW_S、DS81XXHW_ST、DS91XXHW_ST | 获取图片分辨率参数能力PIC_CAPTURE_ABILITY
2011.6.13 V4.0.5 DS-91XXHF-ST 增加假日配置功能（NET_DVR_HOLIDAY_PARAM_CFG、NET_DVR_HOLIDAY_HANDLE、NET_DVR_HOLIDAY_RECORD）；
增加多网卡和BONDING网卡配置功能（NET_DVR_NETCFG_MULTI、NET_DVR_NETWORK_BONDING）；
增加网络流量检测功能（NET_DVR_StartNetworkFlowTest、NET_DVR_StopNetworkFlowTest）；
增加录像标签功能（NET_DVR_InsertRecordLabel、NET_DVR_DelRecordLabel、 NET_DVR_FindRecordLabel、NET_DVR_FindNextLabel、NET_DVR_StopFindLabel）；
抓图配置以及图片回放备份功能（NET_DVR_JPEG_CAPTURE_CFG、NET_DVR_SCHED_CAPTURECFG、NET_DVR_FTPCFG、 NET_DVR_FindPicture、NET_DVR_FindNextPicture、NET_DVR_CloseFindPicture、 NET_DVR_GetPicture_V30、NET_DVR_BackupPicture）；
磁盘配额管理（NET_DVR_DISK_QUOTA_CFG）；
SNMP协议配置（NET_DVR_SNMPCFG）；
新增通道的功能接口（NET_DVR_LINK_STATUS、NET_DVR_VIDEO_INPUT_EFFECT）
2011.2.16 | V4.0.2 | iDS-2DF1-515、iDS-2DF1-517、iDS-2DF1-505、iDS-2DF1-507、iDS-2DF1-535、iDS-2DF1-537 | 增加场景跟踪的配置功能（NET_DVR_POSITION_TRACK_CFG）；增加本地菜单规则配置功能（NET_DVR_TRACK_PARAMCFG）；增加球机机芯配置功能（NET_DVR_DOME_MOVEMENT_PARAM）；增加场景位置规则信息配置功能（NET_DVR_GetPositionRule、NET_DVR_SetPositionRule）；增加场景限位操作配置功能（NET_DVR_GetPositionLimitAngle、NET_DVR_SetPositionLimitAngle）；增加本地场景PTZ位置配置功能（NET_DVR_GetPtzPosition、NET_DVR_SetPtzPosition）；增加场景巡航路径配置功能（NET_DVR_GetPatrolTrack、NET_DVR_SetPatrolTrack）；增加场景巡航跟踪限位配置功能（NET_DVR_GetPatrolLimitAngle、NET_DVR_SetPatrolLimitAngle）
2010.12.30 | V4.0.2 | DS-2CD966、DS-2CD976、DS-2CD986C、DS-2CD986A | 增加车牌亮度补偿配置功能（NET_DVR_PLCCFG）；增加获取车检器状态功能（NET_DVR_DEVICESTATECFG）；增加闪光灯时控配置功能（NET_DVR_FLASH_OUTCFG）；增加卡口电警参数配置功能（NET_DVR_POSTEPOLICECFG）
2010.09.08 | V4.0.1 | 新增智能高清IPC功能：车牌识别配置（NET_DVR_SPRCFG）；获取智能高清IPC设备状态信息（NET_DVR_DEVICESTATECFG）；信号灯同步和图像翻转（NET_DVR_SNAPENABLECFG）；手动触发连拍（NET_DVR_ContinuousShoot）
2010.09.08 V4.0.1 iDS6101_HF_A 增加智能产品的SDK错误值，从NET_DVR_ID_ERROR（300）到NET_DVR_CALIBRATE_LINE_OUT_RECT（309）；
事件类型中增加贴纸条和读卡器，可实现两种事件的规则配置、能力获取等，详见（NET_VCA_EVENT_UNION、NET_VCA_BEHAVIOR_ABILITY）；
增加了ATM标定功能，详见（NET_DVR_CALIBRATION_CFG）
2010.03.09 | V4.0.0 | 人流量统计设备iVMS-6400 | 新增人流量规则配置功能（NET_DVR_PDC_RULE_CFG）；标定校验（NET_DVR_VerifyCalibration）；配置内部关键字（NET_DVR_GetBehaviorParamKey和NET_DVR_SetBehaviorParamKey）；人数统计查询（NET_DVR_FindPDCInfo、NET_DVR_FindNextPDCInfo、NET_DVR_FindPDCClose）；人数统计重置（NET_DVR_ResetCounter）；新增人流量统计结果上报功能（NET_DVR_PDC_ALRAM_INFO）
2010.03.09 | V4.0.0 | 新增智能高清IPC功能：前端参数配置功能（NET_DVR_CAMERAPARAMCFG）；IO输入配置功能（NET_DVR_IO_INCFG）；IO输出配置功能（NET_DVR_IO_OUTCFG）；闪光灯配置功能（NET_DVR_FLASH_OUTCFG）；红绿灯配置功能（NET_DVR_LIGHTSNAPCFG）；测速配置功能（NET_DVR_MEASURESPEEDCFG）；图像叠加配置功能（NET_DVR_IMAGEOVERLAYCFG）；单IO触发配置功能（NET_DVR_SNAPCFG）；虚拟线圈配置功能（NET_DVR_VTPARAM）；使能配置功能（NET_DVR_SNAPENABLECFG）；卡口电警配置功能（NET_DVR_POSTEPOLICECFG）；卡口电警配置功能（NET_DVR_POSTEPOLICECFG）；手动触发抓拍（NET_DVR_ManualSnap）；新增能力集类型SNAPCAMERA_ABILITY，新增智能高清IPC报警上传功能（NET_DVR_PLATE_RESULT）
2010.03.09 | V4.0.0 | iDS90XX、iDS91XX、DS95XX_HF_S、DS96XX_HF_S、DS90XX_HF_SH、DS91XX_HF_SH | 新增功能接口（NET_DVR_StartEmailTest、NET_DVR_GetEmailTestProgress、NET_DVR_StopEmailTest、NET_DVR_GetIPCProtoList、NET_DVR_SmartSearch、NET_DVR_SearchNextInfo、NET_DVR_StopSearch、NET_DVR_ZeroStartPlay、NET_DVR_ZeroStopPlay、NET_DVR_ZeroTurnOver、NET_DVR_ZeroMakeKeyFrame、NET_DVR_PlayBackControl_V40、NET_DVR_BackupByName、NET_DVR_BackupByTime、NET_DVR_GetBackupProgress、NET_DVR_StopBackup、NET_DVR_GetDiskList）；新增参数配置结构（NET_DVR_NET_DISKCFG、NET_DVR_ZEROCHANCFG、NET_DVR_PREVIEWCFG_V30、NET_DVR_ZERO_ZOOMCFG）
2010.03.09 | V4.0.0 | 审讯机DS-80XXSHL | 新增功能接口（NET_DVR_InquestGetCDRWScheme、NET_DVR_InquestSetCDRWScheme、NET_DVR_InquestFindFile、NET_DVR_InquestFindNextFile、NET_DVR_InquestFindClose、NET_DVR_InquestDeleteFile、NET_DVR_InquestCDWByFile、NET_DVR_InquestUploadFile、NET_DVR_InquestUploadClose、NET_DVR_InquestGetUploadState、NET_DVR_InquestStartCDW、NET_DVR_InquestStopCDW、NET_DVR_InquestGetCDWState、NET_DVR_InquestGetPIPStatus、NET_DVR_InquestSetPIPStatus、NET_DVR_InquestCheckSecretKey、NET_DVR_InquestSetSecretKey、NET_DVR_InquestStreamEncrypt、NET_DVR_InquestGetEncryptState）

V3.5.0版本新增内容

日期 | 版本 | 新增设备型号 | 新增内容
2010.02.09 | V3.5.0 | 多路解码器DS-630X_D | 新增接口功能（NET_DVR_MatrixStartDynamic_V30、NET_DVR_MatrixSetLoopDecChanInfo_V30、NET_DVR_MatrixGetLoopDecChanInfo_V30、NET_DVR_MatrixGetDecChanInfo_V30、NET_DVR_MatrixSetTranInfo_V30、NET_DVR_MatrixGetTranInfo_V30、NET_DVR_MatrixGetDisplayCfg、NET_DVR_MatrixSetDisplayCfg、NET_DVR_MatrixStartPassiveDecode、NET_DVR_MatrixSendData、NET_DVR_MatrixStopPassiveDecode、NET_DVR_UploadLogo、NET_DVR_LogoSwitch、NET_DVR_MatrixGetDeviceStatus、NET_DVR_MatrixDiaplayControl、NET_DVR_MatrixGetDecChanCfg、NET_DVR_MatrixSetDecChanCfg、NET_DVR_MatrixGetPassiveDecodeStatus、NET_DVR_MatrixGetVideoStandard、NET_DVR_MatrixSetVideoStandard、NET_DVR_MatrixPassiveDecodeControl）
2010.02.09 | V3.5.0 | DVS(DS_65XXHC、DS_65XXHC_S、DS_65XXHF、DS_65XXHF_S) |
2010.02.09 | V3.5.0 | DVR(DS76XX_H_S、DS76XX_N_S) |

V3.1.1版本新增内容

日期 | 版本 | 新增设备型号 | 新增内容
2009.11.10 | V3.1.1.5 |  | 获取设备能力集接口中的能力类型参数宏定义，如DEVICE_ALL_ABILITY等
2009.11.10 | V3.1.1.5 |  | G711音频编解码接口（NET_DVR_EncodeG711Frame和NET_DVR_DecodeG711Frame）
2009.11.10 | V3.1.1.5 |  | 多种码流封装格式的本地录像功能，详见NET_DVR_SaveRealData_V30
2009.11.10 | V3.1.1.5 |  | 网络硬盘接入参数配置（NET_DVR_NET_DISKCFG）
2009.11.10 | V3.1.1.5 |  | 按事件查找文件接口和结构体，详见NET_DVR_FindFileByEvent、NET_DVR_FindNextEvent接口和NET_DVR_SEARCH_EVENT_PARAM、NET_DVR_SEARCH_EVENT_RET结构体
2009.11.10 | V3.1.1.5 |  | 混合DVR的IP接入参数配置（扩展），支持域名配置（NET_DVR_IPPARACFG_V31结构体）
2009.11.10 | V3.1.1.5 |  | 修改结构体参数（NET_DVR_EMAILCFG_V30）支持SSL使能和SMTP端口的配置
2009.11.10 | V3.1.1.5 |  | 异常参数结构中增加录像异常类型，详见结构体NET_DVR_EXCEPTION_V30
2009.11.10 | V3.1.1.5 |  | 新增日志的主次类型，MINOR_VCA_ALARM_START、MINOR_VCA_ALARM_STOP、MINOR_IPC_IP_CONFLICT、MINOR_LOCAL_ADD_NAS、MINOR_LOCAL_DEL_NAS、MINOR_LOCAL_SET_NAS、MINOR_REBOOT_VCA_LIB、MINOR_REMOTE_ADD_NAS、MINOR_REMOTE_DEL_NAS、MINOR_REMOTE_SET_NAS、MINOR_LINK_START、MINOR_LINK_STOP和MINOR_NET_DISK_INFO
2009.11.10 | V3.1.1.5 |  | 增加报警上传结构参数中视频信号异常和录像异常的类型，详见结构体NET_DVR_ALARMINFO_V30
2009.11.10 | V3.1.1.5 |  | 增加混合型DVR的IP接入改变时的报警上传结构参数和命令值（COMM_IPCCFG_V31），详见结构体NET_DVR_IPALARMINFO_V31
2009.11.10 | V3.1.1.5 | 智能分析仪设备类型iDS52XX | 新增智能分析仪参数配置和获取接口，详见接口NET_DVR_GetDVRConfig和NET_DVR_SetDVRConfig
2009.11.10 | V3.1.1.5 |  | 新增双摄像机跟踪的参数配置接口，详见接口NET_DVR_GetDVRConfig、NET_DVR_SetDVRConfig、NET_DVR_GetTrackMode、NET_DVR_SetTrackMode
2009.10.30 | V3.1.1.4 |  | 增加ATM DVR获取协议列表、设置和获取协议参数配置信息功能，详见NET_DVR_GetAtmProtocol、NET_DVR_GetATMFrameFormat_V30、NET_DVR_SetATMFrameFormat_V30接口和NET_DVR_ATM_PROTOCOL、NET_DVR_ATM_FRAMEFORMAT_V30等结构
2009.10.30 | V3.1.1.4 |  | WIFI参数配置（NET_DVR_AP_INFO_LIST、NET_DVR_WIFI_CFG、NET_DVR_WIFI_WORKMODE）

V3.1.0版本新增内容

日期 | 版本 | 新增设备型号 | 新增内容
2009.8.20 | V3.1.0 | DVS(DS6001_HF_B、DS6101_HF_B) |
2009.8.20 | V3.1.0 |  | 行为分析参数配置，详见NET_VCA_RULECFG结构体
2009.8.20 | V3.1.0 |  | 智能信息参数配置，详见NET_VCA_CTRLCFG结构体
2009.8.20 | V3.1.0 |  | 获取设备能力集接口（NET_DVR_GetDeviceAbility）
2009.8.20 | V3.1.0 |  | 行为分析结果报警上传功能（NET_VCA_RULE_ALARM）
2009.8.20 | V3.1.0 |  | 智能信息DSP叠加配置功能的接口（NET_DVR_GetVCADrawMode和NET_DVR_SetVCADrawMode）
2009.8.20 | V3.1.0 |  | 智能录像类型和日志类型定义，录像类型见NET_DVR_RECORDSCHED的byRecordType；日志类型增加两种次类型（MINOR_VCA_ALARM_START和MINOR_VCA_ALARM_STOP）；
2009.8.20 | V3.1.0 |  | 重启智能库功能接口（NET_VCA_RestartLib）

V3.0.3版本新增内容

日期 | 版本 | 新增设备型号 | 新增内容
2009.7.1 | V3.0.3 |  | 图像参数中表示时间制式的字段，详见NET_DVR_PICCFG_EX结构体
2009.7.1 | V3.0.3 |  | DDNS参数中的域名解析系统的类型，详见NET_DVR_DDNSPARA_EX结构体
2009.7.1 | V3.0.3 |  | 新增本地备份相关的4个日志次类型（MINOR_LOCAL_START_BACKUP；MINOR_LOCAL_STOP_BACKUP；MINOR_LOCAL_COPYFILE_START_TIME；MINOR_LOCAL_COPYFILE_END_TIME）

V3.0.2版本新增内容

日期 | 版本 | 新增设备型号 | 新增内容
2009.5.20 | V3.0.2 |  | 快球设备类型（高清IP快球），该宏定义为MEGA_IPDOME
2009.5.20 | V3.0.2 |  | 语音对讲的G711编码方式，详见NET_DVR_COMPRESSION_AUDIO结构体
2009.5.20 | V3.0.2 |  | 压缩参数中NET_DVR_COMPRESSION_INFO_V30结构体中的音视频编码类型，主要是针对多码流版本的高清IPC

V3.0.0版本新增内容

日期 | 版本 | 新增设备型号 | 新增内容
2009.2.20 | V3.0.0 |  | IP设备接入资源参数配置，详见NET_DVR_IPPARACFG、NET_DVR_IPALARMINCFG和NET_DVR_IPALARMOUTCFG结构体
2009.2.20 | V3.0.0 |  | 硬盘盘组管理，详见NET_DVR_HDCFG接口和NET_DVR_HDGROUP_CFG结构体
2009.2.20 | V3.0.0 |  | 远程文件锁定解锁，详见NET_DVR_LockFileByName和NET_DVR_UnlockFileByName接口
2009.2.20 | V3.0.0 |  | 自动重连新增布防重连，透明通道重连，可以通过NET_DVR_SetDVRMessage接口接收消息。3.0版本以下只支持预览重连
2009.2.20 | V3.0.0 |  | 支持断点续传，用户可以通过NET_DVR_PlayBackControl中NET_DVR_PLAYSTART这个命令来设置断点续传的文件位置
2009.2.20 | V3.0.0 |  | 新增错误码类型，包括播放器的错误码NET_DVR_MAX_PLAYERPORT等
2009.2.20 | V3.0.0 |  | 新增配置巡航路径参数，详见NET_DVR_GetDVRConfig、NET_DVR_SetDVRConfig中的NET_DVR_CRUISE_PARA
2009.2.20 | V3.0.0 | DS90XX_HF_S |
2009.2.20 | V3.0.0 |  | 新增报警等信息回调类型值COMM_ALARM_V30、COMM_IPCCFG
2009.2.20 | V3.0.0 |  | 新增异常回调类型值EXCEPTION_ALARMRECONNECT等
2009.2.20 | V3.0.0 |  | 新增云台解码器类型获取接口，详见NET_DVR_GetPTZProtocol
2009.2.20 | V3.0.0 |  | 新增设备日志类型MINOR_REC_ERROR等
2009.2.20 | V3.0.0 |  | 新增获取SDK状态接口，详见NET_DVR_GetSDKState接口和结构体NET_DVR_SDKSTATE；新增SDK能力集接口，详见NET_DVR_GetSDKAbility接口和结构体NET_DVR_SDKABL
2009.2.20 | V3.0.0 |  | 新增报警回调接口，详见NET_DVR_SetDVRMessageCallBack_V30
2009.2.20 | V3.0.0 |  | 扩展查找录像文件等接口，详见NET_DVR_FindFile_V30、NET_DVR_FindNextFile_V30、NET_DVR_FindClose_V30
2009.2.20 | V3.0.0 |  | 新增升级进度获取接口，详见NET_DVR_GetUpgradeProgress
2009.2.20 | V3.0.0 |  | 新增升级网络环境设置接口，详见NET_DVR_SetNetworkEnvironment
2009.2.20 | V3.0.0 |  | 新增SDK日志文件设置接口，详见NET_DVR_SetLogToFile
2009.2.20 | V3.0.0 |  | 新增面板控制按键码：KEY_CODE_11~KEY_CODE_16
2009.2.20 | V3.0.0 |  | 新增面板锁定和解锁接口，详见NET_DVR_LockPanel、NET_DVR_UnlockPanel
2009.2.20 | V3.0.0 |  | 新增报警输出状态接口，详见NET_DVR_GetAlarmOut_V30和结构体NET_DVR_ALARMOUTSTATUS_V30
2009.2.20 | V3.0.0 |  | 新增异常回调接口，详见NET_DVR_SetExceptionCallBack_V30
2009.2.20 | V3.0.0 |  | 新增报警等信息监听接口，详见NET_DVR_StartListen_V30、NET_DVR_StopListen_V30
2009.2.20 | V3.0.0 |  | 新增预览接口，详见NET_DVR_RealPlay_V30
2009.2.20 | V3.0.0 |  | 新增报警布防、撤防接口，详见NET_DVR_SetupAlarmChan_V30、NET_DVR_CloseAlarmChan_V30
2009.2.20 | V3.0.0 |  | 新增语音对讲、语音转发和语音广播相关接口，详见NET_DVR_StartVoiceCom_V30、NET_DVR_StartVoiceCom_MR_V30、NET_DVR_ClientAudioStart_V30、NET_DVR_AddDVR_V30、NET_DVR_DelDVR_V30
2009.2.20 | V3.0.0 |  | 新增串口数据单向发送接口，详见NET_DVR_SendToSerialPort
2009.2.20 | V3.0.0 |  | 新增日志查找接口，详见NET_DVR_FindDVRLog_V30、NET_DVR_FindNextLog_V30、NET_DVR_FindLogClose_V30
2009.2.20 | V3.0.0 |  | 新增主辅口缩放设置和获取接口，详见NET_DVR_SetScaleCFG_V30、NET_DVR_GetScaleCFG_V30
2009.2.20 | V3.0.0 |  | 新增设备状态获取接口，详见NET_DVR_GetDVRWorkState_V30
2009.2.20 | V3.0.0 |  | 新增配置文件获取接口，详见NET_DVR_GetConfigFile_V30
2009.2.20 | V3.0.0 |  | 扩展配置网络参数，NET_DVR_NETCFG_V30
2009.2.20 | V3.0.0 |  | 扩展压缩参数，NET_DVR_COMPRESSIONCFG_V30
2009.2.20 | V3.0.0 |  | 扩展图像参数，NET_DVR_PICCFG_V30
2009.2.20 | V3.0.0 |  | 扩展录像参数，NET_DVR_RECORD_V30
2009.2.20 | V3.0.0 |  | 扩展用户参数，NET_DVR_USER_V30
2009.2.20 | V3.0.0 |  | 扩展DDNS参数，NET_DVR_DDNSPARA_V30
2009.2.20 | V3.0.0 |  | 扩展EMAIL参数，NET_DVR_EMAILCFG_V30
2009.2.20 | V3.0.0 |  | 扩展报警输入、报警输出参数，NET_DVR_ALARMINCFG_V30和NET_DVR_ALARMOUTCFG_V30
2009.2.20 | V3.0.0 |  | 扩展视频输出参数，NET_DVR_VIDEOOUT_V30
2009.2.20 | V3.0.0 |  | 扩展字符叠加参数，NET_DVR_SHOWSTRING_V30
2009.2.20 | V3.0.0 |  | 扩展异常参数，NET_DVR_EXCEPTION_V30
2009.2.20 | V3.0.0 |  | 扩展RS232参数，NET_DVR_RS232CFG_V30
2009.2.20 | V3.0.0 |  | 扩展解码器485参数，NET_DVR_DECODERCFG_V30，需要与解码器类型获取接口配合使用
2009.2.20 | V3.0.0 |  | 扩展本地主口和辅口预览参数，NET_DVR_PREVIEWCFG_V30
2009.2.20 | V3.0.0 |  | 扩展设备状态参数，NET_DVR_WORKSTATE_V30


更新记录

v4.1.0 2012-05-09
更新原因：新增设备（红外热成像摄像机），IPC升级版本（v4.0）
1. NET_DVR_CAMERAPARAMCFG使用7个保留字节增加参数byDimmerMode、byPaletteMode、byEnhancedMode、
byFilterSwitch、byFocusSpeed、byAutoCompensationInterval和bySceneMode。
2. NET_DVR_EXPOSURE使用1个保留字节增加参数byAutoApertureLevel。
3. 设备前端参数能力集增加自动光圈灵敏度能力项。
4. NET_DVR_COMPRESSION_INFO_V30使用1个保留字节增加参数byVideoEncComplexity。
5. NET_DVR_HANDLEEXCEPTION_V30参数dwHandleType增加定义0x20(无线声光报警器联动)。
6. NET_DVR_RECORDDAY和NET_DVR_RECORDSCHED的参数byRecordType，或者 NET_DVR_FILECOND和NET_DVR_FILECOND_V40的参数dwFileType增加定义：
10-PIR报警，11-无线报警，12-呼救报警，13-PIR|无线报警|呼救报警。
7. NET_DVR_FINDDATA_V30和NET_DVR_FIND_PICTURE_PARAM的参数byFileType增加定义：
10-PIR报警，11-无线报警，12-呼救报警。
8. NET_DVR_EVENT_CAPTURE的参数struRelCaptureChan增加定义：
数组3表示PIR报警抓图，数组4表示无线报警抓图，数组5表示呼救报警抓图。
v4.1.0 2012-04-23
更新原因：新增设备（邦诺CVR）
1. NET_DVR_IPCHANINFO使用1个保留字节增加参数byIPIDHigh。
2. NET_DVR_SINGLE_HD使用2个保留字节增加参数byDiskDriver和by Recycling。
3. NET_DVR_SEARCH_EVENT_RET联合体中增加结构体struStreamIDRet。
v4.1.0 2012-04-20
更新原因：智能高清网络摄像机升级版本（v3.1）
1. NET_DVR_DEVICEINFO_V30参数bySupport1增加获取布防优先级能力。
2. NET_DVR_SNAPENABLECFG使用2个保留字节增加参数byUploadInfoFTP和byAutoFormatSD。
3. NET_DVR_DEVICESTATECFG使用11个保留字节增加参数bySDStatus和byFortifyLevel。
4. NET_DVR_SNAP_ABILITY使用8个保留字节增加参数byPreTriggerSupport、dwAbilityType、byIoSpeedGroup、byIoLightGroup和byRecogRegionType。
v4.1.0 2012-02-10
1. 取消hpr.dll动态库的使用，新增QosControl.dll。
2. LOWCOST_DVR修改成DVR_7000H。
3. NET_DVR_MATRIX_DECCHAN_CONTROL使用一个保留字节来表示“解码延时”（byDecodeDelay）。
4. NET_DVR_DEV_CHAN_INFO使用67个保留字节表示byDeviceType、byDispChan、bySubDispChan和byDomain[MAX_DOMAIN_NAME]。
5. LOWCOST_DVR修改成DVR_7000H。
6. NET_DVR_MATRIX_DECCHAN_CONTROL使用一个保留字节来表示“解码延时”（byDecodeDelay）。
7. NET_DVR_ALARMHOST_ABILITY使用12个WORD类型的保留字段来表示bySupportDetector、
bySupportSensitivity、 bySupportArrayBypass、bySupportAlarmInDelay、bySupportAlarmInType[16]、byTelNum、
byCenterGroupNum、byGPRSNum以及byNetNum。
8. NET_DVR_ALARMIN_PARAM使用2个保留字节来表示bySensitivityParam和byArrayBypass。
9. NET_DVR_ALARMHOST_MAIN_STATUS使用1个保留字节来表示bySubSystemGuardStatus。
10. NET_DVR_SWITCH_ALARM使用13个保留字节来表示byEventType、dwRelativeTime和struOperateTime。
11. NET_DVR_ALARMHOST_EXCEPTION_ALARM使用12个保留字节来表示dwRelativeTime和struOperateTime。
12. 新增接口NET_DVR_RigisterPlayBackDrawFun。


通用接口介绍

接口 | 功能 | 支持的产品 | 备注
NET_DVR_Init | 初始化SDK | 全部 |
NET_DVR_Cleanup | 释放SDK资源 | 全部 |
NET_DVR_SetConnectTime | 设置SDK网络连接超时时间和连接尝试次数 | 全部 |
NET_DVR_SetReconnect | 设置SDK重连功能 | 全部 |
NET_DVR_GetDVRIPByResolveSvr | 通过解析服务器，获取设备的动态IP地址 | 全部 |
NET_DVR_SetDVRMessage | 注册接收异常、重连等消息的窗口句柄 | 全部 |
NET_DVR_SetExceptionCallBack_V30 | 注册接收异常、重连等消息的窗口句柄或回调函数 | 全部 |
NET_DVR_GetSDKVersion | 获取SDK的版本信息 | 全部 |
NET_DVR_GetSDKBuildVersion | 获取SDK的版本号和build信息 | 全部 |
NET_DVR_GetSDKState | 获取当前SDK的状态信息 | 全部 |
NET_DVR_GetSDKAbility | 获取当前SDK的功能信息 | 全部 |
NET_DVR_SetLogToFile | 启用SDK写日志文件 | 全部 |
NET_DVR_GetLastError | 返回最后操作的错误码 | 全部 |
NET_DVR_GetErrorMsg | 返回最后操作的错误码信息 | 全部 |
NET_DVR_Login_V30 | 注册 | 全部 |
NET_DVR_Logout_V30 | 注销 | 全部 |


90xx/91xx V1.0系列网络硬盘录像机功能接口介绍

90xx/91xx V1.0系列网络硬盘录像机除通用接口的功能外，还支持以下接口的功能，包括预览、视频数据获取、零通道预览和配置、录像文件查找、回放和下载、录像文件锁定和备份、手动录像、报警上传、语音对讲、硬盘管理和远程参数配置等。

设备型号 | 功能 | 接口 | 相关参数
预览相关功能 |  |  |
DS-90xx、DS-91xx系列设备 | 设置播放显示模式 | NET_DVR_SetShowMode |
DS-90xx、DS-91xx系列设备 | 主码流动态产生一个关键帧 | NET_DVR_MakeKeyFrame |
DS-90xx、DS-91xx系列设备 | 子码流动态产生一个关键帧 | NET_DVR_MakeKeyFrameSub |
DS-90xx、DS-91xx系列设备 | 实时预览 | NET_DVR_RealPlay_V30 |
DS-90xx、DS-91xx系列设备 | 停止预览 | NET_DVR_StopRealPlay |
DS-90xx、DS-91xx系列设备 | 获取预览时用来解码和显示的播放器句柄 | NET_DVR_GetRealPlayerIndex |
DS-90xx、DS-91xx系列设备 | 获取预览视频显示参数 | NET_DVR_ClientGetVideoEffect |
DS-90xx、DS-91xx系列设备 | 设置预览视频显示参数 | NET_DVR_ClientSetVideoEffect |
DS-90xx、DS-91xx系列设备 | 预览画面叠加字符和图像 | NET_DVR_RigisterDrawFun |
DS-90xx、DS-91xx系列设备 | 设置播放库的帧缓冲区个数 | NET_DVR_SetPlayerBufNumber |
DS-90xx、DS-91xx系列设备 | 设置解码时丢弃B帧的个数 | NET_DVR_ThrowBFrame |
DS-90xx、DS-91xx系列设备 | 设置声音播放模式 | NET_DVR_SetAudioMode |
DS-90xx、DS-91xx系列设备 | 独占声卡模式下开启声音 | NET_DVR_OpenSound |
DS-90xx、DS-91xx系列设备 | 独占声卡模式下关闭声音 | NET_DVR_CloseSound |
DS-90xx、DS-91xx系列设备 | 共享声卡模式下开启声音 | NET_DVR_OpenSoundShare |
DS-90xx、DS-91xx系列设备 | 共享声卡模式下关闭声音 | NET_DVR_CloseSoundShare |
DS-90xx、DS-91xx系列设备 | 调节播放音量 | NET_DVR_Volume |
DS-90xx、DS-91xx系列设备 | 初始化系统中的显示设备 | NET_DVR_InitDDrawDevice |
DS-90xx、DS-91xx系列设备 | 释放显示设备占用的资源 | NET_DVR_ReleaseDDrawDevice |
DS-90xx、DS-91xx系列设备 | 获取系统的显示设备的数量 | NET_DVR_GetDDrawDeviceTotalNums |
DS-90xx、DS-91xx系列设备 | 设置播放窗口所使用的显卡 | NET_DVR_SetDDrawDevice |
DS-90xx、DS-91xx系列设备 | 注册回调函数，捕获实时码流数据 | NET_DVR_SetRealDataCallBack |
DS-90xx、DS-91xx系列设备 | 注册回调函数，捕获实时码流数据（标准码流） | NET_DVR_SetStandardDataCallBack |
DS-90xx、DS-91xx系列设备 | 捕获数据并存放到指定的文件中 | NET_DVR_SaveRealData |
DS-90xx、DS-91xx系列设备 | 停止数据捕获 | NET_DVR_StopSaveRealData |
DS-90xx、DS-91xx系列设备 | 单帧数据捕获并保存成BMP位图 | NET_DVR_CapturePicture |
DS-90xx、DS-91xx系列设备 | 单帧数据捕获并保存成JPEG图 | NET_DVR_CaptureJPEGPicture |
DS-90xx、DS-91xx系列设备 | 单帧数据捕获并保存成JPEG存放在指定的内存空间中 | NET_DVR_CaptureJPEGPicture_NEW |
录像文件操作的相关功能 |  |  |
DS-90xx、DS-91xx系列设备 | 根据文件类型、时间查找设备录像文件 | NET_DVR_FindFile_V30 | NET_DVR_FILECOND（不支持带卡号的查询）
DS-90xx、DS-91xx系列设备 | 逐个获取查找到的文件信息 | NET_DVR_FindNextFile_V30 |
DS-90xx、DS-91xx系列设备 | 关闭文件查找，释放资源 | NET_DVR_FindClose_V30 |
回放录像文件及相关 |  |  |
DS-90xx、DS-91xx系列设备 | 按文件名回放录像文件 | NET_DVR_PlayBackByName |
DS-90xx、DS-91xx系列设备 | 按时间回放录像文件 | NET_DVR_PlayBackByTime |
DS-90xx、DS-91xx系列设备 | 控制录像回放的状态 | NET_DVR_PlayBackControl_V40 | NET_DVR_PLAYSETTIME控制不支持 NET_DVR_PLAYGETTOTALLEN控制不支持
DS-90xx、DS-91xx系列设备 | 停止回放录像文件 | NET_DVR_StopPlayBack |
DS-90xx、DS-91xx系列设备 | 捕获回放的录像数据，并保存成文件 | NET_DVR_PlayBackSaveData |
DS-90xx、DS-91xx系列设备 | 停止保存录象数据 | NET_DVR_StopPlayBackSave |
DS-90xx、DS-91xx系列设备 | 注册回调函数，捕获录像数据 | NET_DVR_SetPlayDataCallBack |
DS-90xx、DS-91xx系列设备 | 获取录像回放时显示的OSD时间 | NET_DVR_GetPlayBackOsdTime |
DS-90xx、DS-91xx系列设备 | 录像回放时抓图，并保存在文件中 | NET_DVR_PlayBackCaptureFile |
DS-90xx、DS-91xx系列设备 | 刷新显示回放窗口 | NET_DVR_RefreshPlay |
DS-90xx、DS-91xx系列设备 | 获取回放时用来解码显示的播放库句柄 | NET_DVR_GetPlayBackPlayerIndex |
录像文件下载及相关 |  |  |
DS-90xx、DS-91xx系列设备 | 按文件名下载录像文件 | NET_DVR_GetFileByName |
DS-90xx、DS-91xx系列设备 | 按时间下载录像文件 | NET_DVR_GetFileByTime |
DS-90xx、DS-91xx系列设备 | 控制录像下载的状态 | NET_DVR_PlayBackControl |
DS-90xx、DS-91xx系列设备 | 停止下载录像文件 | NET_DVR_StopGetFile |
DS-90xx、DS-91xx系列设备 | 获取当前下载录像文件的进度 | NET_DVR_GetDownloadPos |
录像文件锁定与解锁 |  |  |
DS-90xx、DS-91xx系列设备 | 按文件名锁定录像文件 | NET_DVR_LockFileByName |
DS-90xx、DS-91xx系列设备 | 按文件名解锁录像文件 | NET_DVR_UnlockFileByName |
手动录像 |  |  |
DS-90xx、DS-91xx系列设备 | 远程手动启动设备录像 | NET_DVR_StartDVRRecord |
DS-90xx、DS-91xx系列设备 | 远程手动停止设备录像 | NET_DVR_StopDVRRecord |
布防、撤防和监听 |  |  |
DS-90xx、DS-91xx系列设备 | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 |
DS-90xx、DS-91xx系列设备 | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
DS-90xx、DS-91xx系列设备 | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
DS-90xx、DS-91xx系列设备 | 启动监听，接收设备主动上传的报警等信息（支持多线程） | NET_DVR_StartListen_V30 |
DS-90xx、DS-91xx系列设备 | 停止监听（支持多线程） | NET_DVR_StopListen_V30 |
远程面板控制 |  |  |
DS-90xx、DS-91xx系列设备 | 远程控制面板上的按键 | NET_DVR_ClickKey |
DS-90xx、DS-91xx系列设备 | 禁用设备本地面板控制 | NET_DVR_LockPanel |
DS-90xx、DS-91xx系列设备 | 恢复设备本地面板控制 | NET_DVR_UnLockPanel |
云台控制 |  |  |
DS-90xx、DS-91xx系列设备 | 云台控制操作(需先启动图象预览) | NET_DVR_PTZControl |
DS-90xx、DS-91xx系列设备 | 云台控制操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZControl好，RTSP预览时不支持此功能） | NET_DVR_PTZControl_EX |
DS-90xx、DS-91xx系列设备 | 云台控制操作(不用启动图象预览) | NET_DVR_PTZControl_Other |
DS-90xx、DS-91xx系列设备 | 带速度的云台控制操作(需先启动图象预览) | NET_DVR_PTZControlWithSpeed |
DS-90xx、DS-91xx系列设备 | 带速度的云台控制操作(不用启动图象预览) | NET_DVR_PTZControlWithSpeed_Other |
DS-90xx、DS-91xx系列设备 | 云台预置点操作（需先启动预览） | NET_DVR_PTZPreset |
DS-90xx、DS-91xx系列设备 | 云台预置点操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZPreset好，RTSP预览时不支持此功能） | NET_DVR_PTZPreset_EX |
DS-90xx、DS-91xx系列设备 | 云台预置点操作 | NET_DVR_PTZPreset_Other |
DS-90xx、DS-91xx系列设备 | 云台巡航操作，需先启动预览 | NET_DVR_PTZCruise |
DS-90xx、DS-91xx系列设备 | 云台巡航操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZCruise好，RTSP预览时不支持此功能） | NET_DVR_PTZCruise_EX |
DS-90xx、DS-91xx系列设备 | 云台巡航操作 | NET_DVR_PTZCruise_Other |
DS-90xx、DS-91xx系列设备 | 云台轨迹操作，需先启动预览 | NET_DVR_PTZTrack |
DS-90xx、DS-91xx系列设备 | 云台轨迹操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZTrack好，RTSP预览时不支持此功能） | NET_DVR_PTZTrack_EX |
DS-90xx、DS-91xx系列设备 | 云台轨迹操作 | NET_DVR_PTZTrack_Other |
DS-90xx、DS-91xx系列设备 | 透明云台操作，需先启动预览 | NET_DVR_TransPTZ |
DS-90xx、DS-91xx系列设备 | 透明云台操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_TransPTZ好，RTSP预览时不支持此功能） | NET_DVR_TransPTZ_EX |
DS-90xx、DS-91xx系列设备 | 透明云台操作 | NET_DVR_TransPTZ_Other |
语音对讲、转发及广播 |  |  |
DS-90xx、DS-91xx系列设备 | 启动语音对讲 | NET_DVR_StartVoiceCom_V30 |
DS-90xx、DS-91xx系列设备 | 设置语音对讲客户端的音量 | NET_DVR_SetVoiceComClientVolume |
DS-90xx、DS-91xx系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
DS-90xx、DS-91xx系列设备 | 启动语音转发，获取编码后的音频数据 | NET_DVR_StartVoiceCom_MR_V30 |
DS-90xx、DS-91xx系列设备 | 转发语音数据 | NET_DVR_VoiceComSendData |
DS-90xx、DS-91xx系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
DS-90xx、DS-91xx系列设备 | 启动语音广播的PC端声音捕获 | NET_DVR_ClientAudioStart_V30 |
DS-90xx、DS-91xx系列设备 | 添加设备的某个语音通道到可以接收PC端声音的广播组 | NET_DVR_AddDVR_V30 |
DS-90xx、DS-91xx系列设备 | 从可接收PC机声音的广播组里删除该设备的语音通道 | NET_DVR_DelDVR_V30 |
DS-90xx、DS-91xx系列设备 | 停止语音广播的PC端声音捕获 | NET_DVR_ClientAudioStop |
透明通道 |  |  |
DS-90xx、DS-91xx系列设备 | 建立透明通道 | NET_DVR_SerialStart |
DS-90xx、DS-91xx系列设备 | 通过透明通道向设备串口发送数据 | NET_DVR_SerialSend |
DS-90xx、DS-91xx系列设备 | 断开透明通道 | NET_DVR_SerialStop |
向串口发送数据 |  |  |
DS-90xx、DS-91xx系列设备 | 直接向串口发送数据，不需要建立透明通道 | NET_DVR_SendToSerialPort |
DS-90xx、DS-91xx系列设备 | 直接向232串口发送数据，不需要建立透明通道 | NET_DVR_SendTo232Port |
硬盘管理 |  |  |
DS-90xx、DS-91xx系列设备 | 远程格式化设备硬盘 | NET_DVR_FormatDisk |
DS-90xx、DS-91xx系列设备 | 获取格式化硬盘的进度 | NET_DVR_GetFormatProgress |
DS-90xx、DS-91xx系列设备 | 关闭格式化硬盘句柄，释放资源 | NET_DVR_CloseFormatHandle |
设备维护管理 |  |  |
DS-90xx、DS-91xx系列设备 | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
DS-90xx、DS-91xx系列设备 | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
DS-90xx、DS-91xx系列设备 | 远程升级 | NET_DVR_Upgrade |
DS-90xx、DS-91xx系列设备 | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
DS-90xx、DS-91xx系列设备 | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
DS-90xx、DS-91xx系列设备 | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
DS-90xx、DS-91xx系列设备 | 查找设备的日志信息（可搜索带S.M.A.R.T信息的日志） | NET_DVR_FindDVRLog_V30 |
DS-90xx、DS-91xx系列设备 | 逐条获取查找到的日志信息 | NET_DVR_FindNextLog_V30 |
DS-90xx、DS-91xx系列设备 | 释放查找日志的资源 | NET_DVR_FindLogClose_V30 |
DS-90xx、DS-91xx系列设备 | 恢复设备默认参数 | NET_DVR_RestoreConfig |
DS-90xx、DS-91xx系列设备 | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
DS-90xx、DS-91xx系列设备 | 导出配置文件 | NET_DVR_GetConfigFile |
DS-90xx、DS-91xx系列设备 | 导入配置文件 | NET_DVR_SetConfigFile_EX |
DS-90xx、DS-91xx系列设备 | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
DS-90xx、DS-91xx系列设备 | 重启设备 | NET_DVR_RebootDVR |
DS-90xx、DS-91xx系列设备 | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
DS-90xx、DS-91xx系列设备 | 获取设备参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
DS-90xx、DS-91xx系列设备 | 设置设备参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
DS-90xx、DS-91xx系列设备 | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
DS-90xx、DS-91xx系列设备 | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
DS-90xx、DS-91xx系列设备 | 获取网络参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
DS-90xx、DS-91xx系列设备 | 设置网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
DS-90xx、DS-91xx系列设备 | 获取图像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
DS-90xx、DS-91xx系列设备 | 设置图像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
DS-90xx、DS-91xx系列设备 | 获取压缩参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
DS-90xx、DS-91xx系列设备 | 设置压缩参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
DS-90xx、DS-91xx系列设备 | 获取录像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RECORD_V30
DS-90xx、DS-91xx系列设备 | 设置录像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RECORD_V30
DS-90xx、DS-91xx系列设备 | 获取（云台）解码器参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
DS-90xx、DS-91xx系列设备 | 设置（云台）解码器参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
DS-90xx、DS-91xx系列设备 | 获取232串口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
DS-90xx、DS-91xx系列设备 | 设置232串口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
DS-90xx、DS-91xx系列设备 | 获取报警输入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
DS-90xx、DS-91xx系列设备 | 设置报警输入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
DS-90xx、DS-91xx系列设备 | 获取报警输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
DS-90xx、DS-91xx系列设备 | 设置报警输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
DS-90xx、DS-91xx系列设备 | 获取本地预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-90xx、DS-91xx系列设备 | 设置本地预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-90xx、DS-91xx系列设备 | 获取辅助预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-90xx、DS-91xx系列设备 | 设置辅助预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-90xx、DS-91xx系列设备 | 获取视频输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30
DS-90xx、DS-91xx系列设备 | 设置视频输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30
DS-90xx、DS-91xx系列设备 | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
DS-90xx、DS-91xx系列设备 | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
DS-90xx、DS-91xx系列设备 | 获取异常参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
DS-90xx、DS-91xx系列设备 | 设置异常参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
DS-90xx、DS-91xx系列设备 | 获取时区和夏时制参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
DS-90xx、DS-91xx系列设备 | 设置时区和夏时制参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
DS-90xx、DS-91xx系列设备 | 获取叠加字符参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SHOWSTRING_V30 IP通道不支持字符叠加功能
DS-90xx、DS-91xx系列设备 | 设置叠加字符参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SHOWSTRING_V30 IP通道不支持字符叠加功能
DS-90xx、DS-91xx系列设备 | 获取报警触发辅助输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
DS-90xx、DS-91xx系列设备 | 设置报警触发辅助输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
DS-90xx、DS-91xx系列设备 | 获取网络应用(NTP/DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
DS-90xx、DS-91xx系列设备 | 设置网络应用(NTP/DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
DS-90xx、DS-91xx系列设备 | 获取网络应用(NTP)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NTPPARA
DS-90xx、DS-91xx系列设备 | 设置网络应用(NTP)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NTPPARA
DS-90xx、DS-91xx系列设备 | 获取网络应用(DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
DS-90xx、DS-91xx系列设备 | 设置网络应用(DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
DS-90xx、DS-91xx系列设备 | 获取网络应用(EMAIL)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
DS-90xx、DS-91xx系列设备 | 设置网络应用(EMAIL)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
DS-90xx、DS-91xx系列设备 | 获取NFS（网络文件系统）参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NFSCFG
DS-90xx、DS-91xx系列设备 | 设置NFS（网络文件系统）参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NFSCFG
DS-90xx系列设备 | 获取IP接入配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IPPARACFG_V31 DS-91xx系列设备不支持
DS-90xx系列设备 | 设置IP接入配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPPARACFG_V31 DS-91xx系列设备不支持
DS-90xx系列设备 | 获取IP报警输入接入配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IPALARMINCFG DS-91xx系列设备不支持
DS-90xx系列设备 | 设置IP报警输入接入配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPALARMINCFG DS-91xx系列设备不支持
DS-90xx系列设备 | 获取IP报警输出接入配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IPALARMOUTCFG DS-91xx系列设备不支持
DS-90xx系列设备 | 设置IP报警输出接入配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPALARMOUTCFG DS-91xx系列设备不支持
DS-90xx、DS-91xx系列设备 | 获取硬盘管理参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HDCFG
DS-90xx、DS-91xx系列设备 | 设置硬盘管理参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HDCFG
DS-90xx、DS-91xx系列设备 | 获取盘组管理参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HDGROUP_CFG
DS-90xx、DS-91xx系列设备 | 设置盘组管理参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HDGROUP_CFG
DS-90xx、DS-91xx系列设备 | 获取语音对讲音频参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSION_AUDIO
DS-90xx、DS-91xx系列设备 | 设置语音对讲音频参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSION_AUDIO
DS-90xx、DS-91xx系列设备 | 获取网络硬盘接入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NET_DISKCFG
DS-90xx、DS-91xx系列设备 | 设置网络硬盘接入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NET_DISKCFG
DS-90xx、DS-91xx系列设备 | 获取设备报警输出 | NET_DVR_GetAlarmOut_V30 |
DS-90xx、DS-91xx系列设备 | 设置设备报警输出 | NET_DVR_SetAlarmOut |
DS-90xx、DS-91xx系列设备 | 获取设备支持的云台协议 | NET_DVR_GetPTZProtocol |
DS-90xx、DS-91xx系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG |
DS-90xx、DS-91xx系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG_V30 |
DS-90xx、DS-91xx系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG |
DS-90xx、DS-91xx系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG_V30 |

以下给出设备支持的编码类型和封装格式

设备型号 | 封装格式 | 编码类型 | 备注
DS-90xx | PS | 模拟通道：私有 数字通道：依接入的前端决定 |
DS-91xx | PS | 私有 |


90xx/91xx V1.1系列网络硬盘录像机功能接口介绍

90xx/91xx V1.1系列网络硬盘录像机除分别兼容90xx/91xx V1.0的所有功能外，增加按事件查找录像文件的功能。

设备型号 | 功能 | 接口 | 相关参数
按事件查找录像文件的相关功能 |  |  |
DS-90xx、DS-91xx系列设备V1.1（含）以上版本 | 根据事件查找录像文件 | NET_DVR_FindFileByEvent |
DS-90xx、DS-91xx系列设备V1.1（含）以上版本 | 逐个获取查找到的文件信息 | NET_DVR_FindNextEvent |
DS-90xx、DS-91xx系列设备V1.1（含）以上版本 | 关闭文件查找，释放资源 | NET_DVR_FindClose_V30 |

以下给出设备支持的编码类型和封装格式

设备型号 | 封装格式 | 编码类型 | 备注
DS-90xx | PS | 模拟通道：私有 数字通道：依接入的前端决定 |
DS-91xx | PS | 私有 |


90xx/91xx V1.2系列网络硬盘录像机功能接口介绍

90xx/91xx V1.2系列网络硬盘录像机除分别兼容90xx/91xx V1.1（含）以下的所有功能外，增加以下接口的功能，包括零通道相关、录像文件备份、获取IPC协议列表、获取和修改IPC信息和邮件测试等。

设备型号 | 功能 | 接口 | 相关参数
按区域移动侦测智能搜索功能 |  |  |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 开始智能搜索 | NET_DVR_SmartSearch |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 获取区域内的下一个移动侦测信息 | NET_DVR_SearchNextInfo |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 停止智能搜索 | NET_DVR_StopSearch |
零通道相关功能 |  |  |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 获取零通道压缩参数 | NET_DVR_GetDVRConfig | NET_DVR_ZEROCHANCFG
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 设置零通道压缩参数 | NET_DVR_SetDVRConfig | NET_DVR_ZEROCHANCFG
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 获取零通道本地预览参数 | NET_DVR_GetDVRConfig | NET_DVR_PREVIEWCFG_V30
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 设置零通道本地预览参数 | NET_DVR_SetDVRConfig | NET_DVR_PREVIEWCFG_V30
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 获取零通道缩放参数 | NET_DVR_GetDVRConfig | NET_DVR_ZERO_ZOOMCFG
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 设置零通道缩放参数 | NET_DVR_SetDVRConfig | NET_DVR_ZERO_ZOOMCFG
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 开启零通道预览 | NET_DVR_ZeroStartPlay |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 停止零通道预览 | NET_DVR_ZeroStopPlay |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 零通道产生一个关键帧 | NET_DVR_ZeroMakeKeyFrame |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 零通道预览画面翻页 | NET_DVR_ZeroTurnOver |
回放录像文件及相关 |  |  |
DS-90xx、DS-91xx系列设备 | 控制录像回放的状态 | NET_DVR_PlayBackControl_V40 | 除支持26之前的控制外，还支持NET_DVR_PLAYSETTIME控制支持 NET_DVR_PLAYGETTOTALLEN控制支持
录像文件备份 |  |  |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 获取设备磁盘列表 | NET_DVR_GetDiskList |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 按文件名备份录像文件 | NET_DVR_BackupByName |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 按时间段备份录像文件 | NET_DVR_BackupByTime |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 获取文件备份的进度 | NET_DVR_GetBackupProgress |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 停止文件备份 | NET_DVR_StopBackup |
远程参数配置 |  |  |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 获取设备参数(扩展) | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 设置设备参数(扩展) | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
DS-90xx、DS-91xx系列设备V1..2（含）以上版本 | 获取零通道压缩参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZEROCHANCFG
DS-90xx、DS-91xx系列设备V1..2（含）以上版本 | 设置零通道压缩参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZEROCHANCFG
DS-90xx、DS-91xx系列设备V1..2（含）以上版本 | 获取零通道本地预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-90xx、DS-91xx系列设备V1..2（含）以上版本 | 设置零通道本地预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-90xx、DS-91xx系列设备V1..2（含）以上版本 | 获取零通道缩放参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZERO_ZOOMCFG
DS-90xx、DS-91xx系列设备V1..2（含）以上版本 | 设置零通道缩放参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZERO_ZOOMCFG
获取设备能力 |  |  |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 获取设备能力 | NET_DVR_GetDeviceAbility | 支持的能力类型有：COMPRESSIONCFG_ABILITY（压缩参数能力）
获取IPC协议列表 |  |  |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 获取设备支持的IPC协议表 | NET_DVR_GetIPCProtoList |
邮件测试 |  |  |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 测试按已配置的EMAIL参数能否收发成功 | NET_DVR_StartEmailTest |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 获取邮件测试的进度 | NET_DVR_GetEmailTestProgress |
DS-90xx、DS-91xx系列设备V1.2（含）以上版本 | 停止邮件测试 | NET_DVR_StopEmailTest |

以下给出设备支持的编码类型和封装格式

设备型号 | 封装格式 | 编码类型 | 备注
DS-90xx | PS | 模拟通道：私有 数字通道：依接入的前端决定 |
DS-91xx | PS | 私有 |


91xxHF-ST系列网络硬盘录像机功能接口介绍

91xxHF-ST系列网络硬盘录像机除了兼容90xx/91xx的所有功能外，增加以下接口的功能，包括假日参数配置、多网卡配置、检测网络流量、录像标签功能、磁盘配额管理、SNMP协议配置、抓图功能接口以及图片回放备份等。

设备型号 | 功能 | 接口 | 相关参数
假日参数配置 |  |  |
91xxHF-ST系列 | 获取节假日参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HOLIDAY_PARAM_CFG
91xxHF-ST系列 | 设置节假日参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HOLIDAY_PARAM_CFG
91xxHF-ST系列 | 获取假日报警处理方式 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HOLIDAY_HANDLE 包括移动侦测、视频信号丢失、视频遮盖以及报警输入的假日处理方式
91xxHF-ST系列 | 设置假日报警处理方式 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HOLIDAY_HANDLE 包括移动侦测、视频信号丢失、视频遮盖以及报警输入的假日处理方式
91xxHF-ST系列 | 获取假日录像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HOLIDAY_RECORD
91xxHF-ST系列 | 设置假日录像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HOLIDAY_RECORD
多网卡配置 |  |  |
91xx-ST系列 | 获取多网卡配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_MULTI
91xxHF-ST系列 | 设置多网卡配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_MULTI
91xxHF-ST系列 | 获取BONDING网卡参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETWORK_BONDING
91xxHF-ST系列 | 设置BONDING网卡参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETWORK_BONDING
网络流量检测 |  |  |
91xxHF-ST系列 | 开始网络流量检测 | NET_DVR_StartNetworkFlowTest |
91xxHF-ST系列 | 停止网络流量检测 | NET_DVR_StopNetworkFlowTest |
录像标签功能 |  |  |
91xxHF-ST系列 | 添加录像标签 | NET_DVR_InsertRecordLabel |
91xxHF-ST系列 | 删除录像标签 | NET_DVR_DelRecordLabel |
91xxHF-ST系列 | 搜索录像标签 | NET_DVR_FindRecordLabel |
91xxHF-ST系列 | 逐个获取搜索到的录像标签 | NET_DVR_FindNextLabel |
91xxHF-ST系列 | 停止搜索录像标签 | NET_DVR_StopFindLabel |
抓图配置以及图片回放备份功能 |  |  |
91xxHF-ST系列 | 获取设备抓图配置 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_JPEG_CAPTURE_CFG
91xxHF-ST系列 | 设置设备抓图配置 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_JPEG_CAPTURE_CFG
91xxHF-ST系列 | 获取抓图计划 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SCHED_CAPTURECFG
91xxHF-ST系列 | 设置抓图计划 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SCHED_CAPTURECFG
91xxHF-ST系列 | 获取抓图FTP上传参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_FTPCFG
91xxHF-ST系列 | 设置抓图FTP上传参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_FTPCFG
91xxHF-ST系列 | 根据类型和时间查找图片 | NET_DVR_FindPicture |
91xxHF-ST系列 | 逐个获取查找到的图片信息 | NET_DVR_FindNextPicture |
91xxHF-ST系列 | 关闭图片查找，释放资源 | NET_DVR_CloseFindPicture |
91xxHF-ST系列 | 图片回放 | NET_DVR_GetPicture_V30 |
91xxHF-ST系列 | 备份图片 | NET_DVR_BackupPicture |
91xxHF-ST系列 | 获取图片备份的进度 | NET_DVR_GetBackupProgress |
91xxHF-ST系列 | 停止备份 | NET_DVR_StopBackup |
磁盘配额管理 |  |  |
91xxHF-ST系列 | 获取磁盘配额信息 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DISK_QUOTA_CFG
91xxHF-ST系列 | 设置磁盘配额信息 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DISK_QUOTA_CFG
SNMP协议配置 |  |  |
91xxHF-ST系列 | 获取SNMP参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SNMPCFG
91xxHF-ST系列 | 设置SNMP参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SNMPCFG
通道的功能接口 |  |  |
91xxHF-ST系列 | 获取通道的工作状态 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_LINK_STATUS
91xxHF-ST系列 | 获取通道视频输入图像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_VIDEO_INPUT_EFFECT
91xxHF-ST系列 | 设置通道视频输入图像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_VIDEO_INPUT_EFFECT


81xx/71xx/72xx/73xx系列网络硬盘录像机功能接口介绍

81xx/71xx/72xx/73xx系列网络硬盘录像机除通用接口的功能外，还支持以下接口的功能，包括预览、视频数据获取、录像文件查找、回放和下载、录像文件锁定和备份、手动录像、报警上传、语音对讲、硬盘管理和远程参数配置等。

设备型号 | 功能 | 接口 | 相关参数
预览相关功能 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置播放显示模式 | NET_DVR_SetShowMode |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 主码流动态产生一个关键帧 | NET_DVR_MakeKeyFrame |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 子码流动态产生一个关键帧 | NET_DVR_MakeKeyFrameSub | DS-81xxHS-S、DS-81xxHL-S、DS-71xxH-S系列V3.1（含）以上支持
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 实时预览 | NET_DVR_RealPlay_V30 | DS-81xxHS-S、DS-81xxHL、DS-71xxH-S系列V3.1（含）以上支持子码流预览
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 停止预览 | NET_DVR_StopRealPlay |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取预览时用来解码和显示的播放器句柄 | NET_DVR_GetRealPlayerIndex |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取预览视频显示参数 | NET_DVR_ClientGetVideoEffect |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置预览视频显示参数 | NET_DVR_ClientSetVideoEffect |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 预览画面叠加字符和图像 | NET_DVR_RigisterDrawFun |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置播放库的帧缓冲区个数 | NET_DVR_SetPlayerBufNumber |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置解码时丢弃B帧的个数 | NET_DVR_ThrowBFrame |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置声音播放模式 | NET_DVR_SetAudioMode | DS-81xxHS-S系列设备不支持
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 独占声卡模式下开启声音 | NET_DVR_OpenSound | DS-81xxHS-S系列设备不支持
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 独占声卡模式下关闭声音 | NET_DVR_CloseSound | DS-81xxHS-S系列设备不支持
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 共享声卡模式下开启声音 | NET_DVR_OpenSoundShare | DS-81xxHS-S系列设备不支持
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 共享声卡模式下关闭声音 | NET_DVR_CloseSoundShare | DS-81xxHS-S系列设备不支持
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 调节播放音量 | NET_DVR_Volume | DS-81xxHS-S系列设备不支持
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 初始化系统中的显示设备 | NET_DVR_InitDDrawDevice |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 释放显示设备占用的资源 | NET_DVR_ReleaseDDrawDevice |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取系统的显示设备的数量 | NET_DVR_GetDDrawDeviceTotalNums |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置播放窗口所使用的显卡 | NET_DVR_SetDDrawDevice |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 注册回调函数，捕获实时码流数据 | NET_DVR_SetRealDataCallBack |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 注册回调函数，捕获实时码流数据（标准码流） | NET_DVR_SetStandardDataCallBack |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 捕获数据并存放到指定的文件中 | NET_DVR_SaveRealData |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 停止数据捕获 | NET_DVR_StopSaveRealData |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 单帧数据捕获并保存成BMP位图 | NET_DVR_CapturePicture |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 单帧数据捕获并保存成JPEG图 | NET_DVR_CaptureJPEGPicture |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 单帧数据捕获并保存成JPEG存放在指定的内存空间中 | NET_DVR_CaptureJPEGPicture_NEW |
录像文件操作的相关功能 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 根据文件类型、时间查找设备录像文件 | NET_DVR_FindFile_V30 | NET_DVR_FILECOND（不支持带卡号的查询）
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 逐个获取查找到的文件信息 | NET_DVR_FindNextFile_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 关闭文件查找，释放资源 | NET_DVR_FindClose_V30 |
回放录像文件及相关 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 按文件名回放录像文件 | NET_DVR_PlayBackByName |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 按时间回放录像文件 | NET_DVR_PlayBackByTime |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 控制录像回放的状态 | NET_DVR_PlayBackControl_V40 | NET_DVR_PLAYSETTIME控制不支持 NET_DVR_PLAYGETTOTALLEN控制不支持
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 停止回放录像文件 | NET_DVR_StopPlayBack |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 捕获回放的录像数据，并保存成文件 | NET_DVR_PlayBackSaveData |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 停止保存录象数据 | NET_DVR_StopPlayBackSave |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 注册回调函数，捕获录像数据 | NET_DVR_SetPlayDataCallBack |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取录像回放时显示的OSD时间 | NET_DVR_GetPlayBackOsdTime |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 录像回放时抓图，并保存在文件中 | NET_DVR_PlayBackCaptureFile |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 刷新显示回放窗口 | NET_DVR_RefreshPlay |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取回放时用来解码显示的播放库句柄 | NET_DVR_GetPlayBackPlayerIndex |
录像文件下载及相关 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 按文件名下载录像文件 | NET_DVR_GetFileByName |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 按时间下载录像文件 | NET_DVR_GetFileByTime |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 控制录像下载的状态 | NET_DVR_PlayBackControl |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 停止下载录像文件 | NET_DVR_StopGetFile |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取当前下载录像文件的进度 | NET_DVR_GetDownloadPos |
录像文件锁定与解锁 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 按文件名锁定录像文件 | NET_DVR_LockFileByName |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 按文件名解锁录像文件 | NET_DVR_UnlockFileByName |
手动录像 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 远程手动启动设备录像 | NET_DVR_StartDVRRecord |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 远程手动停止设备录像 | NET_DVR_StopDVRRecord |
布防、撤防和监听 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 启动监听，接收设备主动上传的报警等信息（支持多线程） | NET_DVR_StartListen_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 停止监听（支持多线程） | NET_DVR_StopListen_V30 |
远程面板控制 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 远程控制面板上的按键 | NET_DVR_ClickKey |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 禁用设备本地面板控制 | NET_DVR_LockPanel |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 恢复设备本地面板控制 | NET_DVR_UnLockPanel |
云台控制 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 云台控制操作(需先启动图象预览) | NET_DVR_PTZControl |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 云台控制操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZControl好，RTSP预览时不支持此功能） | NET_DVR_PTZControl_EX |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 云台控制操作(不用启动图象预览) | NET_DVR_PTZControl_Other |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 带速度的云台控制操作(需先启动图象预览) | NET_DVR_PTZControlWithSpeed |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 带速度的云台控制操作(不用启动图象预览) | NET_DVR_PTZControlWithSpeed_Other |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 云台预置点操作（需先启动预览） | NET_DVR_PTZPreset |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 云台预置点操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZPreset好，RTSP预览时不支持此功能） | NET_DVR_PTZPreset_EX |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 云台预置点操作 | NET_DVR_PTZPreset_Other |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 云台巡航操作，需先启动预览 | NET_DVR_PTZCruise |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 云台巡航操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZCruise好，RTSP预览时不支持此功能） | NET_DVR_PTZCruise_EX |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 云台巡航操作 | NET_DVR_PTZCruise_Other |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 云台轨迹操作，需先启动预览 | NET_DVR_PTZTrack |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 云台轨迹操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZTrack好，RTSP预览时不支持此功能） | NET_DVR_PTZTrack_EX |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 云台轨迹操作 | NET_DVR_PTZTrack_Other |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 透明云台操作，需先启动预览 | NET_DVR_TransPTZ |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 透明云台操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_TransPTZ好，RTSP预览时不支持此功能） | NET_DVR_TransPTZ_EX |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 透明云台操作 | NET_DVR_TransPTZ_Other |
语音对讲、转发及广播 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 启动语音对讲 | NET_DVR_StartVoiceCom_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置语音对讲客户端的音量 | NET_DVR_SetVoiceComClientVolume |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 启动语音转发，获取编码后的音频数据 | NET_DVR_StartVoiceCom_MR_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 转发语音数据 | NET_DVR_VoiceComSendData |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 启动语音广播的PC端声音捕获 | NET_DVR_ClientAudioStart_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 添加设备的某个语音通道到可以接收PC端声音的广播组 | NET_DVR_AddDVR_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 从可接收PC机声音的广播组里删除该设备的语音通道 | NET_DVR_DelDVR_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 停止语音广播的PC端声音捕获 | NET_DVR_ClientAudioStop |
透明通道 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 建立透明通道 | NET_DVR_SerialStart |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 通过透明通道向设备串口发送数据 | NET_DVR_SerialSend |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 断开透明通道 | NET_DVR_SerialStop |
向串口发送数据 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 直接向串口发送数据，不需要建立透明通道 | NET_DVR_SendToSerialPort |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 直接向232串口发送数据，不需要建立透明通道 | NET_DVR_SendTo232Port |
硬盘管理 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 远程格式化设备硬盘 | NET_DVR_FormatDisk |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取格式化硬盘的进度 | NET_DVR_GetFormatProgress |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 关闭格式化硬盘句柄，释放资源 | NET_DVR_CloseFormatHandle |
设备维护管理 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 远程升级 | NET_DVR_Upgrade |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 查找设备的日志信息（可搜索带S.M.A.R.T信息的日志） | NET_DVR_FindDVRLog_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 逐条获取查找到的日志信息 | NET_DVR_FindNextLog_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 释放查找日志的资源 | NET_DVR_FindLogClose_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 恢复设备默认参数 | NET_DVR_RestoreConfig |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 导出配置文件 | NET_DVR_GetConfigFile |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 导入配置文件 | NET_DVR_SetConfigFile_EX |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 重启设备 | NET_DVR_RebootDVR |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取设备参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置设备参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取网络参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取图像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置图像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取压缩参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置压缩参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取录像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RECORD_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置录像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RECORD_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取（云台）解码器参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置（云台）解码器参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取232串口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置232串口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取报警输入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置报警输入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取报警输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置报警输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取本地预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置本地预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取辅助预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置辅助预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取视频输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置视频输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取异常参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置异常参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取时区和夏时制参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置时区和夏时制参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取叠加字符参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SHOWSTRING_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置叠加字符参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SHOWSTRING_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取报警触发辅助输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置报警触发辅助输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取网络应用(NTP/DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置网络应用(NTP/DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取网络应用(NTP)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NTPPARA
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置网络应用(NTP)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NTPPARA
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取网络应用(DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置网络应用(DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取网络应用(EMAIL)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置网络应用(EMAIL)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取NFS（网络文件系统）参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NFSCFG
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置NFS（网络文件系统）参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NFSCFG
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取硬盘管理参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HDCFG
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置硬盘管理参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HDCFG
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取盘组管理参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HDGROUP_CFG
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置盘组管理参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HDGROUP_CFG
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取语音对讲音频参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSION_AUDIO
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置语音对讲音频参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSION_AUDIO
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取网络硬盘接入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NET_DISKCFG
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置网络硬盘接入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NET_DISKCFG
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取设备报警输出 | NET_DVR_GetAlarmOut_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置设备报警输出 | NET_DVR_SetAlarmOut |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取设备支持的云台协议 | NET_DVR_GetPTZProtocol |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG_V30 |
DS-81xx、DS-71xx、DS-72xx、DS-73xx系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG |

以下给出设备支持的编码类型和封装格式

设备型号 | 封装格式 | 编码类型 | 备注
DS-71xx | PS | 标准H264 |
DS-81xx | PS | 标准H264 |


网络硬盘录像机(DS-80xx系列设备)功能接口介绍

客户端SDK开发使用手册

DS-80xx系列设备功能接口介绍

DS-80xx系列设备除通用接口的功能外，还支持以下接口的功能，包括预览、视频数据获取、录像文件查找、回放和下载、手动录像、报警上传、语音对讲和远程参数配置等。

设备型号 | 功能 | 接口 | 相关参数
预览相关功能 |  |  |
DS-80xx系列设备 | 设置播放显示模式 | NET_DVR_SetShowMode |
DS-80xx系列设备 | 主码流动态产生一个关键帧 | NET_DVR_MakeKeyFrame |
DS-80xx系列设备 | 子码流动态产生一个关键帧 | NET_DVR_MakeKeyFrameSub |
DS-80xx系列设备 | 实时预览 | NET_DVR_RealPlay_V30 |
DS-80xx系列设备 | 停止预览 | NET_DVR_StopRealPlay |
DS-80xx系列设备 | 获取预览时用来解码和显示的播放器句柄 | NET_DVR_GetRealPlayerIndex |
DS-80xx系列设备 | 获取预览视频显示参数 | NET_DVR_ClientGetVideoEffect |
DS-80xx系列设备 | 设置预览视频显示参数 | NET_DVR_ClientSetVideoEffect |
DS-80xx系列设备 | 预览画面叠加字符和图像 | NET_DVR_RigisterDrawFun |
DS-80xx系列设备 | 设置播放库的帧缓冲区个数 | NET_DVR_SetPlayerBufNumber |
DS-80xx系列设备 | 设置解码时丢弃B帧的个数 | NET_DVR_ThrowBFrame |
DS-80xx系列设备 | 设置声音播放模式 | NET_DVR_SetAudioMode |
DS-80xx系列设备 | 独占声卡模式下开启声音 | NET_DVR_OpenSound |
DS-80xx系列设备 | 独占声卡模式下关闭声音 | NET_DVR_CloseSound |
DS-80xx系列设备 | 共享声卡模式下开启声音 | NET_DVR_OpenSoundShare |
DS-80xx系列设备 | 共享声卡模式下关闭声音 | NET_DVR_CloseSoundShare |
DS-80xx系列设备 | 调节播放音量 | NET_DVR_Volume |
DS-80xx系列设备 | 初始化系统中的显示设备 | NET_DVR_InitDDrawDevice |
DS-80xx系列设备 | 释放显示设备占用的资源 | NET_DVR_ReleaseDDrawDevice |
DS-80xx系列设备 | 获取系统的显示设备的数量 | NET_DVR_GetDDrawDeviceTotalNums |
DS-80xx系列设备 | 设置播放窗口所使用的显卡 | NET_DVR_SetDDrawDevice |
DS-80xx系列设备 | 注册回调函数，捕获实时码流数据 | NET_DVR_SetRealDataCallBack |
DS-80xx系列设备 | 注册回调函数，捕获实时码流数据（标准码流） | NET_DVR_SetStandardDataCallBack |
DS-80xx系列设备 | 捕获数据并存放到指定的文件中 | NET_DVR_SaveRealData |
DS-80xx系列设备 | 停止数据捕获 | NET_DVR_StopSaveRealData |
DS-80xx系列设备 | 单帧数据捕获并保存成BMP位图 | NET_DVR_CapturePicture |
DS-80xx系列设备 | 单帧数据捕获并保存成JPEG图 | NET_DVR_CaptureJPEGPicture |
DS-80xx系列设备 | 单帧数据捕获并保存成JPEG存放在指定的内存空间中 | NET_DVR_CaptureJPEGPicture_NEW |
录像文件操作的相关功能 |  |  |
DS-80xx系列设备 | 根据文件类型、时间查找设备录像文件 | NET_DVR_FindFile_V30 | NET_DVR_FILECOND 不支持带卡号和锁定录像文件的查询
DS-80xx系列设备 | 逐个获取查找到的文件信息 | NET_DVR_FindNextFile_V30 |
DS-80xx系列设备 | 关闭文件查找，释放资源 | NET_DVR_FindClose_V30 |
回放录像文件及相关 |  |  |
DS-80xx系列设备 | 按文件名回放录像文件 | NET_DVR_PlayBackByName |
DS-80xx系列设备 | 按时间回放录像文件 | NET_DVR_PlayBackByTime |
DS-80xx系列设备 | 控制录像回放的状态 | NET_DVR_PlayBackControl_V40 | 不支持控制命令：NET_DVR_PLAYSETTIME、 NET_DVR_PLAYGETTOTALLEN
DS-80xx系列设备 | 停止回放录像文件 | NET_DVR_StopPlayBack |
DS-80xx系列设备 | 捕获回放的录像数据，并保存成文件 | NET_DVR_PlayBackSaveData |
DS-80xx系列设备 | 停止保存录象数据 | NET_DVR_StopPlayBackSave |
DS-80xx系列设备 | 注册回调函数，捕获录像数据 | NET_DVR_SetPlayDataCallBack |
DS-80xx系列设备 | 获取录像回放时显示的OSD时间 | NET_DVR_GetPlayBackOsdTime |
DS-80xx系列设备 | 录像回放时抓图，并保存在文件中 | NET_DVR_PlayBackCaptureFile |
DS-80xx系列设备 | 刷新显示回放窗口 | NET_DVR_RefreshPlay |
DS-80xx系列设备 | 获取回放时用来解码显示的播放库句柄 | NET_DVR_GetPlayBackPlayerIndex |
录像文件下载及相关 |  |  |
DS-80xx系列设备 | 按文件名下载录像文件 | NET_DVR_GetFileByName |
DS-80xx系列设备 | 按时间下载录像文件 | NET_DVR_GetFileByTime |
DS-80xx系列设备 | 控制录像下载的状态 | NET_DVR_PlayBackControl |
DS-80xx系列设备 | 停止下载录像文件 | NET_DVR_StopGetFile |
DS-80xx系列设备 | 获取当前下载录像文件的进度 | NET_DVR_GetDownloadPos |
手动录像 |  |  |
DS-80xx系列设备 | 远程手动启动设备录像 | NET_DVR_StartDVRRecord |
DS-80xx系列设备 | 远程手动停止设备录像 | NET_DVR_StopDVRRecord |
布防、撤防和监听 |  |  |
DS-80xx系列设备 | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 | 只支持COMM_ALARM： NET_DVR_ALARMINFO
DS-80xx系列设备 | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
DS-80xx系列设备 | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
DS-80xx系列设备 | 启动监听，接收设备主动上传的报警等信息（支持多线程） | NET_DVR_StartListen_V30 |
DS-80xx系列设备 | 停止监听（支持多线程） | NET_DVR_StopListen_V30 |
云台控制 |  |  |
DS-80xx系列设备 | 云台控制操作(需先启动图象预览) | NET_DVR_PTZControl |
DS-80xx系列设备 | 云台控制操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZControl好，RTSP预览时不支持此功能） | NET_DVR_PTZControl_EX |
DS-80xx系列设备 | 云台控制操作(不用启动图象预览) | NET_DVR_PTZControl_Other |
DS-80xx系列设备 | 带速度的云台控制操作(需先启动图象预览) | NET_DVR_PTZControlWithSpeed |
DS-80xx系列设备 | 带速度的云台控制操作(不用启动图象预览) | NET_DVR_PTZControlWithSpeed_Other |
DS-80xx系列设备 | 云台预置点操作（需先启动预览） | NET_DVR_PTZPreset |
DS-80xx系列设备 | 云台预置点操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZPreset好，RTSP预览时不支持此功能） | NET_DVR_PTZPreset_EX |
DS-80xx系列设备 | 云台预置点操作 | NET_DVR_PTZPreset_Other |
DS-80xx系列设备 | 云台巡航操作，需先启动预览 | NET_DVR_PTZCruise |
DS-80xx系列设备 | 云台巡航操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZCruise好，RTSP预览时不支持此功能） | NET_DVR_PTZCruise_EX |
DS-80xx系列设备 | 云台巡航操作 | NET_DVR_PTZCruise_Other |
DS-80xx系列设备 | 云台轨迹操作，需先启动预览 | NET_DVR_PTZTrack |
DS-80xx系列设备 | 云台轨迹操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZTrack好，RTSP预览时不支持此功能） | NET_DVR_PTZTrack_EX |
DS-80xx系列设备 | 云台轨迹操作 | NET_DVR_PTZTrack_Other |
DS-80xx系列设备 | 透明云台操作，需先启动预览 | NET_DVR_TransPTZ |
DS-80xx系列设备 | 透明云台操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_TransPTZ好，RTSP预览时不支持此功能） | NET_DVR_TransPTZ_EX |
DS-80xx系列设备 | 透明云台操作 | NET_DVR_TransPTZ_Other |
语音对讲、转发及广播 |  |  |
DS-80xx系列设备 | 启动语音对讲 | NET_DVR_StartVoiceCom_V30 |
DS-80xx系列设备 | 设置语音对讲客户端的音量 | NET_DVR_SetVoiceComClientVolume |
DS-80xx系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
DS-80xx系列设备 | 启动语音转发，获取编码后的音频数据 | NET_DVR_StartVoiceCom_MR_V30 |
DS-80xx系列设备 | 转发语音数据 | NET_DVR_VoiceComSendData |
DS-80xx系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
DS-80xx系列设备 | 启动语音广播的PC端声音捕获 | NET_DVR_ClientAudioStart_V30 |
DS-80xx系列设备 | 添加设备的某个语音通道到可以接收PC端声音的广播组 | NET_DVR_AddDVR_V30 |
DS-80xx系列设备 | 从可接收PC机声音的广播组里删除该设备的语音通道 | NET_DVR_DelDVR_V30 |
DS-80xx系列设备 | 停止语音广播的PC端声音捕获 | NET_DVR_ClientAudioStop |
透明通道 |  |  |
DS-80xx系列设备 | 建立透明通道 | NET_DVR_SerialStart |
DS-80xx系列设备 | 通过透明通道向设备串口发送数据 | NET_DVR_SerialSend |
DS-80xx系列设备 | 断开透明通道 | NET_DVR_SerialStop |
向串口发送数据 |  |  |
DS-80xx系列设备 | 直接向串口发送数据，不需要建立透明通道 | NET_DVR_SendToSerialPort |
DS-80xx系列设备 | 直接向232串口发送数据，不需要建立透明通道 | NET_DVR_SendTo232Port |
硬盘管理 |  |  |
DS-80xx系列设备 | 远程格式化设备硬盘 | NET_DVR_FormatDisk |
DS-80xx系列设备 | 获取格式化硬盘的进度 | NET_DVR_GetFormatProgress |
DS-80xx系列设备 | 关闭格式化硬盘句柄，释放资源 | NET_DVR_CloseFormatHandle |
设备维护管理 |  |  |
DS-80xx系列设备 | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
DS-80xx系列设备 | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
DS-80xx系列设备 | 远程升级 | NET_DVR_Upgrade |
DS-80xx系列设备 | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
DS-80xx系列设备 | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
DS-80xx系列设备 | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
DS-80xx系列设备 | 查找设备的日志信息（可搜索带S.M.A.R.T信息的日志） | NET_DVR_FindDVRLog_V30 |
DS-80xx系列设备 | 逐条获取查找到的日志信息 | NET_DVR_FindNextLog_V30 |
DS-80xx系列设备 | 释放查找日志的资源 | NET_DVR_FindLogClose_V30 |
DS-80xx系列设备 | 恢复设备默认参数 | NET_DVR_RestoreConfig |
DS-80xx系列设备 | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
DS-80xx系列设备 | 导出配置文件 | NET_DVR_GetConfigFile_EX |
DS-80xx系列设备 | 导出配置文件 | NET_DVR_GetConfigFile |
DS-80xx系列设备 | 导入配置文件 | NET_DVR_SetConfigFile_EX |
DS-80xx系列设备 | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
DS-80xx系列设备 | 重启设备 | NET_DVR_RebootDVR |
DS-80xx系列设备 | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
DS-80xx系列设备 | 设置设备参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40 不支持byZeroChanNum、bySupport、byEsataUseage、byIPCPlug
DS-80xx系列设备 | 设置设备参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40 不支持byZeroChanNum、bySupport、byEsataUseage、byIPCPlug
DS-80xx系列设备 | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
DS-80xx系列设备 | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
DS-80xx系列设备 | 获取网络参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
DS-80xx系列设备 | 设置网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
DS-80xx系列设备 | 获取图像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
DS-80xx系列设备 | 设置图像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
DS-80xx系列设备 | 获取压缩参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
DS-80xx系列设备 | 设置压缩参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
DS-80xx系列设备 | 获取录像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RECORD_V30
DS-80xx系列设备 | 设置录像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RECORD_V30 不支持录像过期时间、冗余录像的设置
DS-80xx系列设备 | 获取（云台）解码器参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
DS-80xx系列设备 | 设置（云台）解码器参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
DS-80xx系列设备 | 获取232串口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
DS-80xx系列设备 | 设置232串口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
DS-80xx系列设备 | 获取报警输入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
DS-80xx系列设备 | 设置报警输入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
DS-80xx系列设备 | 获取报警输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
DS-80xx系列设备 | 设置报警输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
DS-80xx系列设备 | 获取本地预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-80xx系列设备 | 设置本地预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30 byPreviewNumber、wSwitchTime、bySwitchSeq设置无效
DS-80xx系列设备 | 获取辅助预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-80xx系列设备 | 设置辅助预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-80xx系列设备 | 获取视频输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30 不支持参数 struVGAPara、struMatrixPara
DS-80xx系列设备 | 设置视频输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30 不支持参数 struVGAPara、struMatrixPara
DS-80xx系列设备 | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
DS-80xx系列设备 | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
DS-80xx系列设备 | 获取异常参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
DS-80xx系列设备 | 设置异常参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
DS-80xx系列设备 | 获取时区和夏时制参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
DS-80xx系列设备 | 设置时区和夏时制参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
DS-80xx系列设备 | 获取叠加字符参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SHOWSTRING_V30
DS-80xx系列设备 | 设置叠加字符参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SHOWSTRING_V30
DS-80xx系列设备 | 获取网络应用(NTP/DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
DS-80xx系列设备 | 设置网络应用(NTP/DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
DS-80xx系列设备 | 获取网络应用(NTP)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NTPPARA
DS-80xx系列设备 | 设置网络应用(NTP)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NTPPARA
DS-80xx系列设备 | 获取网络应用(DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
DS-80xx系列设备 | 设置网络应用(DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
DS-80xx系列设备 | 获取网络应用(EMAIL)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
DS-80xx系列设备 | 设置网络应用(EMAIL)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
DS-80xx系列设备 | 获取NFS（网络文件系统）参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NFSCFG
DS-80xx系列设备 | 设置NFS（网络文件系统）参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NFSCFG
DS-80xx系列设备 | 获取硬盘管理参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HDCFG
DS-80xx系列设备 | 设置硬盘管理参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HDCFG
DS-80xx系列设备 | 获取语音对讲音频参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSION_AUDIO
DS-80xx系列设备 | 设置语音对讲音频参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSION_AUDIO
DS-80xx系列设备 | 获取IP监控设备无线参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_WIFI_CFG 带无线WIFI功能的IPC支持
DS-80xx系列设备 | 设置IP监控设备无线参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_WIFI_CFG 带无线WIFI功能的IPC支持
DS-80xx系列设备 | 获取IP监控设备网口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_WIFI_WORKMODE 带无线WIFI功能的IPC支持
DS-80xx系列设备 | 设置IP监控设备网口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_WIFI_WORKMODE 带无线WIFI功能的IPC支持
DS-80xx系列设备 | 获取网络硬盘接入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NET_DISKCFG
DS-80xx系列设备 | 设置网络硬盘接入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NET_DISKCFG
DS-80xx系列设备 | 获取CCD参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_CAMERAPARAMCFG
DS-80xx系列设备 | 设置CCD参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_CAMERAPARAMCFG
DS-80xx系列设备 | 获取设备报警输出 | NET_DVR_GetAlarmOut |
DS-80xx系列设备 | 获取设备报警输出 | NET_DVR_GetAlarmOut_V30 |
DS-80xx系列设备 | 设置设备报警输出 | NET_DVR_SetAlarmOut |
DS-80xx系列设备 | 获取RTSP协议参数 | NET_DVR_GetRtspConfig |
DS-80xx系列设备 | 设置RTSP协议参数 | NET_DVR_SetRtspConfig |
DS-80xx系列设备 | 获取设备支持的云台协议 | NET_DVR_GetPTZProtocol |
DS-80xx系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG |
DS-80xx系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG_V30 | 不支持辅口缩放 dwMinorScale
DS-80xx系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG |
DS-80xx系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG_V30 | 不支持辅口缩放dwMinorScale
获取IPC协议列表 |  |  |
获取设备能力集 |  |  |
DS-80xx系列设备 | 获取设备能力集 | NET_DVR_GetDeviceAbility | 支持的能力类型：DEVICE_ALL_ABILITY、IPC_FRONT_PARAMETER、DEVICE_SOFTHARDWARE_ABILITY、DEVICE_NETWORK_ABILITY、DEVICE_ENCODE_ALL_ABILITY、DEVICE_ENCODE_CURRENT、 支持的IPC： 886、876、877、976；754、854、883；863、893、833、8153、853、763、793、733、7153、753等

以下给出设备支持的编码类型和封装格式

设备型号 | 封装格式 | 编码类型 | 备注
DS-80xx | 私有 | 私有 |


95系列NVR功能接口介绍

95系列NVR功能接口介绍除通用接口的功能外，还支持以下接口的功能，包括预览、视频数据获取、录像文件查找、回放和下载、录像文件锁定和备份、手动录像、报警上传、语音对讲、硬盘管理和远程参数配置等。

设备型号 | 功能 | 接口 | 相关参数
预览相关功能 |  |  |
DS-95xxN-S系列设备 | 设置播放显示模式 | NET_DVR_SetShowMode |
DS-95xxN-S系列设备 | 主码流动态产生一个关键帧 | NET_DVR_MakeKeyFrame |
DS-95xxN-S系列设备 | 子码流动态产生一个关键帧 | NET_DVR_MakeKeyFrameSub |
DS-95xxN-S系列设备 | 实时预览 | NET_DVR_RealPlay_V30 |
DS-95xxN-S系列设备 | 停止预览 | NET_DVR_StopRealPlay |
DS-95xxN-S系列设备 | 获取预览时用来解码和显示的播放器句柄 | NET_DVR_GetRealPlayerIndex |
DS-95xxN-S系列设备 | 获取预览视频显示参数 | NET_DVR_ClientGetVideoEffect |
DS-95xxN-S系列设备 | 设置预览视频显示参数 | NET_DVR_ClientSetVideoEffect |
DS-95xxN-S系列设备 | 预览画面叠加字符和图像 | NET_DVR_RigisterDrawFun |
DS-95xxN-S系列设备 | 设置播放库的帧缓冲区个数 | NET_DVR_SetPlayerBufNumber |
DS-95xxN-S系列设备 | 设置解码时丢弃B帧的个数 | NET_DVR_ThrowBFrame |
DS-95xxN-S系列设备 | 设置声音播放模式 | NET_DVR_SetAudioMode |
DS-95xxN-S系列设备 | 独占声卡模式下开启声音 | NET_DVR_OpenSound |
DS-95xxN-S系列设备 | 独占声卡模式下关闭声音 | NET_DVR_CloseSound |
DS-95xxN-S系列设备 | 共享声卡模式下开启声音 | NET_DVR_OpenSoundShare |
DS-95xxN-S系列设备 | 共享声卡模式下关闭声音 | NET_DVR_CloseSoundShare |
DS-95xxN-S系列设备 | 调节播放音量 | NET_DVR_Volume |
DS-95xxN-S系列设备 | 初始化系统中的显示设备 | NET_DVR_InitDDrawDevice |
DS-95xxN-S系列设备 | 释放显示设备占用的资源 | NET_DVR_ReleaseDDrawDevice |
DS-95xxN-S系列设备 | 获取系统的显示设备的数量 | NET_DVR_GetDDrawDeviceTotalNums |
DS-95xxN-S系列设备 | 设置播放窗口所使用的显卡 | NET_DVR_SetDDrawDevice |
DS-95xxN-S系列设备 | 注册回调函数，捕获实时码流数据 | NET_DVR_SetRealDataCallBack |
DS-95xxN-S系列设备 | 注册回调函数，捕获实时码流数据（标准码流） | NET_DVR_SetStandardDataCallBack |
DS-95xxN-S系列设备 | 捕获数据并存放到指定的文件中 | NET_DVR_SaveRealData |
DS-95xxN-S系列设备 | 停止数据捕获 | NET_DVR_StopSaveRealData |
DS-95xxN-S系列设备 | 单帧数据捕获并保存成BMP位图 | NET_DVR_CapturePicture |
录像文件操作的相关功能 |  |  |
DS-95xxN-S系列设备 | 根据文件类型、时间查找设备录像文件 | NET_DVR_FindFile_V30 | NET_DVR_FILECOND（不支持带卡号的查询）
DS-95xxN-S系列设备 | 逐个获取查找到的文件信息 | NET_DVR_FindNextFile_V30 |
DS-95xxN-S系列设备 | 关闭文件查找，释放资源 | NET_DVR_FindClose_V30 |
按事件查找录像文件的相关功能 |  |  |
DS-95xxN-S系列设备 | 根据事件查找录像文件 | NET_DVR_FindFileByEvent |
DS-95xxN-S系列设备 | 逐个获取查找到的文件信息 | NET_DVR_FindNextEvent |
DS-95xxN-S系列设备 | 关闭文件查找，释放资源 | NET_DVR_FindClose_V30 |
区域移动侦测智能搜索 |  |  |
DS-95xxN-S系列设备 | 开始智能搜索 | NET_DVR_SmartSearch |
DS-95xxN-S系列设备 | 获取区域内的下一个移动侦测信息 | NET_DVR_SearchNextInfo |
DS-95xxN-S系列设备 | 停止智能搜索 | NET_DVR_StopSearch |
回放录像文件及相关 |  |  |
DS-95xxN-S系列设备 | 按文件名回放录像文件 | NET_DVR_PlayBackByName |
DS-95xxN-S系列设备 | 按时间回放录像文件 | NET_DVR_PlayBackByTime |
DS-95xxN-S系列设备 | 控制录像回放的状态 | NET_DVR_PlayBackControl_V40 |
DS-95xxN-S系列设备 | 停止回放录像文件 | NET_DVR_StopPlayBack |
DS-95xxN-S系列设备 | 捕获回放的录像数据，并保存成文件 | NET_DVR_PlayBackSaveData |
DS-95xxN-S系列设备 | 停止保存录象数据 | NET_DVR_StopPlayBackSave |
DS-95xxN-S系列设备 | 注册回调函数，捕获录像数据 | NET_DVR_SetPlayDataCallBack |
DS-95xxN-S系列设备 | 获取录像回放时显示的OSD时间 | NET_DVR_GetPlayBackOsdTime |
DS-95xxN-S系列设备 | 录像回放时抓图，并保存在文件中 | NET_DVR_PlayBackCaptureFile |
DS-95xxN-S系列设备 | 刷新显示回放窗口 | NET_DVR_RefreshPlay |
DS-95xxN-S系列设备 | 获取回放时用来解码显示的播放库句柄 | NET_DVR_GetPlayBackPlayerIndex |
录像文件下载及相关 |  |  |
DS-95xxN-S系列设备 | 按文件名下载录像文件 | NET_DVR_GetFileByName |
DS-95xxN-S系列设备 | 按时间下载录像文件 | NET_DVR_GetFileByTime |
DS-95xxN-S系列设备 | 控制录像下载的状态 | NET_DVR_PlayBackControl |
DS-95xxN-S系列设备 | 停止下载录像文件 | NET_DVR_StopGetFile |
DS-95xxN-S系列设备 | 获取当前下载录像文件的进度 | NET_DVR_GetDownloadPos |
录像文件锁定与解锁 |  |  |
DS-95xxN-S系列设备 | 按文件名锁定录像文件 | NET_DVR_LockFileByName |
DS-95xxN-S系列设备 | 按文件名解锁录像文件 | NET_DVR_UnlockFileByName |
录像文件备份 |  |  |
DS-95xxN-S系列设备 | 获取设备磁盘列表 | NET_DVR_GetDiskList |
DS-95xxN-S系列设备 | 按文件名备份录像文件 | NET_DVR_BackupByName |
DS-95xxN-S系列设备 | 按时间段备份录像文件 | NET_DVR_BackupByTime |
DS-95xxN-S系列设备 | 获取文件备份的进度 | NET_DVR_GetBackupProgress |
DS-95xxN-S系列设备 | 停止文件备份 | NET_DVR_StopBackup |
手动录像 |  |  |
DS-95xxN-S系列设备 | 远程手动启动设备录像 | NET_DVR_StartDVRRecord |
DS-95xxN-S系列设备 | 远程手动停止设备录像 | NET_DVR_StopDVRRecord |
布防、撤防和监听 |  |  |
DS-95xxN-S系列设备 | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 |
DS-95xxN-S系列设备 | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
DS-95xxN-S系列设备 | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
DS-95xxN-S系列设备 | 启动监听，接收设备主动上传的报警等信息（支持多线程） | NET_DVR_StartListen_V30 |
DS-95xxN-S系列设备 | 停止监听（支持多线程） | NET_DVR_StopListen_V30 |
远程面板控制 |  |  |
DS-95xxN-S系列设备 | 远程控制面板上的按键 | NET_DVR_ClickKey |
DS-95xxN-S系列设备 | 禁用设备本地面板控制 | NET_DVR_LockPanel |
DS-95xxN-S系列设备 | 恢复设备本地面板控制 | NET_DVR_UnLockPanel |
云台控制 |  |  |
DS-95xxN-S系列设备 | 云台控制操作(需先启动图象预览) | NET_DVR_PTZControl |
DS-95xxN-S系列设备 | 云台控制操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZControl好，RTSP预览时不支持此功能） | NET_DVR_PTZControl_EX |
DS-95xxN-S系列设备 | 云台控制操作(不用启动图象预览) | NET_DVR_PTZControl_Other |
DS-95xxN-S系列设备 | 带速度的云台控制操作(需先启动图象预览) | NET_DVR_PTZControlWithSpeed |
DS-95xxN-S系列设备 | 带速度的云台控制操作(不用启动图象预览) | NET_DVR_PTZControlWithSpeed_Other |
DS-95xxN-S系列设备 | 云台预置点操作（需先启动预览） | NET_DVR_PTZPreset |
DS-95xxN-S系列设备 | 云台预置点操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZPreset好，RTSP预览时不支持此功能） | NET_DVR_PTZPreset_EX |
DS-95xxN-S系列设备 | 云台预置点操作 | NET_DVR_PTZPreset_Other |
DS-95xxN-S系列设备 | 云台巡航操作，需先启动预览 | NET_DVR_PTZCruise |
DS-95xxN-S系列设备 | 云台巡航操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZCruise好，RTSP预览时不支持此功能） | NET_DVR_PTZCruise_EX |
DS-95xxN-S系列设备 | 云台巡航操作 | NET_DVR_PTZCruise_Other |
DS-95xxN-S系列设备 | 云台轨迹操作，需先启动预览 | NET_DVR_PTZTrack |
DS-95xxN-S系列设备 | 云台轨迹操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZTrack好，RTSP预览时不支持此功能） | NET_DVR_PTZTrack_EX |
DS-95xxN-S系列设备 | 云台轨迹操作 | NET_DVR_PTZTrack_Other |
DS-95xxN-S系列设备 | 透明云台操作，需先启动预览 | NET_DVR_TransPTZ |
DS-95xxN-S系列设备 | 透明云台操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_TransPTZ好，RTSP预览时不支持此功能） | NET_DVR_TransPTZ_EX |
DS-95xxN-S系列设备 | 透明云台操作 | NET_DVR_TransPTZ_Other |
透明通道 |  |  |
DS-95xxN-S系列设备 | 建立透明通道 | NET_DVR_SerialStart |
DS-95xxN-S系列设备 | 通过透明通道向设备串口发送数据 | NET_DVR_SerialSend |
DS-95xxN-S系列设备 | 断开透明通道 | NET_DVR_SerialStop |
向串口发送数据 |  |  |
DS-95xxN-S系列设备 | 直接向串口发送数据，不需要建立透明通道 | NET_DVR_SendToSerialPort |
DS-95xxN-S系列设备 | 直接向232串口发送数据，不需要建立透明通道 | NET_DVR_SendTo232Port |
硬盘管理 |  |  |
DS-95xxN-S系列设备 | 远程格式化设备硬盘 | NET_DVR_FormatDisk |
DS-95xxN-S系列设备 | 获取格式化硬盘的进度 | NET_DVR_GetFormatProgress |
DS-95xxN-S系列设备 | 关闭格式化硬盘句柄，释放资源 | NET_DVR_CloseFormatHandle |
设备维护管理 |  |  |
DS-95xxN-S系列设备 | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
DS-95xxN-S系列设备 | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
DS-95xxN-S系列设备 | 远程升级 | NET_DVR_Upgrade |
DS-95xxN-S系列设备 | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
DS-95xxN-S系列设备 | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
DS-95xxN-S系列设备 | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
DS-95xxN-S系列设备 | 查找设备的日志信息（可搜索带S.M.A.R.T信息的日志） | NET_DVR_FindDVRLog_V30 |
DS-95xxN-S系列设备 | 逐条获取查找到的日志信息 | NET_DVR_FindNextLog_V30 |
DS-95xxN-S系列设备 | 释放查找日志的资源 | NET_DVR_FindLogClose_V30 |
DS-95xxN-S系列设备 | 恢复设备默认参数 | NET_DVR_RestoreConfig |
DS-95xxN-S系列设备 | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
DS-95xxN-S系列设备 | 导出配置文件 | NET_DVR_GetConfigFile |
DS-95xxN-S系列设备 | 导入配置文件 | NET_DVR_SetConfigFile_EX |
DS-95xxN-S系列设备 | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
DS-95xxN-S系列设备 | 重启设备 | NET_DVR_RebootDVR |
DS-95xxN-S系列设备 | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
DS-95xxN-S系列设备 | 获取设备参数(扩展) | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
DS-95xxN-S系列设备 | 设置设备参数(扩展) | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
DS-95xxN-S系列设备 | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
DS-95xxN-S系列设备 | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
DS-95xxN-S系列设备 | 获取网络参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
DS-95xxN-S系列设备 | 设置网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
DS-95xxN-S系列设备 | 获取图像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
DS-95xxN-S系列设备 | 设置图像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
DS-95xxN-S系列设备 | 获取压缩参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
DS-95xxN-S系列设备 | 设置压缩参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
DS-95xxN-S系列设备 | 获取录像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RECORD_V30
DS-95xxN-S系列设备 | 设置录像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RECORD_V30
DS-95xxN-S系列设备 | 获取（云台）解码器参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
DS-95xxN-S系列设备 | 设置（云台）解码器参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
DS-95xxN-S系列设备 | 获取232串口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
DS-95xxN-S系列设备 | 设置232串口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
DS-95xxN-S系列设备 | 获取报警输入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
DS-95xxN-S系列设备 | 设置报警输入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
DS-95xxN-S系列设备 | 获取报警输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
DS-95xxN-S系列设备 | 设置报警输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
DS-95xxN-S系列设备 | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
DS-95xxN-S系列设备 | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
DS-95xxN-S系列设备 | 获取异常参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
DS-95xxN-S系列设备 | 设置异常参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
DS-95xxN-S系列设备 | 获取时区和夏时制参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
DS-95xxN-S系列设备 | 设置时区和夏时制参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
DS-95xxN-S系列设备 | 获取报警触发辅助输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
DS-95xxN-S系列设备 | 设置报警触发辅助输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
DS-95xxN-S系列设备 | 获取网络应用(NTP/DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
DS-95xxN-S系列设备 | 设置网络应用(NTP/DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
DS-95xxN-S系列设备 | 获取网络应用(NTP)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NTPPARA
DS-95xxN-S系列设备 | 设置网络应用(NTP)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NTPPARA
DS-95xxN-S系列设备 | 获取网络应用(DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
DS-95xxN-S系列设备 | 设置网络应用(DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
DS-95xxN-S系列设备 | 获取网络应用(EMAIL)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
DS-95xxN-S系列设备 | 设置网络应用(EMAIL)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
DS-95xxN-S系列设备 | 获取NFS（网络文件系统）参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NFSCFG
DS-95xxN-S系列设备 | 设置NFS（网络文件系统）参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NFSCFG
DS-95xxN-S系列设备 | 获取IP接入配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IPPARACFG_V31
DS-95xxN-S系列设备 | 设置IP接入配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPPARACFG_V31
DS-95xxN-S系列设备 | 获取IP报警输入接入配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IPALARMINCFG
DS-95xxN-S系列设备 | 设置IP报警输入接入配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPALARMINCFG
DS-95xxN-S系列设备 | 获取IP报警输出接入配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IPALARMOUTCFG
DS-95xxN-S系列设备 | 设置IP报警输出接入配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPALARMOUTCFG
DS-95xxN-S系列设备 | 获取硬盘管理参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HDCFG
DS-95xxN-S系列设备 | 设置硬盘管理参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HDCFG
DS-95xxN-S系列设备 | 获取盘组管理参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HDGROUP_CFG
DS-95xxN-S系列设备 | 设置盘组管理参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HDGROUP_CFG
DS-95xxN-S系列设备 | 获取网络硬盘接入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NET_DISKCFG
DS-95xxN-S系列设备 | 设置网络硬盘接入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NET_DISKCFG
DS-95xxN-S系列设备 | 获取设备报警输出 | NET_DVR_GetAlarmOut_V30 |
DS-95xxN-S系列设备 | 设置设备报警输出 | NET_DVR_SetAlarmOut |
DS-95xxN-S系列设备 | 获取设备支持的云台协议 | NET_DVR_GetPTZProtocol |
获取设备能力集 |  |  |
DS-95xxN-S系列设备 | 获取设备能力 | NET_DVR_GetDeviceAbility | 支持的能力类型有：COMPRESSIONCFG_ABILITY（压缩参数能力）
获取IPC协议列表 |  |  |
DS-95xxN-S系列设备 | 获取设备支持的IPC协议表 | NET_DVR_GetIPCProtoList |
远程扫描和修改IPC信息 |  |  |
DS-95xxN-S系列设备 | 远程扫描获取IPC信息列表 | NET_DVR_GetSadpInfoList |
DS-95xxN-S系列设备 | 远程修改IPC信息 | NET_DVR_UpdateSadpInfo |
邮件测试 |  |  |
DS-95xxN-S系列设备 | 测试按已配置的EMAIL参数能否收发成功 | NET_DVR_StartEmailTest |
DS-95xxN-S系列设备 | 获取邮件测试的进度 | NET_DVR_GetEmailTestProgress |
DS-95xxN-S系列设备 | 停止邮件测试 | NET_DVR_StopEmailTest |

以下给出设备支持的编码类型和封装格式

设备型号 | 封装格式 | 编码类型 | 备注
DS-95xx | PS | 依接入的前端决定 |


96系列NVR功能接口介绍

96系列NVR功能接口介绍除通用接口的功能外，还支持以下接口的功能，包括预览、视频数据获取、零通道预览和配置、录像文件查找、回放和下载、录像文件锁定和备份、手动录像、报警上传、语音对讲、硬盘管理和远程参数配置等。

设备型号 | 功能 | 接口 | 相关参数
预览相关功能 |  |  |
DS-96xxN-SH系列设备 | 设置播放显示模式 | NET_DVR_SetShowMode |
DS-96xxN-SH系列设备 | 主码流动态产生一个关键帧 | NET_DVR_MakeKeyFrame |
DS-96xxN-SH系列设备 | 子码流动态产生一个关键帧 | NET_DVR_MakeKeyFrameSub |
DS-96xxN-SH系列设备 | 实时预览 | NET_DVR_RealPlay_V30 |
DS-96xxN-SH系列设备 | 停止预览 | NET_DVR_StopRealPlay |
DS-96xxN-SH系列设备 | 获取预览时用来解码和显示的播放器句柄 | NET_DVR_GetRealPlayerIndex |
DS-96xxN-SH系列设备 | 获取预览视频显示参数 | NET_DVR_ClientGetVideoEffect |
DS-96xxN-SH系列设备 | 设置预览视频显示参数 | NET_DVR_ClientSetVideoEffect |
DS-96xxN-SH系列设备 | 预览画面叠加字符和图像 | NET_DVR_RigisterDrawFun |
DS-96xxN-SH系列设备 | 设置播放库的帧缓冲区个数 | NET_DVR_SetPlayerBufNumber |
DS-96xxN-SH系列设备 | 设置解码时丢弃B帧的个数 | NET_DVR_ThrowBFrame |
DS-96xxN-SH系列设备 | 设置声音播放模式 | NET_DVR_SetAudioMode |
DS-96xxN-SH系列设备 | 独占声卡模式下开启声音 | NET_DVR_OpenSound |
DS-96xxN-SH系列设备 | 独占声卡模式下关闭声音 | NET_DVR_CloseSound |
DS-96xxN-SH系列设备 | 共享声卡模式下开启声音 | NET_DVR_OpenSoundShare |
DS-96xxN-SH系列设备 | 共享声卡模式下关闭声音 | NET_DVR_CloseSoundShare |
DS-96xxN-SH系列设备 | 调节播放音量 | NET_DVR_Volume |
DS-96xxN-SH系列设备 | 初始化系统中的显示设备 | NET_DVR_InitDDrawDevice |
DS-96xxN-SH系列设备 | 释放显示设备占用的资源 | NET_DVR_ReleaseDDrawDevice |
DS-96xxN-SH系列设备 | 获取系统的显示设备的数量 | NET_DVR_GetDDrawDeviceTotalNums |
DS-96xxN-SH系列设备 | 设置播放窗口所使用的显卡 | NET_DVR_SetDDrawDevice |
DS-96xxN-SH系列设备 | 注册回调函数，捕获实时码流数据 | NET_DVR_SetRealDataCallBack |
DS-96xxN-SH系列设备 | 注册回调函数，捕获实时码流数据（标准码流） | NET_DVR_SetStandardDataCallBack |
DS-96xxN-SH系列设备 | 捕获数据并存放到指定的文件中 | NET_DVR_SaveRealData |
DS-96xxN-SH系列设备 | 停止数据捕获 | NET_DVR_StopSaveRealData |
DS-96xxN-SH系列设备 | 单帧数据捕获并保存成BMP位图 | NET_DVR_CapturePicture |
DS-96xxN-SH系列设备 | 单帧数据捕获并保存成JPEG图 | NET_DVR_CaptureJPEGPicture |
DS-96xxN-SH系列设备 | 单帧数据捕获并保存成JPEG存放在指定的内存空间中 | NET_DVR_CaptureJPEGPicture_NEW |
零通道相关功能 |  |  |
DS-96xxN-SH系列设备 | 获取零通道压缩参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZEROCHANCFG
DS-96xxN-SH系列设备 | 设置零通道压缩参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZEROCHANCFG
DS-96xxN-SH系列设备 | 获取零通道本地预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-96xxN-SH系列设备 | 设置零通道本地预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-96xxN-SH系列设备 | 获取零通道缩放参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZERO_ZOOMCFG
DS-96xxN-SH系列设备 | 设置零通道缩放参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZERO_ZOOMCFG
DS-96xxN-SH系列设备 | 开启零通道预览 | NET_DVR_ZeroStartPlay |
DS-96xxN-SH系列设备 | 停止零通道预览 | NET_DVR_ZeroStopPlay |
DS-96xxN-SH系列设备 | 零通道产生一个关键帧 | NET_DVR_ZeroMakeKeyFrame |
DS-96xxN-SH系列设备 | 零通道预览画面翻页 | NET_DVR_ZeroTurnOver |
录像文件操作的相关功能 |  |  |
DS-96xxN-SH系列设备 | 根据文件类型、时间查找设备录像文件 | NET_DVR_FindFile_V30 | NET_DVR_FILECOND（不支持带卡号的查询）
DS-96xxN-SH系列设备 | 逐个获取查找到的文件信息 | NET_DVR_FindNextFile_V30 |
DS-96xxN-SH系列设备 | 关闭文件查找，释放资源 | NET_DVR_FindClose_V30 |
按事件查找录像文件的相关功能 |  |  |
DS-96xxN-SH系列设备 | 根据事件查找录像文件 | NET_DVR_FindFileByEvent |
DS-96xxN-SH系列设备 | 逐个获取查找到的文件信息 | NET_DVR_FindNextEvent |
DS-96xxN-SH系列设备 | 关闭文件查找，释放资源 | NET_DVR_FindClose_V30 |
按区域移动侦测智能搜索功能 |  |  |
DS-96xxN-SH系列设备 | 开始智能搜索 | NET_DVR_SmartSearch |
DS-96xxN-SH系列设备 | 获取区域内的下一个移动侦测信息 | NET_DVR_SearchNextInfo |
DS-96xxN-SH系列设备 | 停止智能搜索 | NET_DVR_StopSearch |
回放录像文件及相关 |  |  |
DS-96xxN-SH系列设备 | 按文件名回放录像文件 | NET_DVR_PlayBackByName |
DS-96xxN-SH系列设备 | 按时间回放录像文件 | NET_DVR_PlayBackByTime |
DS-96xxN-SH系列设备 | 控制录像回放的状态 | NET_DVR_PlayBackControl_V40 |
DS-96xxN-SH系列设备 | 停止回放录像文件 | NET_DVR_StopPlayBack |
DS-96xxN-SH系列设备 | 捕获回放的录像数据，并保存成文件 | NET_DVR_PlayBackSaveData |
DS-96xxN-SH系列设备 | 停止保存录象数据 | NET_DVR_StopPlayBackSave |
DS-96xxN-SH系列设备 | 注册回调函数，捕获录像数据 | NET_DVR_SetPlayDataCallBack |
DS-96xxN-SH系列设备 | 获取录像回放时显示的OSD时间 | NET_DVR_GetPlayBackOsdTime |
DS-96xxN-SH系列设备 | 录像回放时抓图，并保存在文件中 | NET_DVR_PlayBackCaptureFile |
DS-96xxN-SH系列设备 | 刷新显示回放窗口 | NET_DVR_RefreshPlay |
DS-96xxN-SH系列设备 | 获取回放时用来解码显示的播放库句柄 | NET_DVR_GetPlayBackPlayerIndex |
录像文件下载及相关 |  |  |
DS-96xxN-SH系列设备 | 按文件名下载录像文件 | NET_DVR_GetFileByName |
DS-96xxN-SH系列设备 | 按时间下载录像文件 | NET_DVR_GetFileByTime |
DS-96xxN-SH系列设备 | 控制录像下载的状态 | NET_DVR_PlayBackControl |
DS-96xxN-SH系列设备 | 停止下载录像文件 | NET_DVR_StopGetFile |
DS-96xxN-SH系列设备 | 获取当前下载录像文件的进度 | NET_DVR_GetDownloadPos |
录像文件锁定与解锁 |  |  |
DS-96xxN-SH系列设备 | 按文件名锁定录像文件 | NET_DVR_LockFileByName |
DS-96xxN-SH系列设备 | 按文件名解锁录像文件 | NET_DVR_UnlockFileByName |
录像文件备份 |  |  |
DS-96xxN-SH系列设备 | 获取设备磁盘列表 | NET_DVR_GetDiskList |
DS-96xxN-SH系列设备 | 按文件名备份录像文件 | NET_DVR_BackupByName |
DS-96xxN-SH系列设备 | 按时间段备份录像文件 | NET_DVR_BackupByTime |
DS-96xxN-SH系列设备 | 获取文件备份的进度 | NET_DVR_GetBackupProgress |
DS-96xxN-SH系列设备 | 停止文件备份 | NET_DVR_StopBackup |
手动录像 |  |  |
DS-96xxN-SH系列设备 | 远程手动启动设备录像 | NET_DVR_StartDVRRecord |
DS-96xxN-SH系列设备 | 远程手动停止设备录像 | NET_DVR_StopDVRRecord |
布防、撤防和监听 |  |  |
DS-96xxN-SH系列设备 | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 |
DS-96xxN-SH系列设备 | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
DS-96xxN-SH系列设备 | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
DS-96xxN-SH系列设备 | 启动监听，接收设备主动上传的报警等信息（支持多线程） | NET_DVR_StartListen_V30 |
DS-96xxN-SH系列设备 | 停止监听（支持多线程） | NET_DVR_StopListen_V30 |
远程面板控制 |  |  |
DS-96xxN-SH系列设备 | 远程控制面板上的按键 | NET_DVR_ClickKey |
DS-96xxN-SH系列设备 | 禁用设备本地面板控制 | NET_DVR_LockPanel |
DS-96xxN-SH系列设备 | 恢复设备本地面板控制 | NET_DVR_UnLockPanel |
云台控制 |  |  |
DS-96xxN-SH系列设备 | 云台控制操作(需先启动图象预览) | NET_DVR_PTZControl |
DS-96xxN-SH系列设备 | 云台控制操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZControl好，RTSP预览时不支持此功能） | NET_DVR_PTZControl_EX |
DS-96xxN-SH系列设备 | 云台控制操作(不用启动图象预览) | NET_DVR_PTZControl_Other |
DS-96xxN-SH系列设备 | 带速度的云台控制操作(需先启动图象预览) | NET_DVR_PTZControlWithSpeed |
DS-96xxN-SH系列设备 | 带速度的云台控制操作(不用启动图象预览) | NET_DVR_PTZControlWithSpeed_Other |
DS-96xxN-SH系列设备 | 云台预置点操作（需先启动预览） | NET_DVR_PTZPreset |
DS-96xxN-SH系列设备 | 云台预置点操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZPreset好，RTSP预览时不支持此功能） | NET_DVR_PTZPreset_EX |
DS-96xxN-SH系列设备 | 云台预置点操作 | NET_DVR_PTZPreset_Other |
DS-96xxN-SH系列设备 | 云台巡航操作，需先启动预览 | NET_DVR_PTZCruise |
DS-96xxN-SH系列设备 | 云台巡航操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZCruise好，RTSP预览时不支持此功能） | NET_DVR_PTZCruise_EX |
DS-96xxN-SH系列设备 | 云台巡航操作 | NET_DVR_PTZCruise_Other |
DS-96xxN-SH系列设备 | 云台轨迹操作，需先启动预览 | NET_DVR_PTZTrack |
DS-96xxN-SH系列设备 | 云台轨迹操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZTrack好，RTSP预览时不支持此功能） | NET_DVR_PTZTrack_EX |
DS-96xxN-SH系列设备 | 云台轨迹操作 | NET_DVR_PTZTrack_Other |
DS-96xxN-SH系列设备 | 透明云台操作，需先启动预览 | NET_DVR_TransPTZ |
DS-96xxN-SH系列设备 | 透明云台操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_TransPTZ好，RTSP预览时不支持此功能） | NET_DVR_TransPTZ_EX |
DS-96xxN-SH系列设备 | 透明云台操作 | NET_DVR_TransPTZ_Other |
语音对讲、转发及广播 |  |  |
DS-96xxN-SH系列设备 | 启动语音对讲 | NET_DVR_StartVoiceCom_V30 |
DS-96xxN-SH系列设备 | 设置语音对讲客户端的音量 | NET_DVR_SetVoiceComClientVolume |
DS-96xxN-SH系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
DS-96xxN-SH系列设备 | 启动语音转发，获取编码后的音频数据 | NET_DVR_StartVoiceCom_MR_V30 |
DS-96xxN-SH系列设备 | 转发语音数据 | NET_DVR_VoiceComSendData |
DS-96xxN-SH系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
DS-96xxN-SH系列设备 | 启动语音广播的PC端声音捕获 | NET_DVR_ClientAudioStart_V30 |
DS-96xxN-SH系列设备 | 添加设备的某个语音通道到可以接收PC端声音的广播组 | NET_DVR_AddDVR_V30 |
DS-96xxN-SH系列设备 | 从可接收PC机声音的广播组里删除该设备的语音通道 | NET_DVR_DelDVR_V30 |
DS-96xxN-SH系列设备 | 停止语音广播的PC端声音捕获 | NET_DVR_ClientAudioStop |
透明通道 |  |  |
DS-96xxN-SH系列设备 | 建立透明通道 | NET_DVR_SerialStart |
DS-96xxN-SH系列设备 | 通过透明通道向设备串口发送数据 | NET_DVR_SerialSend |
DS-96xxN-SH系列设备 | 断开透明通道 | NET_DVR_SerialStop |
向串口发送数据 |  |  |
DS-96xxN-SH系列设备 | 直接向串口发送数据，不需要建立透明通道 | NET_DVR_SendToSerialPort |
DS-96xxN-SH系列设备 | 直接向232串口发送数据，不需要建立透明通道 | NET_DVR_SendTo232Port |
硬盘管理 |  |  |
DS-96xxN-SH系列设备 | 远程格式化设备硬盘 | NET_DVR_FormatDisk |
DS-96xxN-SH系列设备 | 获取格式化硬盘的进度 | NET_DVR_GetFormatProgress |
DS-96xxN-SH系列设备 | 关闭格式化硬盘句柄，释放资源 | NET_DVR_CloseFormatHandle |
设备维护管理 |  |  |
DS-96xxN-SH系列设备 | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
DS-96xxN-SH系列设备 | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
DS-96xxN-SH系列设备 | 远程升级 | NET_DVR_Upgrade |
DS-96xxN-SH系列设备 | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
DS-96xxN-SH系列设备 | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
DS-96xxN-SH系列设备 | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
DS-96xxN-SH系列设备 | 查找设备的日志信息（可搜索带S.M.A.R.T信息的日志） | NET_DVR_FindDVRLog_V30 |
DS-96xxN-SH系列设备 | 逐条获取查找到的日志信息 | NET_DVR_FindNextLog_V30 |
DS-96xxN-SH系列设备 | 释放查找日志的资源 | NET_DVR_FindLogClose_V30 |
DS-96xxN-SH系列设备 | 恢复设备默认参数 | NET_DVR_RestoreConfig |
DS-96xxN-SH系列设备 | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
DS-96xxN-SH系列设备 | 导出配置文件 | NET_DVR_GetConfigFile |
DS-96xxN-SH系列设备 | 导入配置文件 | NET_DVR_SetConfigFile_EX |
DS-96xxN-SH系列设备 | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
DS-96xxN-SH系列设备 | 重启设备 | NET_DVR_RebootDVR |
DS-96xxN-SH系列设备 | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
DS-96xxN-SH系列设备 | 获取设备参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
DS-96xxN-SH系列设备 | 设置设备参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
DS-96xxN-SH系列设备 | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
DS-96xxN-SH系列设备 | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
DS-96xxN-SH系列设备 | 获取网络参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
DS-96xxN-SH系列设备 | 设置网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
DS-96xxN-SH系列设备 | 获取图像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
DS-96xxN-SH系列设备 | 设置图像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
DS-96xxN-SH系列设备 | 获取压缩参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
DS-96xxN-SH系列设备 | 设置压缩参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
DS-96xxN-SH系列设备 | 获取录像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RECORD_V30
DS-96xxN-SH系列设备 | 设置录像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RECORD_V30
DS-96xxN-SH系列设备 | 获取（云台）解码器参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
DS-96xxN-SH系列设备 | 设置（云台）解码器参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
DS-96xxN-SH系列设备 | 获取232串口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
DS-96xxN-SH系列设备 | 设置232串口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
DS-96xxN-SH系列设备 | 获取报警输入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
DS-96xxN-SH系列设备 | 设置报警输入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
DS-96xxN-SH系列设备 | 获取报警输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
DS-96xxN-SH系列设备 | 设置报警输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
DS-96xxN-SH系列设备 | 获取本地预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-96xxN-SH系列设备 | 设置本地预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-96xxN-SH系列设备 | 获取辅助预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-96xxN-SH系列设备 | 设置辅助预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-96xxN-SH系列设备 | 获取视频输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30
DS-96xxN-SH系列设备 | 设置视频输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30
DS-96xxN-SH系列设备 | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
DS-96xxN-SH系列设备 | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
DS-96xxN-SH系列设备 | 获取异常参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
DS-96xxN-SH系列设备 | 设置异常参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
DS-96xxN-SH系列设备 | 获取时区和夏时制参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
DS-96xxN-SH系列设备 | 设置时区和夏时制参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
DS-96xxN-SH系列设备 | 获取报警触发辅助输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
DS-96xxN-SH系列设备 | 设置报警触发辅助输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
DS-96xxN-SH系列设备 | 获取网络应用(NTP/DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
DS-96xxN-SH系列设备 | 设置网络应用(NTP/DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
DS-96xxN-SH系列设备 | 获取网络应用(NTP)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NTPPARA
DS-96xxN-SH系列设备 | 设置网络应用(NTP)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NTPPARA
DS-96xxN-SH系列设备 | 获取网络应用(DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
DS-96xxN-SH系列设备 | 设置网络应用(DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
DS-96xxN-SH系列设备 | 获取网络应用(EMAIL)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
DS-96xxN-SH系列设备 | 设置网络应用(EMAIL)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
DS-96xxN-SH系列设备 | 获取NFS（网络文件系统）参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NFSCFG
DS-96xxN-SH系列设备 | 设置NFS（网络文件系统）参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NFSCFG
DS-96xxN-SH系列设备 | 获取IP接入配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IPPARACFG_V31
DS-96xxN-SH系列设备 | 设置IP接入配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPPARACFG_V31
DS-96xxN-SH系列设备 | 获取IP报警输入接入配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IPALARMINCFG
DS-96xxN-SH系列设备 | 设置IP报警输入接入配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPALARMINCFG
DS-96xxN-SH系列设备 | 获取IP报警输出接入配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IPALARMOUTCFG
DS-96xxN-SH系列设备 | 设置IP报警输出接入配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPALARMOUTCFG
DS-96xxN-SH系列设备 | 获取硬盘管理参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HDCFG
DS-96xxN-SH系列设备 | 设置硬盘管理参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HDCFG
DS-96xxN-SH系列设备 | 获取盘组管理参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HDGROUP_CFG
DS-96xxN-SH系列设备 | 设置盘组管理参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HDGROUP_CFG
DS-96xxN-SH系列设备 | 获取语音对讲音频参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSION_AUDIO
DS-96xxN-SH系列设备 | 设置语音对讲音频参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSION_AUDIO
DS-96xxN-SH系列设备 | 获取网络硬盘接入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NET_DISKCFG
DS-96xxN-SH系列设备 | 设置网络硬盘接入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NET_DISKCFG
DS-96xxN-SH系列设备V1..2（含）以上版本 | 获取零通道压缩参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZEROCHANCFG
DS-96xxN-SH系列设备V1..2（含）以上版本 | 设置零通道压缩参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZEROCHANCFG
DS-96xxN-SH系列设备V1..2（含）以上版本 | 获取零通道本地预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-96xxN-SH系列设备V1..2（含）以上版本 | 设置零通道本地预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-96xxN-SH系列设备V1..2（含）以上版本 | 获取零通道缩放参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZERO_ZOOMCFG
DS-96xxN-SH系列设备V1..2（含）以上版本 | 设置零通道缩放参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZERO_ZOOMCFG
DS-96xxN-SH系列设备 | 获取设备报警输出 | NET_DVR_GetAlarmOut_V30 |
DS-96xxN-SH系列设备 | 设置设备报警输出 | NET_DVR_SetAlarmOut |
DS-96xxN-SH系列设备 | 获取设备支持的云台协议 | NET_DVR_GetPTZProtocol |
DS-96xxN-SH系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG_V30 |
DS-96xxN-SH系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG |
DS-96xxN-SH系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG_V30 |
DS-96xxN-SH系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG |
获取设备能力 |  |  |
DS-96xxN-SH系列设备 | 获取设备能力 | NET_DVR_GetDeviceAbility | 支持的能力类型有：COMPRESSIONCFG_ABILITY（压缩参数能力）
获取IPC协议列表 |  |  |
DS-96xxN-SH系列设备 | 获取设备支持的IPC协议表 | NET_DVR_GetIPCProtoList |
远程扫描和修改IPC信息 |  |  |
DS-96xxN-SH系列设备 | 远程扫描获取IPC信息列表 | NET_DVR_GetSadpInfoList |
DS-96xxN-SH系列设备 | 远程修改IPC信息 | NET_DVR_UpdateSadpInfo |
邮件测试 |  |  |
DS-96xxN-SH系列设备 | 测试按已配置的EMAIL参数能否收发成功 | NET_DVR_StartEmailTest |
DS-96xxN-SH系列设备 | 获取邮件测试的进度 | NET_DVR_GetEmailTestProgress |
DS-96xxN-SH系列设备 | 停止邮件测试 | NET_DVR_StopEmailTest |

以下给出设备支持的编码类型和封装格式

设备型号 | 封装格式 | 编码类型 | 备注
DS-96xx | PS | 依接入的前端决定 |


95xx96xxN-ST系列NVR功能接口介绍

95xxN-ST和96xxN-ST系列NVR除了分别兼容95xxN-S和96xxN-SH的所有功能外，还支持以下接口的功能。

设备型号 | 功能 | 接口 | 相关参数
远程参数配置 |  |  |
DS-95xxN-S、DS-96xxN-ST系列设备 | 获取是否同步前端IPC设备参数信息 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SYNCHRONOUS_IPC
DS-95xxN-ST、DS-96xxN-ST系列设备 | 设置是否同步前端IPC设备参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SYNCHRONOUS_IPC
DS-95xxN-ST、DS-96xxN-SH系列设备 | 设置IPC的用户名/密码 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPC_PASSWD
DS-95xxN-ST、DS-96xxN-ST系列设备 | 获取设备当前网络资源使用情况 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICE_NET_USING_INFO
DS-95xxN-ST、DS-96xxN-ST系列设备 | 设置IPC的网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPC_NETCFG
假日参数配置 |  |  |
DS-95xxN-ST、DS-96xxN-ST系列 | 获取节假日参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HOLIDAY_PARAM_CFG
DS-95xxN-ST、DS-96xxN-ST系列 | 设置节假日参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HOLIDAY_PARAM_CFG
DS-95xxN-ST、DS-96xxN-ST系列 | 获取假日报警处理方式 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HOLIDAY_HANDLE 包括移动侦测、视频信号丢失、视频遮盖以及报警输入的假日处理方式
DS-95xxN-ST、DS-96xxN-ST系列 | 设置假日报警处理方式 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HOLIDAY_HANDLE 包括移动侦测、视频信号丢失、视频遮盖以及报警输入的假日处理方式
DS-95xxN-ST、DS-96xxN-ST系列 | 获取假日录像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HOLIDAY_RECORD
DS-95xxN-ST、DS-96xxN-ST系列 | 设置假日录像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HOLIDAY_RECORD
多网卡配置 |  |  |
91xx-ST系列 | 获取多网卡配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_MULTI
DS-95xxN-ST、DS-96xxN-ST系列 | 设置多网卡配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_MULTI
DS-95xxN-ST、DS-96xxN-ST系列 | 获取BONDING网卡参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETWORK_BONDING
DS-95xxN-ST、DS-96xxN-ST系列 | 设置BONDING网卡参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETWORK_BONDING
网络流量检测 |  |  |
DS-95xxN-ST、DS-96xxN-ST系列 | 开始网络流量检测 | NET_DVR_StartNetworkFlowTest |
DS-95xxN-ST、DS-96xxN-ST系列 | 停止网络流量检测 | NET_DVR_StopNetworkFlowTest |
录像标签功能 |  |  |
DS-95xxN-ST、DS-96xxN-ST系列 | 添加录像标签 | NET_DVR_InsertRecordLabel |
DS-95xxN-ST、DS-96xxN-ST系列 | 删除录像标签 | NET_DVR_DelRecordLabel |
DS-95xxN-ST、DS-96xxN-ST系列 | 搜索录像标签 | NET_DVR_FindRecordLabel |
DS-95xxN-ST、DS-96xxN-ST系列 | 逐个获取搜索到的录像标签 | NET_DVR_FindNextLabel |
DS-95xxN-ST、DS-96xxN-ST系列 | 停止搜索录像标签 | NET_DVR_StopFindLabel |
抓图配置以及图片回放备份功能 |  |  |
DS-95xxN-ST、DS-96xxN-ST系列 | 获取设备抓图配置 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_JPEG_CAPTURE_CFG
DS-95xxN-ST、DS-96xxN-ST系列 | 设置设备抓图配置 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_JPEG_CAPTURE_CFG
DS-95xxN-ST、DS-96xxN-ST系列 | 获取抓图计划 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SCHED_CAPTURECFG
DS-95xxN-ST、DS-96xxN-ST系列 | 设置抓图计划 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SCHED_CAPTURECFG
DS-95xxN-ST、DS-96xxN-ST系列 | 获取抓图FTP上传参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_FTPCFG
DS-95xxN-ST、DS-96xxN-ST系列 | 设置抓图FTP上传参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_FTPCFG
DS-95xxN-ST、DS-96xxN-ST系列 | 根据类型和时间查找图片 | NET_DVR_FindPicture |
DS-95xxN-ST、DS-96xxN-ST系列 | 逐个获取查找到的图片信息 | NET_DVR_FindNextPicture |
DS-95xxN-ST、DS-96xxN-ST系列 | 关闭图片查找，释放资源 | NET_DVR_CloseFindPicture |
DS-95xxN-ST、DS-96xxN-ST系列 | 图片回放 | NET_DVR_GetPicture_V30 |
DS-95xxN-ST、DS-96xxN-ST系列 | 备份图片 | NET_DVR_BackupPicture |
DS-95xxN-ST、DS-96xxN-ST系列 | 获取图片备份的进度 | NET_DVR_GetBackupProgress |
DS-95xxN-ST、DS-96xxN-ST系列 | 停止备份 | NET_DVR_StopBackup |
磁盘配额管理 |  |  |
DS-95xxN-ST、DS-96xxN-ST系列 | 获取磁盘配额信息 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DISK_QUOTA_CFG
DS-95xxN-ST、DS-96xxN-ST系列 | 设置磁盘配额信息 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DISK_QUOTA_CFG
SNMP协议配置 |  |  |
DS-95xxN-ST、DS-96xxN-ST系列 | 获取SNMP参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SNMPCFG
DS-95xxN-ST、DS-96xxN-ST系列 | 设置SNMP参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SNMPCFG


96系列NVR功能接口介绍

96系列NVR功能接口介绍除通用接口的功能外，还支持以下接口的功能，包括预览、视频数据获取、录像文件查找、回放和下载、录像文件锁定和备份、手动录像、报警上传、语音对讲、硬盘管理、物理硬盘及阵列操作、远程参数配置等。

设备型号 | 功能 | 接口 | 相关参数
预览相关功能 |  |  |
DS-9664N-RH系列设备 | 设置播放显示模式 | NET_DVR_SetShowMode |
DS-9664N-RH系列设备 | 主码流动态产生一个关键帧 | NET_DVR_MakeKeyFrame |
DS-9664N-RH系列设备 | 子码流动态产生一个关键帧 | NET_DVR_MakeKeyFrameSub |
DS-9664N-RH系列设备 | 实时预览 | NET_DVR_RealPlay_V30 |
DS-9664N-RH系列设备 | 停止预览 | NET_DVR_StopRealPlay |
DS-9664N-RH系列设备 | 获取预览时用来解码和显示的播放器句柄 | NET_DVR_GetRealPlayerIndex |
DS-9664N-RH系列设备 | 获取预览视频显示参数 | NET_DVR_ClientGetVideoEffect |
DS-9664N-RH系列设备 | 设置预览视频显示参数 | NET_DVR_ClientSetVideoEffect |
DS-9664N-RH系列设备 | 预览画面叠加字符和图像 | NET_DVR_RigisterDrawFun |
DS-9664N-RH系列设备 | 设置播放库的帧缓冲区个数 | NET_DVR_SetPlayerBufNumber |
DS-9664N-RH系列设备 | 设置解码时丢弃B帧的个数 | NET_DVR_ThrowBFrame |
DS-9664N-RH系列设备 | 设置声音播放模式 | NET_DVR_SetAudioMode |
DS-9664N-RH系列设备 | 独占声卡模式下开启声音 | NET_DVR_OpenSound |
DS-9664N-RH系列设备 | 独占声卡模式下关闭声音 | NET_DVR_CloseSound |
DS-9664N-RH系列设备 | 共享声卡模式下开启声音 | NET_DVR_OpenSoundShare |
DS-9664N-RH系列设备 | 共享声卡模式下关闭声音 | NET_DVR_CloseSoundShare |
DS-9664N-RH系列设备 | 调节播放音量 | NET_DVR_Volume |
DS-9664N-RH系列设备 | 初始化系统中的显示设备 | NET_DVR_InitDDrawDevice |
DS-9664N-RH系列设备 | 释放显示设备占用的资源 | NET_DVR_ReleaseDDrawDevice |
DS-9664N-RH系列设备 | 获取系统的显示设备的数量 | NET_DVR_GetDDrawDeviceTotalNums |
DS-9664N-RH系列设备 | 设置播放窗口所使用的显卡 | NET_DVR_SetDDrawDevice |
DS-9664N-RH系列设备 | 注册回调函数，捕获实时码流数据 | NET_DVR_SetRealDataCallBack |
DS-9664N-RH系列设备 | 注册回调函数，捕获实时码流数据（标准码流） | NET_DVR_SetStandardDataCallBack |
DS-9664N-RH系列设备 | 捕获数据并存放到指定的文件中 | NET_DVR_SaveRealData |
DS-9664N-RH系列设备 | 停止数据捕获 | NET_DVR_StopSaveRealData |
DS-9664N-RH系列设备 | 单帧数据捕获并保存成BMP位图 | NET_DVR_CapturePicture |
DS-9664N-RH系列设备 | 单帧数据捕获并保存成JPEG图 | NET_DVR_CaptureJPEGPicture |
DS-9664N-RH系列设备 | 单帧数据捕获并保存成JPEG存放在指定的内存空间中 | NET_DVR_CaptureJPEGPicture_NEW |
录像文件操作的相关功能 |  |  |
DS-9664N-RH系列设备 | 根据文件类型、时间查找设备录像文件 | NET_DVR_FindFile_V30 | NET_DVR_FILECOND（不支持带卡号的查询）
DS-9664N-RH系列设备 | 逐个获取查找到的文件信息 | NET_DVR_FindNextFile_V30 |
DS-9664N-RH系列设备 | 关闭文件查找，释放资源 | NET_DVR_FindClose_V30 |
按事件查找录像文件的相关功能 |  |  |
DS-9664N-RH系列设备 | 根据事件查找录像文件 | NET_DVR_FindFileByEvent |
DS-9664N-RH系列设备 | 逐个获取查找到的文件信息 | NET_DVR_FindNextEvent |
DS-9664N-RH系列设备 | 关闭文件查找，释放资源 | NET_DVR_FindClose_V30 |
按区域移动侦测智能搜索功能 |  |  |
DS-9664N-RH系列设备 | 开始智能搜索 | NET_DVR_SmartSearch |
DS-9664N-RH系列设备 | 获取区域内的下一个移动侦测信息 | NET_DVR_SearchNextInfo |
DS-9664N-RH系列设备 | 停止智能搜索 | NET_DVR_StopSearch |
回放录像文件及相关 |  |  |
DS-9664N-RH系列设备 | 按文件名回放录像文件 | NET_DVR_PlayBackByName |
DS-9664N-RH系列设备 | 按时间回放录像文件 | NET_DVR_PlayBackByTime |
DS-9664N-RH系列设备 | 控制录像回放的状态 | NET_DVR_PlayBackControl_V40 |
DS-9664N-RH系列设备 | 停止回放录像文件 | NET_DVR_StopPlayBack |
DS-9664N-RH系列设备 | 捕获回放的录像数据，并保存成文件 | NET_DVR_PlayBackSaveData |
DS-9664N-RH系列设备 | 停止保存录象数据 | NET_DVR_StopPlayBackSave |
DS-9664N-RH系列设备 | 注册回调函数，捕获录像数据 | NET_DVR_SetPlayDataCallBack |
DS-9664N-RH系列设备 | 获取录像回放时显示的OSD时间 | NET_DVR_GetPlayBackOsdTime |
DS-9664N-RH系列设备 | 录像回放时抓图，并保存在文件中 | NET_DVR_PlayBackCaptureFile |
DS-9664N-RH系列设备 | 刷新显示回放窗口 | NET_DVR_RefreshPlay |
DS-9664N-RH系列设备 | 获取回放时用来解码显示的播放库句柄 | NET_DVR_GetPlayBackPlayerIndex |
录像文件下载及相关 |  |  |
DS-9664N-RH系列设备 | 按文件名下载录像文件 | NET_DVR_GetFileByName |
DS-9664N-RH系列设备 | 按时间下载录像文件 | NET_DVR_GetFileByTime |
DS-9664N-RH系列设备 | 控制录像下载的状态 | NET_DVR_PlayBackControl |
DS-9664N-RH系列设备 | 停止下载录像文件 | NET_DVR_StopGetFile |
DS-9664N-RH系列设备 | 获取当前下载录像文件的进度 | NET_DVR_GetDownloadPos |
录像文件锁定与解锁 |  |  |
DS-9664N-RH系列设备 | 按文件名锁定录像文件 | NET_DVR_LockFileByName |
DS-9664N-RH系列设备 | 按文件名解锁录像文件 | NET_DVR_UnlockFileByName |
录像文件备份 |  |  |
DS-9664N-RH系列设备 | 获取设备磁盘列表 | NET_DVR_GetDiskList |
DS-9664N-RH系列设备 | 按文件名备份录像文件 | NET_DVR_BackupByName |
DS-9664N-RH系列设备 | 按时间段备份录像文件 | NET_DVR_BackupByTime |
DS-9664N-RH系列设备 | 获取文件备份的进度 | NET_DVR_GetBackupProgress |
DS-9664N-RH系列设备 | 停止文件备份 | NET_DVR_StopBackup |
手动录像 |  |  |
DS-9664N-RH系列设备 | 远程手动启动设备录像 | NET_DVR_StartDVRRecord |
DS-9664N-RH系列设备 | 远程手动停止设备录像 | NET_DVR_StopDVRRecord |
布防、撤防和监听 |  |  |
DS-9664N-RH系列设备 | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 |
DS-9664N-RH系列设备 | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
DS-9664N-RH系列设备 | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
DS-9664N-RH系列设备 | 启动监听，接收设备主动上传的报警等信息（支持多线程） | NET_DVR_StartListen_V30 |
DS-9664N-RH系列设备 | 停止监听（支持多线程） | NET_DVR_StopListen_V30 |
远程面板控制 |  |  |
DS-9664N-RH系列设备 | 远程控制面板上的按键 | NET_DVR_ClickKey |
DS-9664N-RH系列设备 | 禁用设备本地面板控制 | NET_DVR_LockPanel |
DS-9664N-RH系列设备 | 恢复设备本地面板控制 | NET_DVR_UnLockPanel |
云台控制 |  |  |
DS-9664N-RH系列设备 | 云台控制操作(需先启动图象预览) | NET_DVR_PTZControl |
DS-9664N-RH系列设备 | 云台控制操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZControl好，RTSP预览时不支持此功能） | NET_DVR_PTZControl_EX |
DS-9664N-RH系列设备 | 云台控制操作(不用启动图象预览) | NET_DVR_PTZControl_Other |
DS-9664N-RH系列设备 | 带速度的云台控制操作(需先启动图象预览) | NET_DVR_PTZControlWithSpeed |
DS-9664N-RH系列设备 | 带速度的云台控制操作(不用启动图象预览) | NET_DVR_PTZControlWithSpeed_Other |
DS-9664N-RH系列设备 | 云台预置点操作（需先启动预览） | NET_DVR_PTZPreset |
DS-9664N-RH系列设备 | 云台预置点操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZPreset好，RTSP预览时不支持此功能） | NET_DVR_PTZPreset_EX |
DS-9664N-RH系列设备 | 云台预置点操作 | NET_DVR_PTZPreset_Other |
DS-9664N-RH系列设备 | 云台巡航操作，需先启动预览 | NET_DVR_PTZCruise |
DS-9664N-RH系列设备 | 云台巡航操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZCruise好，RTSP预览时不支持此功能） | NET_DVR_PTZCruise_EX |
DS-9664N-RH系列设备 | 云台巡航操作 | NET_DVR_PTZCruise_Other |
DS-9664N-RH系列设备 | 云台轨迹操作，需先启动预览 | NET_DVR_PTZTrack |
DS-9664N-RH系列设备 | 云台轨迹操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZTrack好，RTSP预览时不支持此功能） | NET_DVR_PTZTrack_EX |
DS-9664N-RH系列设备 | 云台轨迹操作 | NET_DVR_PTZTrack_Other |
DS-9664N-RH系列设备 | 透明云台操作，需先启动预览 | NET_DVR_TransPTZ |
DS-9664N-RH系列设备 | 透明云台操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_TransPTZ好，RTSP预览时不支持此功能） | NET_DVR_TransPTZ_EX |
DS-9664N-RH系列设备 | 透明云台操作 | NET_DVR_TransPTZ_Other |
语音对讲、转发及广播 |  |  |
DS-9664N-RH系列设备 | 启动语音对讲 | NET_DVR_StartVoiceCom_V30 |
DS-9664N-RH系列设备 | 设置语音对讲客户端的音量 | NET_DVR_SetVoiceComClientVolume |
DS-9664N-RH系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
DS-9664N-RH系列设备 | 启动语音转发，获取编码后的音频数据 | NET_DVR_StartVoiceCom_MR_V30 |
DS-9664N-RH系列设备 | 转发语音数据 | NET_DVR_VoiceComSendData |
DS-9664N-RH系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
DS-9664N-RH系列设备 | 启动语音广播的PC端声音捕获 | NET_DVR_ClientAudioStart_V30 |
DS-9664N-RH系列设备 | 添加设备的某个语音通道到可以接收PC端声音的广播组 | NET_DVR_AddDVR_V30 |
DS-9664N-RH系列设备 | 从可接收PC机声音的广播组里删除该设备的语音通道 | NET_DVR_DelDVR_V30 |
DS-9664N-RH系列设备 | 停止语音广播的PC端声音捕获 | NET_DVR_ClientAudioStop |
透明通道 |  |  |
DS-9664N-RH系列设备 | 建立透明通道 | NET_DVR_SerialStart |
DS-9664N-RH系列设备 | 通过透明通道向设备串口发送数据 | NET_DVR_SerialSend |
DS-9664N-RH系列设备 | 断开透明通道 | NET_DVR_SerialStop |
向串口发送数据 |  |  |
DS-9664N-RH系列设备 | 直接向串口发送数据，不需要建立透明通道 | NET_DVR_SendToSerialPort |
DS-9664N-RH系列设备 | 直接向232串口发送数据，不需要建立透明通道 | NET_DVR_SendTo232Port |
硬盘管理 |  |  |
DS-9664N-RH系列设备 | 远程格式化设备硬盘 | NET_DVR_FormatDisk |
DS-9664N-RH系列设备 | 获取格式化硬盘的进度 | NET_DVR_GetFormatProgress |
DS-9664N-RH系列设备 | 关闭格式化硬盘句柄，释放资源 | NET_DVR_CloseFormatHandle |
物理硬盘及阵列操作 |  |  |
DS-9664N-RH系列设备 | 获取物理磁盘信息列表 | NET_DVR_GetPDList |
DS-9664N-RH系列设备 | 设置热备 | NET_DVR_SetSpareDisk |
DS-9664N-RH系列设备 | 获取阵列信息列表 | NET_DVR_GetArrayList |
DS-9664N-RH系列设备 | 创建阵列 | NET_DVR_CreateArray |
DS-9664N-RH系列设备 | 计算阵列的大小 | NET_DVR_CalcArraySize |
DS-9664N-RH系列设备 | 阵列一键配置 | NET_DVR_RaidFastConfig |
DS-9664N-RH系列设备 | 获取阵列一键配置的进度 | NET_DVR_FastConfigProcess |
DS-9664N-RH系列设备 | 关闭阵列一键配置，释放资源 | NET_DVR_CloseFastConfig |
DS-9664N-RH系列设备 | 重建阵列 | NET_DVR_RebuildArray |
DS-9664N-RH系列设备 | 迁移阵列 | NET_DVR_MigrateArray |
DS-9664N-RH系列设备 | 安全拔盘 | NET_DVR_RaidPullDiskStart |
DS-9664N-RH系列设备 | 重新扫描阵列 | NET_DVR_ScanRaidStart |
DS-9664N-RH系列设备 | 释放安全拔盘和扫描阵列的句柄资源 | NET_DVR_CloseLongCfgHandle |
DS-9664N-RH系列设备 | 获取虚拟磁盘列表 | NET_DVR_GetVDList |
DS-9664N-RH系列设备 | 创建虚拟磁盘 | NET_DVR_CreateVD |
DS-9664N-RH系列设备 | 删除虚拟磁盘 | NET_DVR_DelVD |
DS-9664N-RH系列设备 | 修复虚拟磁盘 | NET_DVR_RepairVD |
DS-9664N-RH系列设备 | 获取阵列中虚拟磁盘分配信息 | NET_DVR_GetArraySpaceAlloc |
DS-9664N-RH系列设备 | 远程扩容虚拟磁盘 | NET_DVR_ExpandDisk |
DS-9664N-RH系列设备 | 获取扩容虚拟磁盘进度 | NET_DVR_GetExpandProgress |
DS-9664N-RH系列设备 | 关闭虚拟磁盘扩容，释放资源 | NET_DVR_CloseExpandHandle |
DS-9664N-RH系列设备 | 适配器参数信息 | NET_DVR_RAID_ADAPTER_INFO |
DS-9664N-RH系列设备 | 远程升级适配器 | NET_DVR_AdapterUpgrade |
设备维护管理 |  |  |
DS-9664N-RH系列设备 | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
DS-9664N-RH系列设备 | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
DS-9664N-RH系列设备 | 远程升级 | NET_DVR_Upgrade |
DS-9664N-RH系列设备 | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
DS-9664N-RH系列设备 | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
DS-9664N-RH系列设备 | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
DS-9664N-RH系列设备 | 查找设备的日志信息（可搜索带S.M.A.R.T信息的日志） | NET_DVR_FindDVRLog_V30 |
DS-9664N-RH系列设备 | 逐条获取查找到的日志信息 | NET_DVR_FindNextLog_V30 |
DS-9664N-RH系列设备 | 释放查找日志的资源 | NET_DVR_FindLogClose_V30 |
DS-9664N-RH系列设备 | 恢复设备默认参数 | NET_DVR_RestoreConfig |
DS-9664N-RH系列设备 | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
DS-9664N-RH系列设备 | 导出配置文件 | NET_DVR_GetConfigFile |
DS-9664N-RH系列设备 | 导入配置文件 | NET_DVR_SetConfigFile_EX |
DS-9664N-RH系列设备 | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
DS-9664N-RH系列设备 | 重启设备 | NET_DVR_RebootDVR |
DS-9664N-RH系列设备 | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
DS-9664N-RH系列设备 | 获取设备参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
DS-9664N-RH系列设备 | 设置设备参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
DS-9664N-RH系列设备 | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
DS-9664N-RH系列设备 | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
DS-9664N-RH系列设备 | 获取网络参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
DS-9664N-RH系列设备 | 设置网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
DS-9664N-RH系列设备 | 获取图像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
DS-9664N-RH系列设备 | 设置图像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
DS-9664N-RH系列设备 | 获取压缩参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
DS-9664N-RH系列设备 | 设置压缩参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
DS-9664N-RH系列设备 | 获取录像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RECORD_V30
DS-9664N-RH系列设备 | 设置录像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RECORD_V30
DS-9664N-RH系列设备 | 获取（云台）解码器参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
DS-9664N-RH系列设备 | 设置（云台）解码器参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
DS-9664N-RH系列设备 | 获取232串口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
DS-9664N-RH系列设备 | 设置232串口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
DS-9664N-RH系列设备 | 获取报警输入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
DS-9664N-RH系列设备 | 设置报警输入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
DS-9664N-RH系列设备 | 获取报警输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
DS-9664N-RH系列设备 | 设置报警输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
DS-9664N-RH系列设备 | 获取本地预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-9664N-RH系列设备 | 设置本地预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-9664N-RH系列设备 | 获取辅助预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-9664N-RH系列设备 | 设置辅助预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
DS-9664N-RH系列设备 | 获取视频输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30
DS-9664N-RH系列设备 | 设置视频输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30
DS-9664N-RH系列设备 | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
DS-9664N-RH系列设备 | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
DS-9664N-RH系列设备 | 获取异常参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
DS-9664N-RH系列设备 | 设置异常参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
DS-9664N-RH系列设备 | 获取时区和夏时制参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
DS-9664N-RH系列设备 | 设置时区和夏时制参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
DS-9664N-RH系列设备 | 获取报警触发辅助输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
DS-9664N-RH系列设备 | 设置报警触发辅助输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
DS-9664N-RH系列设备 | 获取网络应用(NTP/DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
DS-9664N-RH系列设备 | 设置网络应用(NTP/DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
DS-9664N-RH系列设备 | 获取网络应用(NTP)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NTPPARA
DS-9664N-RH系列设备 | 设置网络应用(NTP)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NTPPARA
DS-9664N-RH系列设备 | 获取网络应用(DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
DS-9664N-RH系列设备 | 设置网络应用(DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
DS-9664N-RH系列设备 | 获取网络应用(EMAIL)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
DS-9664N-RH系列设备 | 设置网络应用(EMAIL)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
DS-9664N-RH系列设备 | 获取NFS（网络文件系统）参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NFSCFG
DS-9664N-RH系列设备 | 设置NFS（网络文件系统）参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NFSCFG
DS-9664N-RH系列设备 | 获取IP接入配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IPPARACFG_V40
DS-9664N-RH系列设备 | 设置IP接入配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPPARACFG_V40
DS-9664N-RH系列设备 | 获取IP报警输入接入配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IPALARMINCFG
DS-9664N-RH系列设备 | 设置IP报警输入接入配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPALARMINCFG
DS-9664N-RH系列设备 | 获取IP报警输出接入配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IPALARMOUTCFG
DS-9664N-RH系列设备 | 设置IP报警输出接入配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPALARMOUTCFG
DS-9664N-RH系列设备 | 获取硬盘管理参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HDCFG
DS-9664N-RH系列设备 | 设置硬盘管理参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HDCFG
DS-9664N-RH系列设备 | 获取盘组管理参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HDGROUP_CFG
DS-9664N-RH系列设备 | 设置盘组管理参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HDGROUP_CFG
DS-9664N-RH系列设备 | 获取语音对讲音频参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSION_AUDIO
DS-9664N-RH系列设备 | 设置语音对讲音频参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSION_AUDIO
DS-9664N-RH系列设备 | 获取网络硬盘接入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NET_DISKCFG
DS-9664N-RH系列设备 | 设置网络硬盘接入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NET_DISKCFG
DS-9664N-RH系列设备 | 获取设备报警输出 | NET_DVR_GetAlarmOut_V30 |
DS-9664N-RH系列设备 | 设置设备报警输出 | NET_DVR_SetAlarmOut |
DS-9664N-RH系列设备 | 获取设备支持的云台协议 | NET_DVR_GetPTZProtocol |
DS-9664N-RH系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG_V30 |
DS-9664N-RH系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG |
DS-9664N-RH系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG_V30 |
DS-9664N-RH系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG |
获取设备能力 |  |  |
DS-9664N-RH系列设备 | 获取设备能力 | NET_DVR_GetDeviceAbility | 支持的能力类型有：COMPRESSIONCFG_ABILITY（压缩参数能力）
获取IPC协议列表 |  |  |
DS-9664N-RH系列设备 | 获取设备支持的IPC协议表 | NET_DVR_GetIPCProtoList |
远程扫描和修改IPC信息 |  |  |
DS-9664N-RH系列设备 | 远程扫描获取IPC信息列表 | NET_DVR_GetSadpInfoList |
DS-9664N-RH系列设备 | 远程修改IPC信息 | NET_DVR_UpdateSadpInfo |
邮件测试 |  |  |
DS-9664N-RH系列设备 | 测试按已配置的EMAIL参数能否收发成功 | NET_DVR_StartEmailTest |
DS-9664N-RH系列设备 | 获取邮件测试的进度 | NET_DVR_GetEmailTestProgress |
DS-9664N-RH系列设备 | 停止邮件测试 | NET_DVR_StopEmailTest |
假日参数配置 |  |  |
DS-9664N-RH系列 | 获取节假日参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HOLIDAY_PARAM_CFG
DS-9664N-RH系列 | 设置节假日参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HOLIDAY_PARAM_CFG
DS-9664N-RH系列 | 获取假日报警处理方式 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HOLIDAY_HANDLE 包括移动侦测、视频信号丢失、视频遮盖以及报警输入的假日处理方式
DS-9664N-RH系列 | 设置假日报警处理方式 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HOLIDAY_HANDLE 包括移动侦测、视频信号丢失、视频遮盖以及报警输入的假日处理方式
DS-9664N-RH系列 | 获取假日录像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HOLIDAY_RECORD
DS-9664N-RH系列 | 设置假日录像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HOLIDAY_RECORD
多网卡配置 |  |  |
91xx-ST系列 | 获取多网卡配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_MULTI
DS-9664N-RH系列 | 设置多网卡配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_MULTI
DS-9664N-RH系列 | 获取BONDING网卡参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETWORK_BONDING
DS-9664N-RH系列 | 设置BONDING网卡参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETWORK_BONDING
网络流量检测 |  |  |
DS-9664N-RH系列 | 开始网络流量检测 | NET_DVR_StartNetworkFlowTest |
DS-9664N-RH系列 | 停止网络流量检测 | NET_DVR_StopNetworkFlowTest |
录像标签功能 |  |  |
DS-9664N-RH系列 | 添加录像标签 | NET_DVR_InsertRecordLabel |
DS-9664N-RH系列 | 删除录像标签 | NET_DVR_DelRecordLabel |
DS-9664N-RH系列 | 搜索录像标签 | NET_DVR_FindRecordLabel |
DS-9664N-RH系列 | 逐个获取搜索到的录像标签 | NET_DVR_FindNextLabel |
DS-9664N-RH系列 | 停止搜索录像标签 | NET_DVR_StopFindLabel |
抓图配置以及图片回放备份功能 |  |  |
DS-9664N-RH系列 | 获取设备抓图配置 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_JPEG_CAPTURE_CFG
DS-9664N-RH系列 | 设置设备抓图配置 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_JPEG_CAPTURE_CFG
DS-9664N-RH系列 | 获取抓图计划 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SCHED_CAPTURECFG
DS-9664N-RH系列 | 设置抓图计划 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SCHED_CAPTURECFG
DS-9664N-RH系列 | 获取抓图FTP上传参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_FTPCFG
DS-9664N-RH系列 | 设置抓图FTP上传参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_FTPCFG
DS-9664N-RH系列 | 根据类型和时间查找图片 | NET_DVR_FindPicture |
DS-9664N-RH系列 | 逐个获取查找到的图片信息 | NET_DVR_FindNextPicture |
DS-9664N-RH系列 | 关闭图片查找，释放资源 | NET_DVR_CloseFindPicture |
DS-9664N-RH系列 | 图片回放 | NET_DVR_GetPicture_V30 |
DS-9664N-RH系列 | 备份图片 | NET_DVR_BackupPicture |
DS-9664N-RH系列 | 获取图片备份的进度 | NET_DVR_GetBackupProgress |
DS-9664N-RH系列 | 停止备份 | NET_DVR_StopBackup |
磁盘配额管理 |  |  |
DS-9664N-RH系列 | 获取磁盘配额信息 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DISK_QUOTA_CFG
DS-9664N-RH系列 | 设置磁盘配额信息 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DISK_QUOTA_CFG
SNMP协议配置 |  |  |
DS-9664N-RH系列 | 获取SNMP参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SNMPCFG
DS-9664N-RH系列 | 设置SNMP参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SNMPCFG
通道的功能接口 |  |  |
DS-9664N-RH系列 | 获取通道的工作状态 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_LINK_STATUS
DS-9664N-RH系列 | 获取通道视频输入图像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_VIDEO_INPUT_EFFECT
DS-9664N-RH系列 | 设置通道视频输入图像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_VIDEO_INPUT_EFFECT

以下给出设备支持的编码类型和封装格式

设备型号 | 封装格式 | 编码类型 | 备注
DS-9664N-RH | PS(网传RTP) | 依接入的前端决定 |


网络摄像机(IPC系列设备)功能接口介绍

网络摄像机(IPC系列设备)除通用接口的功能外，还支持以下接口的功能，包括预览、视频数据获取、录像文件查找、回放和下载、手动录像、报警上传、语音对讲和远程参数配置等。

支持的IPC主要有:

DS-2CD802/812/892P(N)-IR1(IR3)(IR5), DS-2CD802/812/892PF(NF)(-E)(-W)(-D), DS-2CD832F(-E), DS-2CD833F-E(W), DS-2CD893PFWD(NFWD)-E,
DS-2CD8133F-E(W)(I), DS-2CD726F-PT/DS-2CD727/728PF-PT(W), DS-2CD702/712/792PF(NF)(-E), DS-2CD732F(-E), DS-2CD733F-E(I), DS-2CD793PFWD(NFWD)-E(I),
DS-2CD793PF(NF)-E(I), DS-2CD7133-E, DS-2CD762MF, DS-2CD763PF(NF)-E(I), DS-2CD862MF-E, DS-2CD863PF(NF)-E(W), DS-2CD7153-E, DS-2CD8153F-E(W)(I), DS-2CD754F-E(I),
DS-2CD876BF, DS-2CD877BF, DS-2CD854F-E(W)等
设备型号 | 功能 | 接口 | 相关参数
预览相关功能 |  |  |
IPC系列设备 | 设置播放显示模式 | NET_DVR_SetShowMode |
IPC系列设备 | 主码流动态产生一个关键帧 | NET_DVR_MakeKeyFrame |
IPC系列设备 | 子码流动态产生一个关键帧 | NET_DVR_MakeKeyFrameSub |
IPC系列设备 | 实时预览 | NET_DVR_RealPlay_V30 |
IPC系列设备 | 停止预览 | NET_DVR_StopRealPlay |
IPC系列设备 | 获取预览时用来解码和显示的播放器句柄 | NET_DVR_GetRealPlayerIndex |
IPC系列设备 | 获取预览视频显示参数 | NET_DVR_ClientGetVideoEffect |
IPC系列设备 | 设置预览视频显示参数 | NET_DVR_ClientSetVideoEffect |
IPC系列设备 | 预览画面叠加字符和图像 | NET_DVR_RigisterDrawFun |
IPC系列设备 | 设置播放库的帧缓冲区个数 | NET_DVR_SetPlayerBufNumber |
IPC系列设备 | 设置解码时丢弃B帧的个数 | NET_DVR_ThrowBFrame |
IPC系列设备 | 设置声音播放模式 | NET_DVR_SetAudioMode |
IPC系列设备 | 独占声卡模式下开启声音 | NET_DVR_OpenSound |
IPC系列设备 | 独占声卡模式下关闭声音 | NET_DVR_CloseSound |
IPC系列设备 | 共享声卡模式下开启声音 | NET_DVR_OpenSoundShare |
IPC系列设备 | 共享声卡模式下关闭声音 | NET_DVR_CloseSoundShare |
IPC系列设备 | 调节播放音量 | NET_DVR_Volume |
IPC系列设备 | 初始化系统中的显示设备 | NET_DVR_InitDDrawDevice |
IPC系列设备 | 释放显示设备占用的资源 | NET_DVR_ReleaseDDrawDevice |
IPC系列设备 | 获取系统的显示设备的数量 | NET_DVR_GetDDrawDeviceTotalNums |
IPC系列设备 | 设置播放窗口所使用的显卡 | NET_DVR_SetDDrawDevice |
IPC系列设备 | 注册回调函数，捕获实时码流数据 | NET_DVR_SetRealDataCallBack |
IPC系列设备 | 注册回调函数，捕获实时码流数据（标准码流） | NET_DVR_SetStandardDataCallBack |
IPC系列设备 | 捕获数据并存放到指定的文件中 | NET_DVR_SaveRealData |
IPC系列设备 | 停止数据捕获 | NET_DVR_StopSaveRealData |
IPC系列设备 | 单帧数据捕获并保存成BMP位图 | NET_DVR_CapturePicture |
IPC系列设备 | 单帧数据捕获并保存成JPEG图 | NET_DVR_CaptureJPEGPicture |
IPC系列设备 | 单帧数据捕获并保存成JPEG存放在指定的内存空间中 | NET_DVR_CaptureJPEGPicture_NEW |
录像文件操作的相关功能 |  |  |
IPC系列设备 | 根据文件类型、时间查找设备录像文件 | NET_DVR_FindFile_V30 | NET_DVR_FILECOND 不支持带卡号和锁定录像文件的查询
IPC系列设备 | 逐个获取查找到的文件信息 | NET_DVR_FindNextFile_V30 |
IPC系列设备 | 关闭文件查找，释放资源 | NET_DVR_FindClose_V30 |
回放录像文件及相关 |  |  |
IPC系列设备 | 按文件名回放录像文件 | NET_DVR_PlayBackByName |
IPC系列设备 | 按时间回放录像文件 | NET_DVR_PlayBackByTime |
IPC系列设备 | 控制录像回放的状态 | NET_DVR_PlayBackControl_V40 | 不支持控制命令：NET_DVR_PLAYSETTIME、 NET_DVR_PLAYGETTOTALLEN
IPC系列设备 | 停止回放录像文件 | NET_DVR_StopPlayBack |
IPC系列设备 | 捕获回放的录像数据，并保存成文件 | NET_DVR_PlayBackSaveData |
IPC系列设备 | 停止保存录象数据 | NET_DVR_StopPlayBackSave |
IPC系列设备 | 注册回调函数，捕获录像数据 | NET_DVR_SetPlayDataCallBack |
IPC系列设备 | 获取录像回放时显示的OSD时间 | NET_DVR_GetPlayBackOsdTime |
IPC系列设备 | 录像回放时抓图，并保存在文件中 | NET_DVR_PlayBackCaptureFile |
IPC系列设备 | 刷新显示回放窗口 | NET_DVR_RefreshPlay |
IPC系列设备 | 获取回放时用来解码显示的播放库句柄 | NET_DVR_GetPlayBackPlayerIndex |
录像文件下载及相关 |  |  |
IPC系列设备 | 按文件名下载录像文件 | NET_DVR_GetFileByName |
IPC系列设备 | 按时间下载录像文件 | NET_DVR_GetFileByTime |
IPC系列设备 | 控制录像下载的状态 | NET_DVR_PlayBackControl |
IPC系列设备 | 停止下载录像文件 | NET_DVR_StopGetFile |
IPC系列设备 | 获取当前下载录像文件的进度 | NET_DVR_GetDownloadPos |
手动录像 |  |  |
IPC系列设备 | 远程手动启动设备录像 | NET_DVR_StartDVRRecord |
IPC系列设备 | 远程手动停止设备录像 | NET_DVR_StopDVRRecord |
布防、撤防和监听 |  |  |
IPC系列设备 | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 | 只支持COMM_ALARM： NET_DVR_ALARMINFO
IPC系列设备 | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
IPC系列设备 | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
IPC系列设备 | 启动监听，接收设备主动上传的报警等信息（支持多线程） | NET_DVR_StartListen_V30 |
IPC系列设备 | 停止监听（支持多线程） | NET_DVR_StopListen_V30 |
云台控制 |  |  |
IPC系列设备 | 云台控制操作(需先启动图象预览) | NET_DVR_PTZControl |
IPC系列设备 | 云台控制操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZControl好，RTSP预览时不支持此功能） | NET_DVR_PTZControl_EX |
IPC系列设备 | 云台控制操作(不用启动图象预览) | NET_DVR_PTZControl_Other |
IPC系列设备 | 带速度的云台控制操作(需先启动图象预览) | NET_DVR_PTZControlWithSpeed |
IPC系列设备 | 带速度的云台控制操作(不用启动图象预览) | NET_DVR_PTZControlWithSpeed_Other |
IPC系列设备 | 云台预置点操作（需先启动预览） | NET_DVR_PTZPreset |
IPC系列设备 | 云台预置点操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZPreset好，RTSP预览时不支持此功能） | NET_DVR_PTZPreset_EX |
IPC系列设备 | 云台预置点操作 | NET_DVR_PTZPreset_Other |
IPC系列设备 | 云台巡航操作，需先启动预览 | NET_DVR_PTZCruise |
IPC系列设备 | 云台巡航操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZCruise好，RTSP预览时不支持此功能） | NET_DVR_PTZCruise_EX |
IPC系列设备 | 云台巡航操作 | NET_DVR_PTZCruise_Other |
IPC系列设备 | 云台轨迹操作，需先启动预览 | NET_DVR_PTZTrack |
IPC系列设备 | 云台轨迹操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZTrack好，RTSP预览时不支持此功能） | NET_DVR_PTZTrack_EX |
IPC系列设备 | 云台轨迹操作 | NET_DVR_PTZTrack_Other |
IPC系列设备 | 透明云台操作，需先启动预览 | NET_DVR_TransPTZ |
IPC系列设备 | 透明云台操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_TransPTZ好，RTSP预览时不支持此功能） | NET_DVR_TransPTZ_EX |
IPC系列设备 | 透明云台操作 | NET_DVR_TransPTZ_Other |
语音对讲、转发及广播 |  |  |
IPC系列设备 | 启动语音对讲 | NET_DVR_StartVoiceCom_V30 |
IPC系列设备 | 设置语音对讲客户端的音量 | NET_DVR_SetVoiceComClientVolume |
IPC系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
IPC系列设备 | 启动语音转发，获取编码后的音频数据 | NET_DVR_StartVoiceCom_MR_V30 |
IPC系列设备 | 转发语音数据 | NET_DVR_VoiceComSendData |
IPC系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
IPC系列设备 | 启动语音广播的PC端声音捕获 | NET_DVR_ClientAudioStart_V30 |
IPC系列设备 | 添加设备的某个语音通道到可以接收PC端声音的广播组 | NET_DVR_AddDVR_V30 |
IPC系列设备 | 从可接收PC机声音的广播组里删除该设备的语音通道 | NET_DVR_DelDVR_V30 |
IPC系列设备 | 停止语音广播的PC端声音捕获 | NET_DVR_ClientAudioStop |
透明通道 |  |  |
IPC系列设备 | 建立透明通道 | NET_DVR_SerialStart |
IPC系列设备 | 通过透明通道向设备串口发送数据 | NET_DVR_SerialSend |
IPC系列设备 | 断开透明通道 | NET_DVR_SerialStop |
向串口发送数据 |  |  |
IPC系列设备 | 直接向串口发送数据，不需要建立透明通道 | NET_DVR_SendToSerialPort |
IPC系列设备 | 直接向232串口发送数据，不需要建立透明通道 | NET_DVR_SendTo232Port |
硬盘管理 |  |  |
IPC系列设备 | 远程格式化设备硬盘 | NET_DVR_FormatDisk |
IPC系列设备 | 获取格式化硬盘的进度 | NET_DVR_GetFormatProgress |
IPC系列设备 | 关闭格式化硬盘句柄，释放资源 | NET_DVR_CloseFormatHandle |
设备维护管理 |  |  |
IPC系列设备 | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
IPC系列设备 | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
IPC系列设备 | 远程升级 | NET_DVR_Upgrade |
IPC系列设备 | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
IPC系列设备 | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
IPC系列设备 | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
IPC系列设备 | 查找设备的日志信息（可搜索带S.M.A.R.T信息的日志） | NET_DVR_FindDVRLog_V30 |
IPC系列设备 | 逐条获取查找到的日志信息 | NET_DVR_FindNextLog_V30 |
IPC系列设备 | 释放查找日志的资源 | NET_DVR_FindLogClose_V30 |
IPC系列设备 | 恢复设备默认参数 | NET_DVR_RestoreConfig |
IPC系列设备 | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
IPC系列设备 | 导出配置文件 | NET_DVR_GetConfigFile_EX |
IPC系列设备 | 导出配置文件 | NET_DVR_GetConfigFile |
IPC系列设备 | 导入配置文件 | NET_DVR_SetConfigFile_EX |
IPC系列设备 | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
IPC系列设备 | 重启设备 | NET_DVR_RebootDVR |
IPC系列设备 | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
IPC系列设备 | 设置设备参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40 不支持byZeroChanNum、bySupport、byEsataUseage、byIPCPlug、byRes
IPC系列设备 | 设置设备参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40 不支持byZeroChanNum、bySupport、byEsataUseage、byIPCPlug、byRes
IPC系列设备 | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
IPC系列设备 | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
IPC系列设备 | 获取网络参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
IPC系列设备 | 设置网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
IPC系列设备 | 获取图像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
IPC系列设备 | 设置图像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
IPC系列设备 | 获取压缩参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
IPC系列设备 | 设置压缩参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
IPC系列设备 | 获取录像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RECORD_V30
IPC系列设备 | 设置录像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RECORD_V30 不支持录像过期时间、冗余录像的设置
IPC系列设备 | 获取（云台）解码器参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
IPC系列设备 | 设置（云台）解码器参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
IPC系列设备 | 获取232串口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
IPC系列设备 | 设置232串口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
IPC系列设备 | 获取报警输入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
IPC系列设备 | 设置报警输入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
IPC系列设备 | 获取报警输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
IPC系列设备 | 设置报警输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
IPC系列设备 | 获取本地预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
IPC系列设备 | 设置本地预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30 byPreviewNumber、wSwitchTime、bySwitchSeq设置无效
IPC系列设备 | 获取视频输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30 不支持参数 struVGAPara、struMatrixPara
IPC系列设备 | 设置视频输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30 不支持参数 struVGAPara、struMatrixPara
IPC系列设备 | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
IPC系列设备 | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
IPC系列设备 | 获取异常参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
IPC系列设备 | 设置异常参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
IPC系列设备 | 获取时区和夏时制参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
IPC系列设备 | 设置时区和夏时制参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
IPC系列设备 | 获取叠加字符参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SHOWSTRING_V30
IPC系列设备 | 设置叠加字符参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SHOWSTRING_V30
IPC系列设备 | 获取网络应用(NTP/DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETAPPCFG 2CD862MF-E、2CD892P(N)-IR3不支持NTP
IPC系列设备 | 设置网络应用(NTP/DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETAPPCFG 2CD862MF-E、2CD892P(N)-IR3不支持NTP
IPC系列设备 | 获取网络应用(NTP)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NTPPARA 2CD862MF-E、2CD892P(N)-IR3不支持NTP
IPC系列设备 | 设置网络应用(NTP)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NTPPARA 2CD862MF-E、2CD892P(N)-IR3不支持NTP
IPC系列设备 | 获取网络应用(DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
IPC系列设备 | 设置网络应用(DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
IPC系列设备 | 获取网络应用(EMAIL)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
IPC系列设备 | 设置网络应用(EMAIL)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
IPC系列设备 | 获取NFS（网络文件系统）参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NFSCFG
IPC系列设备 | 设置NFS（网络文件系统）参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NFSCFG
IPC系列设备 | 获取硬盘管理参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HDCFG
IPC系列设备 | 设置硬盘管理参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HDCFG
IPC系列设备 | 获取语音对讲音频参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSION_AUDIO
IPC系列设备 | 设置语音对讲音频参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSION_AUDIO
IPC系列设备 | 获取IP监控设备无线参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_WIFI_CFG 带无线WIFI功能的IPC支持
IPC系列设备 | 设置IP监控设备无线参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_WIFI_CFG 带无线WIFI功能的IPC支持
IPC系列设备 | 获取IP监控设备网口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_WIFI_WORKMODE 带无线WIFI功能的IPC支持
IPC系列设备 | 设置IP监控设备网口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_WIFI_WORKMODE 带无线WIFI功能的IPC支持
IPC系列设备 | 获取网络硬盘接入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NET_DISKCFG
IPC系列设备 | 设置网络硬盘接入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NET_DISKCFG
IPC系列设备 | 获取CCD参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_CAMERAPARAMCFG
IPC系列设备 | 设置CCD参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_CAMERAPARAMCFG
IPC系列设备 | 获取设备报警输出 | NET_DVR_GetAlarmOut |
IPC系列设备 | 获取设备报警输出 | NET_DVR_GetAlarmOut_V30 |
IPC系列设备 | 设置设备报警输出 | NET_DVR_SetAlarmOut |
IPC系列设备 | 获取RTSP协议参数 | NET_DVR_GetRtspConfig |
IPC系列设备 | 设置RTSP协议参数 | NET_DVR_SetRtspConfig |
IPC系列设备 | 获取设备支持的云台协议 | NET_DVR_GetPTZProtocol |
IPC系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG |
IPC系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG_V30 | 不支持辅口缩放 dwMinorScale
IPC系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG |
IPC系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG_V30 | 不支持辅口缩放dwMinorScale
获取IPC协议列表 |  |  |
获取设备能力集 |  |  |
IPC系列设备 | 获取设备能力集 | NET_DVR_GetDeviceAbility | 支持的能力类型：DEVICE_ALL_ABILITY、IPC_FRONT_PARAMETER、DEVICE_SOFTHARDWARE_ABILITY、DEVICE_NETWORK_ABILITY、DEVICE_ENCODE_ALL_ABILITY、DEVICE_ENCODE_CURRENT、 支持的IPC： 886、876、877、976；754、854、883；863、893、833、8153、853、763、793、733、7153、753等

以下给出设备支持的编码类型和封装格式

设备型号 | 封装格式 | 编码类型 | 备注
DS-2CD876 | RTP | 标准H264或MJPEG | 支持的编码类型需根据设备的能力而定
DS-2CD883 | RTP | 标准H264或MJPEG | 支持的编码类型需根据设备的能力而定


智能高清IPC功能接口介绍

智能高清IPC除通用接口的功能外，还支持以下接口的功能，包括预览、视频数据获取、报警上传和远程参数配置等。

设备型号 | 功能 | 接口 | 相关参数
预览相关功能 |  |  |
智能高清IPC | 设置播放显示模式 | NET_DVR_SetShowMode |
智能高清IPC | 主码流动态产生一个关键帧 | NET_DVR_MakeKeyFrame |
智能高清IPC | 子码流动态产生一个关键帧 | NET_DVR_MakeKeyFrameSub |
智能高清IPC | 实时预览 | NET_DVR_RealPlay_V30 |
智能高清IPC | 停止预览 | NET_DVR_StopRealPlay |
智能高清IPC | 获取预览时用来解码和显示的播放器句柄 | NET_DVR_GetRealPlayerIndex |
智能高清IPC | 获取预览视频显示参数 | NET_DVR_ClientGetVideoEffect |
智能高清IPC | 设置预览视频显示参数 | NET_DVR_ClientSetVideoEffect |
智能高清IPC | 预览画面叠加字符和图像 | NET_DVR_RigisterDrawFun |
智能高清IPC | 设置播放库的帧缓冲区个数 | NET_DVR_SetPlayerBufNumber |
智能高清IPC | 设置解码时丢弃B帧的个数 | NET_DVR_ThrowBFrame |
智能高清IPC | 初始化系统中的显示设备 | NET_DVR_InitDDrawDevice |
智能高清IPC | 释放显示设备占用的资源 | NET_DVR_ReleaseDDrawDevice |
智能高清IPC | 获取系统的显示设备的数量 | NET_DVR_GetDDrawDeviceTotalNums |
智能高清IPC | 设置播放窗口所使用的显卡 | NET_DVR_SetDDrawDevice |
智能高清IPC | 注册回调函数，捕获实时码流数据 | NET_DVR_SetRealDataCallBack |
智能高清IPC | 注册回调函数，捕获实时码流数据（标准码流） | NET_DVR_SetStandardDataCallBack |
智能高清IPC | 捕获数据并存放到指定的文件中 | NET_DVR_SaveRealData |
智能高清IPC | 停止数据捕获 | NET_DVR_StopSaveRealData |
智能高清IPC | 单帧数据捕获并保存成BMP位图 | NET_DVR_CapturePicture |
布防、撤防和监听 |  |  |
智能高清IPC | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 | COMM_UPLOAD_PLATE_RESULT： NET_DVR_PLATE_RESULT COMM_ITC_STATUS_DETECT_RESULT： NET_ITC_STATUS_DETECT_RESULT
智能高清IPC | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
智能高清IPC | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
硬盘管理 |  |  |
智能高清IPC | 远程格式化设备硬盘 | NET_DVR_FormatDisk |
智能高清IPC | 获取格式化硬盘的进度 | NET_DVR_GetFormatProgress |
智能高清IPC | 关闭格式化硬盘句柄，释放资源 | NET_DVR_CloseFormatHandle |
设备维护管理 |  |  |
智能高清IPC | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
智能高清IPC | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
智能高清IPC | 远程升级 | NET_DVR_Upgrade |
智能高清IPC | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
智能高清IPC | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
智能高清IPC | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
智能高清IPC | 查找设备的日志信息（可搜索带S.M.A.R.T信息的日志） | NET_DVR_FindDVRLog_V30 |
智能高清IPC | 逐条获取查找到的日志信息 | NET_DVR_FindNextLog_V30 |
智能高清IPC | 释放查找日志的资源 | NET_DVR_FindLogClose_V30 |
智能高清IPC | 恢复设备默认参数 | NET_DVR_RestoreConfig |
智能高清IPC | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
智能高清IPC | 导出配置文件 | NET_DVR_GetConfigFile_EX |
智能高清IPC | 导出配置文件 | NET_DVR_GetConfigFile |
智能高清IPC | 导入配置文件 | NET_DVR_SetConfigFile_EX |
智能高清IPC | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
智能高清IPC | 重启设备 | NET_DVR_RebootDVR |
智能高清IPC | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
智能高清IPC | 设置设备参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40 不支持byZeroChanNum、bySupport、byEsataUseage、byIPCPlug、byRes
智能高清IPC | 设置设备参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40 不支持byZeroChanNum、bySupport、byEsataUseage、byIPCPlug、byRes
智能高清IPC | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
智能高清IPC | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
智能高清IPC | 获取网络参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
智能高清IPC | 设置网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
智能高清IPC | 获取压缩参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
智能高清IPC | 设置压缩参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
智能高清IPC | 获取（云台）解码器参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
智能高清IPC | 设置（云台）解码器参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
智能高清IPC | 获取232串口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
智能高清IPC | 设置232串口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
智能高清IPC | 获取本地预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
智能高清IPC | 设置本地预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30 byPreviewNumber、wSwitchTime、bySwitchSeq设置无效
智能高清IPC | 获取视频输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30 不支持参数 struVGAPara、struMatrixPara
智能高清IPC | 设置视频输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30 不支持参数 struVGAPara、struMatrixPara
智能高清IPC | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
智能高清IPC | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
智能高清IPC | 获取异常参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
智能高清IPC | 设置异常参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
智能高清IPC | 获取叠加字符参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SHOWSTRING_V30
智能高清IPC | 设置叠加字符参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SHOWSTRING_V30
智能高清IPC | 获取网络应用(NTP/DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
智能高清IPC | 设置网络应用(NTP/DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
智能高清IPC | 获取网络应用(NTP)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NTPPARA
智能高清IPC | 设置网络应用(NTP)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NTPPARA
智能高清IPC | 获取网络应用(DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
智能高清IPC | 设置网络应用(DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
智能高清IPC | 获取网络应用(EMAIL)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
智能高清IPC | 设置网络应用(EMAIL)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
智能高清IPC | 获取NFS（网络文件系统）参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NFSCFG
智能高清IPC | 设置NFS（网络文件系统）参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NFSCFG
智能高清IPC | 获取FTP上传参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_GET_FTPCFG
智能高清IPC | 设置FTP上传参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_GET_FTPCFG
智能高清IPC | 获取CCD参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_CAMERAPARAMCFG
智能高清IPC | 设置CCD参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_CAMERAPARAMCFG
智能高清IPC | 获取IO输入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IO_INCFG
智能高清IPC | 设置IO输入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IO_INCFG
智能高清IPC | 获取IO输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IO_OUTCFG
智能高清IPC | 设置IO输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IO_OUTCFG
智能高清IPC | 获取闪光灯参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_FLASH_OUTCFG
智能高清IPC | 设置闪光灯参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_FLASH_OUTCFG
智能高清IPC | 获取红绿灯功能参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_LIGHTSNAPCFG
智能高清IPC | 设置红绿灯功能参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_LIGHTSNAPCFG
智能高清IPC | 获取测速功能参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_MEASURESPEEDCFG
智能高清IPC | 设置测速功能参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_MEASURESPEEDCFG
智能高清IPC | 获取图像叠加信息参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IMAGEOVERLAYCFG
智能高清IPC | 设置图像叠加信息参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IMAGEOVERLAYCFG
智能高清IPC | 获取单IO触发功能参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SNAPCFG
智能高清IPC | 设置单IO触发功能参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SNAPCFG
智能高清IPC | 获取虚拟线圈参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_VTPARAM
智能高清IPC | 设置虚拟线圈参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_VTPARAM
智能高清IPC | 获取使能参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SNAPENABLECFG
智能高清IPC | 设置使能参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SNAPENABLECFG
智能高清IPC | 获取卡口电警参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_POSTEPOLICECFG
智能高清IPC | 设置卡口电警参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_POSTEPOLICECFG
智能高清IPC | 获取JPEG参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_JPEGCFG_V30
智能高清IPC | 设置JPEG参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_JPEGCFG_V30
智能高清IPC | 获取车牌识别参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SPRCFG
智能高清IPC | 设置车牌识别参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SPRCFG
智能高清IPC | 获取车牌亮度补偿参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PLCCFG
智能高清IPC | 设置车牌亮度补偿参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PLCCFG
智能高清IPC | 获取设备状态参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICESTATECFG
智能高清IPC | 设置设备状态参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICESTATECFG
智能高清IPC | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG |
智能高清IPC | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG_V30 | 不支持辅口缩放 dwMinorScale
智能高清IPC | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG |
智能高清IPC | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG_V30 | 不支持辅口缩放dwMinorScale
获取设备能力集 |  |  |
智能高清IPC | 获取设备能力集 | NET_DVR_GetDeviceAbility | 支持的能力类型：DEVICE_ALL_ABILITY、DEVICE_SOFTHARDWARE_ABILITY、DEVICE_NETWORK_ABILITY、DEVICE_ENCODE_ALL_ABILITY、DEVICE_ENCODE_CURRENT、 IPC_FRONT_PARAMETER、 SNAPCAMERA_ABILITY


智能行为分析设备功能接口介绍

智能行为分析设备除通用接口的功能外，还支持以下接口的功能，包括预览、视频数据获取、录像文件查找、回放和下载、手动录像、报警上传、语音对讲、远程参数配置和行为智能参数配置等。

设备型号 | 功能 | 接口 | 相关参数
预览相关功能 |  |  |
iDS-6101HF系列设备 | 设置播放显示模式 | NET_DVR_SetShowMode |
iDS-6101HF系列设备 | 主码流动态产生一个关键帧 | NET_DVR_MakeKeyFrame |
iDS-6101HF系列设备 | 子码流动态产生一个关键帧 | NET_DVR_MakeKeyFrameSub |
iDS-6101HF系列设备 | 实时预览 | NET_DVR_RealPlay_V30 |
iDS-6101HF系列设备 | 停止预览 | NET_DVR_StopRealPlay |
iDS-6101HF系列设备 | 获取预览时用来解码和显示的播放器句柄 | NET_DVR_GetRealPlayerIndex |
iDS-6101HF系列设备 | 获取预览视频显示参数 | NET_DVR_ClientGetVideoEffect |
iDS-6101HF系列设备 | 设置预览视频显示参数 | NET_DVR_ClientSetVideoEffect |
iDS-6101HF系列设备 | 预览画面叠加字符和图像 | NET_DVR_RigisterDrawFun |
iDS-6101HF系列设备 | 设置播放库的帧缓冲区个数 | NET_DVR_SetPlayerBufNumber |
iDS-6101HF系列设备 | 设置解码时丢弃B帧的个数 | NET_DVR_ThrowBFrame |
iDS-6101HF系列设备 | 设置声音播放模式 | NET_DVR_SetAudioMode |
iDS-6101HF系列设备 | 独占声卡模式下开启声音 | NET_DVR_OpenSound |
iDS-6101HF系列设备 | 独占声卡模式下关闭声音 | NET_DVR_CloseSound |
iDS-6101HF系列设备 | 共享声卡模式下开启声音 | NET_DVR_OpenSoundShare |
iDS-6101HF系列设备 | 共享声卡模式下关闭声音 | NET_DVR_CloseSoundShare |
iDS-6101HF系列设备 | 调节播放音量 | NET_DVR_Volume |
iDS-6101HF系列设备 | 初始化系统中的显示设备 | NET_DVR_InitDDrawDevice |
iDS-6101HF系列设备 | 释放显示设备占用的资源 | NET_DVR_ReleaseDDrawDevice |
iDS-6101HF系列设备 | 获取系统的显示设备的数量 | NET_DVR_GetDDrawDeviceTotalNums |
iDS-6101HF系列设备 | 设置播放窗口所使用的显卡 | NET_DVR_SetDDrawDevice |
iDS-6101HF系列设备 | 注册回调函数，捕获实时码流数据 | NET_DVR_SetRealDataCallBack |
iDS-6101HF系列设备 | 注册回调函数，捕获实时码流数据（标准码流） | NET_DVR_SetStandardDataCallBack |
iDS-6101HF系列设备 | 捕获数据并存放到指定的文件中 | NET_DVR_SaveRealData |
iDS-6101HF系列设备 | 停止数据捕获 | NET_DVR_StopSaveRealData |
iDS-6101HF系列设备 | 单帧数据捕获并保存成BMP位图 | NET_DVR_CapturePicture |
iDS-6101HF系列设备 | 单帧数据捕获并保存成JPEG图 | NET_DVR_CaptureJPEGPicture |
iDS-6101HF系列设备 | 单帧数据捕获并保存成JPEG存放在指定的内存空间中 | NET_DVR_CaptureJPEGPicture_NEW |
录像文件操作的相关功能 |  |  |
iDS-6101HF系列设备 | 根据文件类型、时间查找设备录像文件 | NET_DVR_FindFile_V30 | NET_DVR_FILECOND（不支持带卡号的查询）
iDS-6101HF系列设备 | 逐个获取查找到的文件信息 | NET_DVR_FindNextFile_V30 |
iDS-6101HF系列设备 | 关闭文件查找，释放资源 | NET_DVR_FindClose_V30 |
回放录像文件及相关 |  |  |
iDS-6101HF系列设备 | 按文件名回放录像文件 | NET_DVR_PlayBackByName |
iDS-6101HF系列设备 | 按时间回放录像文件 | NET_DVR_PlayBackByTime |
iDS-6101HF系列设备 | 控制录像回放的状态 | NET_DVR_PlayBackControl_V40 | NET_DVR_PLAYSETTIME控制不支持 NET_DVR_PLAYGETTOTALLEN控制不支持
iDS-6101HF系列设备 | 停止回放录像文件 | NET_DVR_StopPlayBack |
iDS-6101HF系列设备 | 捕获回放的录像数据，并保存成文件 | NET_DVR_PlayBackSaveData |
iDS-6101HF系列设备 | 停止保存录象数据 | NET_DVR_StopPlayBackSave |
iDS-6101HF系列设备 | 注册回调函数，捕获录像数据 | NET_DVR_SetPlayDataCallBack |
iDS-6101HF系列设备 | 获取录像回放时显示的OSD时间 | NET_DVR_GetPlayBackOsdTime |
iDS-6101HF系列设备 | 录像回放时抓图，并保存在文件中 | NET_DVR_PlayBackCaptureFile |
iDS-6101HF系列设备 | 刷新显示回放窗口 | NET_DVR_RefreshPlay |
iDS-6101HF系列设备 | 获取回放时用来解码显示的播放库句柄 | NET_DVR_GetPlayBackPlayerIndex |
录像文件下载及相关 |  |  |
iDS-6101HF系列设备 | 按文件名下载录像文件 | NET_DVR_GetFileByName |
iDS-6101HF系列设备 | 按时间下载录像文件 | NET_DVR_GetFileByTime |
iDS-6101HF系列设备 | 控制录像下载的状态 | NET_DVR_PlayBackControl |
iDS-6101HF系列设备 | 停止下载录像文件 | NET_DVR_StopGetFile |
iDS-6101HF系列设备 | 获取当前下载录像文件的进度 | NET_DVR_GetDownloadPos |
录像文件锁定与解锁 |  |  |
iDS-6101HF系列设备 | 按文件名锁定录像文件 | NET_DVR_LockFileByName |
iDS-6101HF系列设备 | 按文件名解锁录像文件 | NET_DVR_UnlockFileByName |
手动录像 |  |  |
iDS-6101HF系列设备 | 远程手动启动设备录像 | NET_DVR_StartDVRRecord |
iDS-6101HF系列设备 | 远程手动停止设备录像 | NET_DVR_StopDVRRecord |
布防、撤防和监听 |  |  |
iDS-6101HF系列设备 | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 |
iDS-6101HF系列设备 | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
iDS-6101HF系列设备 | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
iDS-6101HF系列设备 | 启动监听，接收设备主动上传的报警等信息（支持多线程） | NET_DVR_StartListen_V30 |
iDS-6101HF系列设备 | 停止监听（支持多线程） | NET_DVR_StopListen_V30 |
远程面板控制 |  |  |
iDS-6101HF系列设备 | 远程控制面板上的按键 | NET_DVR_ClickKey |
iDS-6101HF系列设备 | 禁用设备本地面板控制 | NET_DVR_LockPanel |
iDS-6101HF系列设备 | 恢复设备本地面板控制 | NET_DVR_UnLockPanel |
云台控制 |  |  |
iDS-6101HF系列设备 | 云台控制操作(需先启动图象预览) | NET_DVR_PTZControl |
iDS-6101HF系列设备 | 云台控制操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZControl好，RTSP预览时不支持此功能） | NET_DVR_PTZControl_EX |
iDS-6101HF系列设备 | 云台控制操作(不用启动图象预览) | NET_DVR_PTZControl_Other |
iDS-6101HF系列设备 | 带速度的云台控制操作(需先启动图象预览) | NET_DVR_PTZControlWithSpeed |
iDS-6101HF系列设备 | 带速度的云台控制操作(不用启动图象预览) | NET_DVR_PTZControlWithSpeed_Other |
iDS-6101HF系列设备 | 云台预置点操作（需先启动预览） | NET_DVR_PTZPreset |
iDS-6101HF系列设备 | 云台预置点操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZPreset好，RTSP预览时不支持此功能） | NET_DVR_PTZPreset_EX |
iDS-6101HF系列设备 | 云台预置点操作 | NET_DVR_PTZPreset_Other |
iDS-6101HF系列设备 | 云台巡航操作，需先启动预览 | NET_DVR_PTZCruise |
iDS-6101HF系列设备 | 云台巡航操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZCruise好，RTSP预览时不支持此功能） | NET_DVR_PTZCruise_EX |
iDS-6101HF系列设备 | 云台巡航操作 | NET_DVR_PTZCruise_Other |
iDS-6101HF系列设备 | 云台轨迹操作，需先启动预览 | NET_DVR_PTZTrack |
iDS-6101HF系列设备 | 云台轨迹操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZTrack好，RTSP预览时不支持此功能） | NET_DVR_PTZTrack_EX |
iDS-6101HF系列设备 | 云台轨迹操作 | NET_DVR_PTZTrack_Other |
iDS-6101HF系列设备 | 透明云台操作，需先启动预览 | NET_DVR_TransPTZ |
iDS-6101HF系列设备 | 透明云台操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_TransPTZ好，RTSP预览时不支持此功能） | NET_DVR_TransPTZ_EX |
iDS-6101HF系列设备 | 透明云台操作 | NET_DVR_TransPTZ_Other |
语音对讲、转发及广播 |  |  |
iDS-6101HF系列设备 | 启动语音对讲 | NET_DVR_StartVoiceCom_V30 |
iDS-6101HF系列设备 | 设置语音对讲客户端的音量 | NET_DVR_SetVoiceComClientVolume |
iDS-6101HF系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
iDS-6101HF系列设备 | 启动语音转发，获取编码后的音频数据 | NET_DVR_StartVoiceCom_MR_V30 |
iDS-6101HF系列设备 | 转发语音数据 | NET_DVR_VoiceComSendData |
iDS-6101HF系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
iDS-6101HF系列设备 | 启动语音广播的PC端声音捕获 | NET_DVR_ClientAudioStart_V30 |
iDS-6101HF系列设备 | 添加设备的某个语音通道到可以接收PC端声音的广播组 | NET_DVR_AddDVR_V30 |
iDS-6101HF系列设备 | 从可接收PC机声音的广播组里删除该设备的语音通道 | NET_DVR_DelDVR_V30 |
iDS-6101HF系列设备 | 停止语音广播的PC端声音捕获 | NET_DVR_ClientAudioStop |
透明通道 |  |  |
iDS-6101HF系列设备 | 建立透明通道 | NET_DVR_SerialStart |
iDS-6101HF系列设备 | 通过透明通道向设备串口发送数据 | NET_DVR_SerialSend |
iDS-6101HF系列设备 | 断开透明通道 | NET_DVR_SerialStop |
向串口发送数据 |  |  |
iDS-6101HF系列设备 | 建立透明通道 | NET_DVR_SerialStart |
iDS-6101HF系列设备 | 通过透明通道向设备串口发送数据 | NET_DVR_SerialSend |
硬盘管理 |  |  |
iDS-6101HF系列设备 | 远程格式化设备硬盘 | NET_DVR_FormatDisk |
iDS-6101HF系列设备 | 获取格式化硬盘的进度 | NET_DVR_GetFormatProgress |
iDS-6101HF系列设备 | 关闭格式化硬盘句柄，释放资源 | NET_DVR_CloseFormatHandle |
设备维护管理 |  |  |
iDS-6101HF系列设备 | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
iDS-6101HF系列设备 | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
iDS-6101HF系列设备 | 远程升级 | NET_DVR_Upgrade |
iDS-6101HF系列设备 | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
iDS-6101HF系列设备 | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
iDS-6101HF系列设备 | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
iDS-6101HF系列设备 | 查找设备的日志信息（可搜索带S.M.A.R.T信息的日志） | NET_DVR_FindDVRLog_V30 |
iDS-6101HF系列设备 | 逐条获取查找到的日志信息 | NET_DVR_FindNextLog_V30 |
iDS-6101HF系列设备 | 释放查找日志的资源 | NET_DVR_FindLogClose_V30 |
iDS-6101HF系列设备 | 恢复设备默认参数 | NET_DVR_RestoreConfig |
iDS-6101HF系列设备 | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
iDS-6101HF系列设备 | 导出配置文件 | NET_DVR_GetConfigFile |
iDS-6101HF系列设备 | 导入配置文件 | NET_DVR_SetConfigFile_EX |
iDS-6101HF系列设备 | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
iDS-6101HF系列设备 | 重启设备 | NET_DVR_RebootDVR |
iDS-6101HF系列设备 | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
iDS-6101HF系列设备 | 获取设备报警输出 | NET_DVR_GetAlarmOut_V30 |
iDS-6101HF系列设备 | 设置设备报警输出 | NET_DVR_SetAlarmOut |
iDS-6101HF系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG_V30 |
iDS-6101HF系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG |
iDS-6101HF系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG_V30 |
iDS-6101HF系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG |
iDS-6101HF系列设备 | 获取设备参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
iDS-6101HF系列设备 | 设置设备参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
iDS-6101HF系列设备 | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
iDS-6101HF系列设备 | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
iDS-6101HF系列设备 | 获取网络参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
iDS-6101HF系列设备 | 设置网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
iDS-6101HF系列设备 | 获取图像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
iDS-6101HF系列设备 | 设置图像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
iDS-6101HF系列设备 | 获取压缩参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
iDS-6101HF系列设备 | 设置压缩参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
iDS-6101HF系列设备 | 获取录像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RECORD_V30
iDS-6101HF系列设备 | 设置录像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RECORD_V30
iDS-6101HF系列设备 | 获取（云台）解码器参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
iDS-6101HF系列设备 | 设置（云台）解码器参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
iDS-6101HF系列设备 | 获取232串口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
iDS-6101HF系列设备 | 设置232串口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
iDS-6101HF系列设备 | 获取报警输入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
iDS-6101HF系列设备 | 设置报警输入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
iDS-6101HF系列设备 | 获取报警输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
iDS-6101HF系列设备 | 设置报警输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
iDS-6101HF系列设备 | 获取本地预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
iDS-6101HF系列设备 | 设置本地预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
iDS-6101HF系列设备 | 获取辅助预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
iDS-6101HF系列设备 | 设置辅助预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
iDS-6101HF系列设备 | 获取视频输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30
iDS-6101HF系列设备 | 设置视频输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30
iDS-6101HF系列设备 | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
iDS-6101HF系列设备 | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
iDS-6101HF系列设备 | 获取异常参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
iDS-6101HF系列设备 | 设置异常参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
iDS-6101HF系列设备 | 获取时区和夏时制参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
iDS-6101HF系列设备 | 设置时区和夏时制参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
iDS-6101HF系列设备 | 获取叠加字符参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SHOWSTRING_V30
iDS-6101HF系列设备 | 设置叠加字符参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SHOWSTRING_V30
iDS-6101HF系列设备 | 获取报警触发辅助输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
iDS-6101HF系列设备 | 设置报警触发辅助输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
iDS-6101HF系列设备 | 获取网络应用(NTP/DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
iDS-6101HF系列设备 | 设置网络应用(NTP/DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
iDS-6101HF系列设备 | 获取网络应用(NTP)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NTPPARA
iDS-6101HF系列设备 | 设置网络应用(NTP)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NTPPARA
iDS-6101HF系列设备 | 获取网络应用(DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
iDS-6101HF系列设备 | 设置网络应用(DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
iDS-6101HF系列设备 | 获取网络应用(EMAIL)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
iDS-6101HF系列设备 | 设置网络应用(EMAIL)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
iDS-6101HF系列设备 | 获取NFS（网络文件系统）参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NFSCFG
iDS-6101HF系列设备 | 设置NFS（网络文件系统）参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NFSCFG
iDS-6101HF系列设备 | 获取智能控制参数 | NET_DVR_GetDVRConfig | 配置参数：NET_VCA_CTRLCFG
iDS-6101HF系列设备 | 设置智能控制参数 | NET_DVR_SetDVRConfig | 配置参数：NET_VCA_CTRLCFG
iDS-6101HF系列设备 | 获取标定信息参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_CALIBRATION_CFG
iDS-6101HF系列设备 | 设置标定信息参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_CALIBRATION_CFG
iDS-6101HF系列设备 | 获取行为分析参数 | NET_DVR_GetDVRConfig | 配置参数：NET_VCA_RULECFG
iDS-6101HF系列设备 | 设置行为分析参数 | NET_DVR_SetDVRConfig | 配置参数：NET_VCA_RULECFG
iDS-6101HF系列设备 | 获取智能信息DSP叠加配置参数 | NET_DVR_GetVCADrawMode |
iDS-6101HF系列设备 | 设置智能信息DSP叠加配置参数 | NET_DVR_SetVCADrawMode |
iDS-6101HF系列设备 | 获取内部关键字参数 | NET_DVR_GetBehaviorParamKey |
iDS-6101HF系列设备 | 设置内部关键字参数 | NET_DVR_SetBehaviorParamKey |
获取设备能力集 |  |  |
iDS-6101HF系列设备 | 获取设备能力 | NET_DVR_GetDeviceAbility | 支持的能力类型有：VCA_DEV_ABILITY（智能设备的能力）、VCA_CHAN_ABILITY（智能通道的能力）
标定校验 |  |  |
iDS-6101HF系列设备 | 标定校验 | NET_DVR_VerifyCalibration |
重启智能库 |  |  |
iDS-6101HF系列设备 | 重启使能库 | NET_VCA_RestartLib |


智能ATM设备功能接口介绍

智能ATM设备除通用接口的功能外，还支持以下接口的功能，包括预览、视频数据获取、录像文件查找、回放和下载、手动录像、报警上传、语音对讲、远程参数配置和智能参数配置等。

设备型号 | 功能 | 接口 | 相关参数
预览相关功能 |  |  |
iDS-6101HF/A系列设备 | 设置播放显示模式 | NET_DVR_SetShowMode |
iDS-6101HF/A系列设备 | 主码流动态产生一个关键帧 | NET_DVR_MakeKeyFrame |
iDS-6101HF/A系列设备 | 子码流动态产生一个关键帧 | NET_DVR_MakeKeyFrameSub |
iDS-6101HF/A系列设备 | 实时预览 | NET_DVR_RealPlay_V30 |
iDS-6101HF/A系列设备 | 停止预览 | NET_DVR_StopRealPlay |
iDS-6101HF/A系列设备 | 获取预览时用来解码和显示的播放器句柄 | NET_DVR_GetRealPlayerIndex |
iDS-6101HF/A系列设备 | 获取预览视频显示参数 | NET_DVR_ClientGetVideoEffect |
iDS-6101HF/A系列设备 | 设置预览视频显示参数 | NET_DVR_ClientSetVideoEffect |
iDS-6101HF/A系列设备 | 预览画面叠加字符和图像 | NET_DVR_RigisterDrawFun |
iDS-6101HF/A系列设备 | 设置播放库的帧缓冲区个数 | NET_DVR_SetPlayerBufNumber |
iDS-6101HF/A系列设备 | 设置解码时丢弃B帧的个数 | NET_DVR_ThrowBFrame |
iDS-6101HF/A系列设备 | 设置声音播放模式 | NET_DVR_SetAudioMode |
iDS-6101HF/A系列设备 | 独占声卡模式下开启声音 | NET_DVR_OpenSound |
iDS-6101HF/A系列设备 | 独占声卡模式下关闭声音 | NET_DVR_CloseSound |
iDS-6101HF/A系列设备 | 共享声卡模式下开启声音 | NET_DVR_OpenSoundShare |
iDS-6101HF/A系列设备 | 共享声卡模式下关闭声音 | NET_DVR_CloseSoundShare |
iDS-6101HF/A系列设备 | 调节播放音量 | NET_DVR_Volume |
iDS-6101HF/A系列设备 | 初始化系统中的显示设备 | NET_DVR_InitDDrawDevice |
iDS-6101HF/A系列设备 | 释放显示设备占用的资源 | NET_DVR_ReleaseDDrawDevice |
iDS-6101HF/A系列设备 | 获取系统的显示设备的数量 | NET_DVR_GetDDrawDeviceTotalNums |
iDS-6101HF/A系列设备 | 设置播放窗口所使用的显卡 | NET_DVR_SetDDrawDevice |
iDS-6101HF/A系列设备 | 注册回调函数，捕获实时码流数据 | NET_DVR_SetRealDataCallBack |
iDS-6101HF/A系列设备 | 注册回调函数，捕获实时码流数据（标准码流） | NET_DVR_SetStandardDataCallBack |
iDS-6101HF/A系列设备 | 捕获数据并存放到指定的文件中 | NET_DVR_SaveRealData |
iDS-6101HF/A系列设备 | 停止数据捕获 | NET_DVR_StopSaveRealData |
iDS-6101HF/A系列设备 | 单帧数据捕获并保存成BMP位图 | NET_DVR_CapturePicture |
iDS-6101HF/A系列设备 | 单帧数据捕获并保存成JPEG图 | NET_DVR_CaptureJPEGPicture |
iDS-6101HF/A系列设备 | 单帧数据捕获并保存成JPEG存放在指定的内存空间中 | NET_DVR_CaptureJPEGPicture_NEW |
录像文件操作的相关功能 |  |  |
iDS-6101HF/A系列设备 | 根据文件类型、时间查找设备录像文件 | NET_DVR_FindFile_V30 | NET_DVR_FILECOND（不支持带卡号的查询）
iDS-6101HF/A系列设备 | 逐个获取查找到的文件信息 | NET_DVR_FindNextFile_V30 |
iDS-6101HF/A系列设备 | 关闭文件查找，释放资源 | NET_DVR_FindClose_V30 |
回放录像文件及相关 |  |  |
iDS-6101HF/A系列设备 | 按文件名回放录像文件 | NET_DVR_PlayBackByName |
iDS-6101HF/A系列设备 | 按时间回放录像文件 | NET_DVR_PlayBackByTime |
iDS-6101HF/A系列设备 | 控制录像回放的状态 | NET_DVR_PlayBackControl_V40 | NET_DVR_PLAYSETTIME控制不支持 NET_DVR_PLAYGETTOTALLEN控制不支持
iDS-6101HF/A系列设备 | 停止回放录像文件 | NET_DVR_StopPlayBack |
iDS-6101HF/A系列设备 | 捕获回放的录像数据，并保存成文件 | NET_DVR_PlayBackSaveData |
iDS-6101HF/A系列设备 | 停止保存录象数据 | NET_DVR_StopPlayBackSave |
iDS-6101HF/A系列设备 | 注册回调函数，捕获录像数据 | NET_DVR_SetPlayDataCallBack |
iDS-6101HF/A系列设备 | 获取录像回放时显示的OSD时间 | NET_DVR_GetPlayBackOsdTime |
iDS-6101HF/A系列设备 | 录像回放时抓图，并保存在文件中 | NET_DVR_PlayBackCaptureFile |
iDS-6101HF/A系列设备 | 刷新显示回放窗口 | NET_DVR_RefreshPlay |
iDS-6101HF/A系列设备 | 获取回放时用来解码显示的播放库句柄 | NET_DVR_GetPlayBackPlayerIndex |
录像文件下载及相关 |  |  |
iDS-6101HF/A系列设备 | 按文件名下载录像文件 | NET_DVR_GetFileByName |
iDS-6101HF/A系列设备 | 按时间下载录像文件 | NET_DVR_GetFileByTime |
iDS-6101HF/A系列设备 | 控制录像下载的状态 | NET_DVR_PlayBackControl |
iDS-6101HF/A系列设备 | 停止下载录像文件 | NET_DVR_StopGetFile |
iDS-6101HF/A系列设备 | 获取当前下载录像文件的进度 | NET_DVR_GetDownloadPos |
录像文件锁定与解锁 |  |  |
iDS-6101HF/A系列设备 | 按文件名锁定录像文件 | NET_DVR_LockFileByName |
iDS-6101HF/A系列设备 | 按文件名解锁录像文件 | NET_DVR_UnlockFileByName |
手动录像 |  |  |
iDS-6101HF/A系列设备 | 远程手动启动设备录像 | NET_DVR_StartDVRRecord |
iDS-6101HF/A系列设备 | 远程手动停止设备录像 | NET_DVR_StopDVRRecord |
布防、撤防和监听 |  |  |
iDS-6101HF/A系列设备 | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 |
iDS-6101HF/A系列设备 | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
iDS-6101HF/A系列设备 | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
iDS-6101HF/A系列设备 | 启动监听，接收设备主动上传的报警等信息（支持多线程） | NET_DVR_StartListen_V30 |
iDS-6101HF/A系列设备 | 停止监听（支持多线程） | NET_DVR_StopListen_V30 |
远程面板控制 |  |  |
iDS-6101HF/A系列设备 | 远程控制面板上的按键 | NET_DVR_ClickKey |
iDS-6101HF/A系列设备 | 禁用设备本地面板控制 | NET_DVR_LockPanel |
iDS-6101HF/A系列设备 | 恢复设备本地面板控制 | NET_DVR_UnLockPanel |
云台控制 |  |  |
iDS-6101HF/A系列设备 | 云台控制操作(需先启动图象预览) | NET_DVR_PTZControl |
iDS-6101HF/A系列设备 | 云台控制操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZControl好，RTSP预览时不支持此功能） | NET_DVR_PTZControl_EX |
iDS-6101HF/A系列设备 | 云台控制操作(不用启动图象预览) | NET_DVR_PTZControl_Other |
iDS-6101HF/A系列设备 | 带速度的云台控制操作(需先启动图象预览) | NET_DVR_PTZControlWithSpeed |
iDS-6101HF/A系列设备 | 带速度的云台控制操作(不用启动图象预览) | NET_DVR_PTZControlWithSpeed_Other |
iDS-6101HF/A系列设备 | 云台预置点操作（需先启动预览） | NET_DVR_PTZPreset |
iDS-6101HF/A系列设备 | 云台预置点操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZPreset好，RTSP预览时不支持此功能） | NET_DVR_PTZPreset_EX |
iDS-6101HF/A系列设备 | 云台预置点操作 | NET_DVR_PTZPreset_Other |
iDS-6101HF/A系列设备 | 云台巡航操作，需先启动预览 | NET_DVR_PTZCruise |
iDS-6101HF/A系列设备 | 云台巡航操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZCruise好，RTSP预览时不支持此功能） | NET_DVR_PTZCruise_EX |
iDS-6101HF/A系列设备 | 云台巡航操作 | NET_DVR_PTZCruise_Other |
iDS-6101HF/A系列设备 | 云台轨迹操作，需先启动预览 | NET_DVR_PTZTrack |
iDS-6101HF/A系列设备 | 云台轨迹操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZTrack好，RTSP预览时不支持此功能） | NET_DVR_PTZTrack_EX |
iDS-6101HF/A系列设备 | 云台轨迹操作 | NET_DVR_PTZTrack_Other |
iDS-6101HF/A系列设备 | 透明云台操作，需先启动预览 | NET_DVR_TransPTZ |
iDS-6101HF/A系列设备 | 透明云台操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_TransPTZ好，RTSP预览时不支持此功能） | NET_DVR_TransPTZ_EX |
iDS-6101HF/A系列设备 | 透明云台操作 | NET_DVR_TransPTZ_Other |
语音对讲、转发及广播 |  |  |
iDS-6101HF/A系列设备 | 启动语音对讲 | NET_DVR_StartVoiceCom_V30 |
iDS-6101HF/A系列设备 | 设置语音对讲客户端的音量 | NET_DVR_SetVoiceComClientVolume |
iDS-6101HF/A系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
iDS-6101HF/A系列设备 | 启动语音转发，获取编码后的音频数据 | NET_DVR_StartVoiceCom_MR_V30 |
iDS-6101HF/A系列设备 | 转发语音数据 | NET_DVR_VoiceComSendData |
iDS-6101HF/A系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
iDS-6101HF/A系列设备 | 启动语音广播的PC端声音捕获 | NET_DVR_ClientAudioStart_V30 |
iDS-6101HF/A系列设备 | 添加设备的某个语音通道到可以接收PC端声音的广播组 | NET_DVR_AddDVR_V30 |
iDS-6101HF/A系列设备 | 从可接收PC机声音的广播组里删除该设备的语音通道 | NET_DVR_DelDVR_V30 |
iDS-6101HF/A系列设备 | 停止语音广播的PC端声音捕获 | NET_DVR_ClientAudioStop |
透明通道 |  |  |
iDS-6101HF/A系列设备 | 建立透明通道 | NET_DVR_SerialStart |
iDS-6101HF/A系列设备 | 通过透明通道向设备串口发送数据 | NET_DVR_SerialSend |
iDS-6101HF/A系列设备 | 断开透明通道 | NET_DVR_SerialStop |
向串口发送数据 |  |  |
iDS-6101HF/A系列设备 | 直接向串口发送数据，不需要建立透明通道 | NET_DVR_SendToSerialPort |
iDS-6101HF/A系列设备 | 直接向232串口发送数据，不需要建立透明通道 | NET_DVR_SendTo232Port |
硬盘管理 |  |  |
iDS-6101HF/A系列设备 | 远程格式化设备硬盘 | NET_DVR_FormatDisk |
iDS-6101HF/A系列设备 | 获取格式化硬盘的进度 | NET_DVR_GetFormatProgress |
iDS-6101HF/A系列设备 | 关闭格式化硬盘句柄，释放资源 | NET_DVR_CloseFormatHandle |
设备维护管理 |  |  |
iDS-6101HF/A系列设备 | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
iDS-6101HF/A系列设备 | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
iDS-6101HF/A系列设备 | 远程升级 | NET_DVR_Upgrade |
iDS-6101HF/A系列设备 | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
iDS-6101HF/A系列设备 | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
iDS-6101HF/A系列设备 | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
iDS-6101HF/A系列设备 | 查找设备的日志信息（可搜索带S.M.A.R.T信息的日志） | NET_DVR_FindDVRLog_V30 |
iDS-6101HF/A系列设备 | 逐条获取查找到的日志信息 | NET_DVR_FindNextLog_V30 |
iDS-6101HF/A系列设备 | 释放查找日志的资源 | NET_DVR_FindLogClose_V30 |
iDS-6101HF/A系列设备 | 恢复设备默认参数 | NET_DVR_RestoreConfig |
iDS-6101HF/A系列设备 | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
iDS-6101HF/A系列设备 | 导出配置文件 | NET_DVR_GetConfigFile |
iDS-6101HF/A系列设备 | 导入配置文件 | NET_DVR_SetConfigFile_EX |
iDS-6101HF/A系列设备 | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
iDS-6101HF/A系列设备 | 重启设备 | NET_DVR_RebootDVR |
iDS-6101HF/A系列设备 | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
iDS-6101HF/A系列设备 | 获取设备报警输出 | NET_DVR_GetAlarmOut_V30 |
iDS-6101HF/A系列设备 | 设置设备报警输出 | NET_DVR_SetAlarmOut |
iDS-6101HF/A系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG_V30 |
iDS-6101HF/A系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG_V30 |
iDS-6101HF/A系列设备 | 获取设备参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
iDS-6101HF/A系列设备 | 设置设备参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
iDS-6101HF/A系列设备 | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
iDS-6101HF/A系列设备 | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
iDS-6101HF/A系列设备 | 获取网络参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
iDS-6101HF/A系列设备 | 设置网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
iDS-6101HF/A系列设备 | 获取图像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
iDS-6101HF/A系列设备 | 设置图像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PICCFG_V30
iDS-6101HF/A系列设备 | 获取压缩参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
iDS-6101HF/A系列设备 | 设置压缩参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSIONCFG_V30
iDS-6101HF/A系列设备 | 获取录像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RECORD_V30
iDS-6101HF/A系列设备 | 设置录像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RECORD_V30
iDS-6101HF/A系列设备 | 获取（云台）解码器参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
iDS-6101HF/A系列设备 | 设置（云台）解码器参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
iDS-6101HF/A系列设备 | 获取232串口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
iDS-6101HF/A系列设备 | 设置232串口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
iDS-6101HF/A系列设备 | 获取报警输入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
iDS-6101HF/A系列设备 | 设置报警输入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
iDS-6101HF/A系列设备 | 获取报警输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
iDS-6101HF/A系列设备 | 设置报警输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
iDS-6101HF/A系列设备 | 获取本地预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
iDS-6101HF/A系列设备 | 设置本地预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
iDS-6101HF/A系列设备 | 获取辅助预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
iDS-6101HF/A系列设备 | 设置辅助预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
iDS-6101HF/A系列设备 | 获取视频输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30
iDS-6101HF/A系列设备 | 设置视频输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30
iDS-6101HF/A系列设备 | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
iDS-6101HF/A系列设备 | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
iDS-6101HF/A系列设备 | 获取异常参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
iDS-6101HF/A系列设备 | 设置异常参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
iDS-6101HF/A系列设备 | 获取时区和夏时制参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
iDS-6101HF/A系列设备 | 设置时区和夏时制参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ZONEANDDST
iDS-6101HF/A系列设备 | 获取叠加字符参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SHOWSTRING_V30
iDS-6101HF/A系列设备 | 设置叠加字符参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SHOWSTRING_V30
iDS-6101HF/A系列设备 | 获取报警触发辅助输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
iDS-6101HF/A系列设备 | 设置报警触发辅助输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
iDS-6101HF/A系列设备 | 获取网络应用(NTP/DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
iDS-6101HF/A系列设备 | 设置网络应用(NTP/DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
iDS-6101HF/A系列设备 | 获取网络应用(NTP)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NTPPARA
iDS-6101HF/A系列设备 | 设置网络应用(NTP)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NTPPARA
iDS-6101HF/A系列设备 | 获取网络应用(DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
iDS-6101HF/A系列设备 | 设置网络应用(DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
iDS-6101HF/A系列设备 | 获取网络应用(EMAIL)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
iDS-6101HF/A系列设备 | 设置网络应用(EMAIL)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
iDS-6101HF/A系列设备 | 获取NFS（网络文件系统）参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NFSCFG
iDS-6101HF/A系列设备 | 设置NFS（网络文件系统）参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NFSCFG
iDS-6101HF/A系列设备 | 获取智能控制参数 | NET_DVR_GetDVRConfig | 配置参数：NET_VCA_CTRLCFG
iDS-6101HF/A系列设备 | 设置智能控制参数 | NET_DVR_SetDVRConfig | 配置参数：NET_VCA_CTRLCFG
iDS-6101HF/A系列设备 | 获取标定信息参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_CALIBRATION_CFG
iDS-6101HF/A系列设备 | 设置标定信息参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_CALIBRATION_CFG
iDS-6101HF/A系列设备 | 获取行为分析参数 | NET_DVR_GetDVRConfig | 配置参数：NET_VCA_RULECFG
iDS-6101HF/A系列设备 | 设置行为分析参数 | NET_DVR_SetDVRConfig | 配置参数：NET_VCA_RULECFG
iDS-6101HF/A系列设备 | 获取智能信息DSP叠加配置参数 | NET_DVR_GetVCADrawMode |
iDS-6101HF/A系列设备 | 设置智能信息DSP叠加配置参数 | NET_DVR_SetVCADrawMode |
iDS-6101HF/A系列设备 | 获取内部关键字参数 | NET_DVR_GetBehaviorParamKey |
iDS-6101HF/A系列设备 | 设置内部关键字参数 | NET_DVR_SetBehaviorParamKey |
获取设备能力集 |  |  |
iDS-6101HF/A系列设备 | 获取设备能力 | NET_DVR_GetDeviceAbility | 支持的能力类型有：VCA_DEV_ABILITY（智能设备的能力）、VCA_CHAN_ABILITY（智能通道的能力）
标定校验 |  |  |
iDS-6101HF/A系列设备 | 标定校验 | NET_DVR_VerifyCalibration |
重启智能库 |  |  |
iDS-6101HF/A系列设备 | 重启使能库 | NET_VCA_RestartLib |


62智能分析仪（行为）设备功能接口介绍

62智能分析仪（行为）设备除通用接口的功能外，还支持以下接口的功能，包括预览、视频数据获取、报警上传、远程参数配置和智能参数配置等。

设备型号 | 功能 | 接口 | 相关参数
预览相关功能 |  |  |
iVMS-6200-B | 设置播放显示模式 | NET_DVR_SetShowMode |
iVMS-6200-B | 主码流动态产生一个关键帧 | NET_DVR_MakeKeyFrame |
iVMS-6200-B | 子码流动态产生一个关键帧 | NET_DVR_MakeKeyFrameSub |
iVMS-6200-B | 实时预览 | NET_DVR_RealPlay_V30 |
iVMS-6200-B | 停止预览 | NET_DVR_StopRealPlay |
iVMS-6200-B | 获取预览时用来解码和显示的播放器句柄 | NET_DVR_GetRealPlayerIndex |
iVMS-6200-B | 获取预览视频显示参数 | NET_DVR_ClientGetVideoEffect |
iVMS-6200-B | 设置预览视频显示参数 | NET_DVR_ClientSetVideoEffect |
iVMS-6200-B | 预览画面叠加字符和图像 | NET_DVR_RigisterDrawFun |
iVMS-6200-B | 设置播放库的帧缓冲区个数 | NET_DVR_SetPlayerBufNumber |
iVMS-6200-B | 设置解码时丢弃B帧的个数 | NET_DVR_ThrowBFrame |
iVMS-6200-B | 设置声音播放模式 | NET_DVR_SetAudioMode |
iVMS-6200-B | 独占声卡模式下开启声音 | NET_DVR_OpenSound |
iVMS-6200-B | 独占声卡模式下关闭声音 | NET_DVR_CloseSound |
iVMS-6200-B | 共享声卡模式下开启声音 | NET_DVR_OpenSoundShare |
iVMS-6200-B | 共享声卡模式下关闭声音 | NET_DVR_CloseSoundShare |
iVMS-6200-B | 调节播放音量 | NET_DVR_Volume |
iVMS-6200-B | 初始化系统中的显示设备 | NET_DVR_InitDDrawDevice |
iVMS-6200-B | 释放显示设备占用的资源 | NET_DVR_ReleaseDDrawDevice |
iVMS-6200-B | 获取系统的显示设备的数量 | NET_DVR_GetDDrawDeviceTotalNums |
iVMS-6200-B | 设置播放窗口所使用的显卡 | NET_DVR_SetDDrawDevice |
iVMS-6200-B | 注册回调函数，捕获实时码流数据 | NET_DVR_SetRealDataCallBack |
iVMS-6200-B | 注册回调函数，捕获实时码流数据（标准码流） | NET_DVR_SetStandardDataCallBack |
iVMS-6200-B | 捕获数据并存放到指定的文件中 | NET_DVR_SaveRealData |
iVMS-6200-B | 停止数据捕获 | NET_DVR_StopSaveRealData |
iVMS-6200-B | 单帧数据捕获并保存成BMP位图 | NET_DVR_CapturePicture |
布防、撤防和监听 |  |  |
iVMS-6200-B | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 |
iVMS-6200-B | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
iVMS-6200-B | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
iVMS-6200-B | 启动监听，接收设备主动上传的报警等信息（支持多线程） | NET_DVR_StartListen_V30 |
iVMS-6200-B | 停止监听（支持多线程） | NET_DVR_StopListen_V30 |
硬盘管理 |  |  |
iVMS-6200-B | 远程格式化设备硬盘 | NET_DVR_FormatDisk |
iVMS-6200-B | 获取格式化硬盘的进度 | NET_DVR_GetFormatProgress |
iVMS-6200-B | 关闭格式化硬盘句柄，释放资源 | NET_DVR_CloseFormatHandle |
设备维护管理 |  |  |
iVMS-6200-B | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
iVMS-6200-B | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
iVMS-6200-B | 远程升级 | NET_DVR_Upgrade |
iVMS-6200-B | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
iVMS-6200-B | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
iVMS-6200-B | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
iVMS-6200-B | 查找设备的日志信息（可搜索带S.M.A.R.T信息的日志） | NET_DVR_FindDVRLog_V30 |
iVMS-6200-B | 逐条获取查找到的日志信息 | NET_DVR_FindNextLog_V30 |
iVMS-6200-B | 释放查找日志的资源 | NET_DVR_FindLogClose_V30 |
iVMS-6200-B | 恢复设备默认参数 | NET_DVR_RestoreConfig |
iVMS-6200-B | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
iVMS-6200-B | 导出配置文件 | NET_DVR_GetConfigFile |
iVMS-6200-B | 导入配置文件 | NET_DVR_SetConfigFile_EX |
iVMS-6200-B | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
iVMS-6200-B | 重启设备 | NET_DVR_RebootDVR |
iVMS-6200-B | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
iVMS-6200-B | 获取设备参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
iVMS-6200-B | 设置设备参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
iVMS-6200-B | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
iVMS-6200-B | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
iVMS-6200-B | 获取网络参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
iVMS-6200-B | 设置网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
iVMS-6200-B | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
iVMS-6200-B | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
iVMS-6200-B | 获取异常参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
iVMS-6200-B | 设置异常参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
iVMS-6200-B | 获取智能控制参数 | NET_DVR_GetDVRConfig | 配置参数：NET_VCA_CTRLCFG
iVMS-6200-B | 设置智能控制参数 | NET_DVR_SetDVRConfig | 配置参数：NET_VCA_CTRLCFG
iVMS-6200-B | 获取标定信息参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_CALIBRATION_CFG
iVMS-6200-B | 设置标定信息参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_CALIBRATION_CFG
iVMS-6200-B | 获取iVMS取流参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PU_STREAM_CFG
iVMS-6200-B | 设置iVMS取流参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PU_STREAM_CFG
iVMS-6200-B | 获取行为分析参数 | NET_DVR_GetDVRConfig | 配置参数：NET_VCA_RULECFG
iVMS-6200-B | 设置行为分析参数 | NET_DVR_SetDVRConfig | 配置参数：NET_VCA_RULECFG
iVMS-6200-B | 获取智能信息DSP叠加配置参数 | NET_DVR_GetVCADrawMode |
iVMS-6200-B | 设置智能信息DSP叠加配置参数 | NET_DVR_SetVCADrawMode |
iVMS-6200-B | 获取内部关键字参数 | NET_DVR_GetBehaviorParamKey |
iVMS-6200-B | 设置内部关键字参数 | NET_DVR_SetBehaviorParamKey |
获取设备能力集 |  |  |
iVMS-6200-B | 获取设备能力 | NET_DVR_GetDeviceAbility | 支持的能力类型有：VCA_DEV_ABILITY（智能设备的能力）、VCA_CHAN_ABILITY（智能通道的能力）
标定校验 |  |  |
iVMS-6200-B | 标定校验 | NET_DVR_VerifyCalibration |
重启智能库 |  |  |
iVMS-6200-B | 重启使能库 | NET_VCA_RestartLib |


62智能分析仪（人流量）设备功能接口介绍

62智能分析仪（人流量）设备除通用接口的功能外，还支持以下接口的功能，包括预览、视频数据获取、报警上传、远程参数配置和智能参数配置等。

设备型号 | 功能 | 接口 | 相关参数
预览相关功能 |  |  |
iVMS-6200-C | 设置播放显示模式 | NET_DVR_SetShowMode |
iVMS-6200-C | 主码流动态产生一个关键帧 | NET_DVR_MakeKeyFrame |
iVMS-6200-C | 子码流动态产生一个关键帧 | NET_DVR_MakeKeyFrameSub |
iVMS-6200-C | 实时预览 | NET_DVR_RealPlay_V30 |
iVMS-6200-C | 停止预览 | NET_DVR_StopRealPlay |
iVMS-6200-C | 获取预览时用来解码和显示的播放器句柄 | NET_DVR_GetRealPlayerIndex |
iVMS-6200-C | 获取预览视频显示参数 | NET_DVR_ClientGetVideoEffect |
iVMS-6200-C | 设置预览视频显示参数 | NET_DVR_ClientSetVideoEffect |
iVMS-6200-C | 预览画面叠加字符和图像 | NET_DVR_RigisterDrawFun |
iVMS-6200-C | 设置播放库的帧缓冲区个数 | NET_DVR_SetPlayerBufNumber |
iVMS-6200-C | 设置解码时丢弃B帧的个数 | NET_DVR_ThrowBFrame |
iVMS-6200-C | 设置声音播放模式 | NET_DVR_SetAudioMode |
iVMS-6200-C | 独占声卡模式下开启声音 | NET_DVR_OpenSound |
iVMS-6200-C | 独占声卡模式下关闭声音 | NET_DVR_CloseSound |
iVMS-6200-C | 共享声卡模式下开启声音 | NET_DVR_OpenSoundShare |
iVMS-6200-C | 共享声卡模式下关闭声音 | NET_DVR_CloseSoundShare |
iVMS-6200-C | 调节播放音量 | NET_DVR_Volume |
iVMS-6200-C | 初始化系统中的显示设备 | NET_DVR_InitDDrawDevice |
iVMS-6200-C | 释放显示设备占用的资源 | NET_DVR_ReleaseDDrawDevice |
iVMS-6200-C | 获取系统的显示设备的数量 | NET_DVR_GetDDrawDeviceTotalNums |
iVMS-6200-C | 设置播放窗口所使用的显卡 | NET_DVR_SetDDrawDevice |
iVMS-6200-C | 注册回调函数，捕获实时码流数据 | NET_DVR_SetRealDataCallBack |
iVMS-6200-C | 注册回调函数，捕获实时码流数据（标准码流） | NET_DVR_SetStandardDataCallBack |
iVMS-6200-C | 捕获数据并存放到指定的文件中 | NET_DVR_SaveRealData |
iVMS-6200-C | 停止数据捕获 | NET_DVR_StopSaveRealData |
iVMS-6200-C | 单帧数据捕获并保存成BMP位图 | NET_DVR_CapturePicture |
布防、撤防和监听 |  |  |
iVMS-6200-C | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 |
iVMS-6200-C | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
iVMS-6200-C | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
iVMS-6200-C | 启动监听，接收设备主动上传的报警等信息（支持多线程） | NET_DVR_StartListen_V30 |
iVMS-6200-C | 停止监听（支持多线程） | NET_DVR_StopListen_V30 |
硬盘管理 |  |  |
iVMS-6200-C | 远程格式化设备硬盘 | NET_DVR_FormatDisk |
iVMS-6200-C | 获取格式化硬盘的进度 | NET_DVR_GetFormatProgress |
iVMS-6200-C | 关闭格式化硬盘句柄，释放资源 | NET_DVR_CloseFormatHandle |
设备维护管理 |  |  |
iVMS-6200-C | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
iVMS-6200-C | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
iVMS-6200-C | 远程升级 | NET_DVR_Upgrade |
iVMS-6200-C | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
iVMS-6200-C | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
iVMS-6200-C | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
iVMS-6200-C | 查找设备的日志信息（可搜索带S.M.A.R.T信息的日志） | NET_DVR_FindDVRLog_V30 |
iVMS-6200-C | 逐条获取查找到的日志信息 | NET_DVR_FindNextLog_V30 |
iVMS-6200-C | 释放查找日志的资源 | NET_DVR_FindLogClose_V30 |
iVMS-6200-C | 恢复设备默认参数 | NET_DVR_RestoreConfig |
iVMS-6200-C | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
iVMS-6200-C | 导出配置文件 | NET_DVR_GetConfigFile |
iVMS-6200-C | 导入配置文件 | NET_DVR_SetConfigFile_EX |
iVMS-6200-C | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
iVMS-6200-C | 重启设备 | NET_DVR_RebootDVR |
iVMS-6200-C | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
iVMS-6200-C | 获取设备参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
iVMS-6200-C | 设置设备参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
iVMS-6200-C | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
iVMS-6200-C | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
iVMS-6200-C | 获取网络参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
iVMS-6200-C | 设置网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
iVMS-6200-C | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
iVMS-6200-C | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
iVMS-6200-C | 获取异常参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
iVMS-6200-C | 设置异常参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
iVMS-6200-C | 获取智能控制参数 | NET_DVR_GetDVRConfig | 配置参数：NET_VCA_CTRLCFG
iVMS-6200-C | 设置智能控制参数 | NET_DVR_SetDVRConfig | 配置参数：NET_VCA_CTRLCFG
iVMS-6200-C | 获取标定信息参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_CALIBRATION_CFG
iVMS-6200-C | 设置标定信息参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_CALIBRATION_CFG
iVMS-6200-C | 获取iVMS取流参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PU_STREAM_CFG
iVMS-6200-C | 设置iVMS取流参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PU_STREAM_CFG
iVMS-6200-C | 获取人流量规则配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PDC_RULE_CFG
iVMS-6200-C | 设置人流量规则配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PDC_RULE_CFG
iVMS-6200-C | 获取智能信息DSP叠加配置参数 | NET_DVR_GetVCADrawMode |
iVMS-6200-C | 设置智能信息DSP叠加配置参数 | NET_DVR_SetVCADrawMode |
iVMS-6200-C | 获取内部关键字参数 | NET_DVR_GetBehaviorParamKey |
iVMS-6200-C | 设置内部关键字参数 | NET_DVR_SetBehaviorParamKey |
获取设备能力集 |  |  |
iVMS-6200-C | 获取设备能力 | NET_DVR_GetDeviceAbility | 支持的能力类型有：VCA_DEV_ABILITY（智能设备的能力）、VCA_CHAN_ABILITY（智能通道的能力）
标定校验 |  |  |
iVMS-6200-C | 标定校验 | NET_DVR_VerifyCalibration |
人数统计查询 |  |  |
iVMS-6200-C | 人流量信息查询 | NET_DVR_FindPDCInfo |
iVMS-6200-C | 逐个获取查找到的人流量信息 | NET_DVR_FindNextPDCInfo |
iVMS-6200-C | 关闭人流量信息查找，释放资源 | NET_DVR_FindPDCClose |
人数统计重置 |  |  |
iVMS-6200-C | 人流量统计重置 | NET_DVR_ResetCounter |
重启智能库 |  |  |
iVMS-6200-C | 重启使能库 | NET_VCA_RestartLib |


智能90xx/91xx系列网络硬盘录像机功能接口介绍

智能90xx/91xx系列网络硬盘录像机除分别兼容90xx/91xx V1.2的所有功能外，还支持智能参数配置功能等。

设备型号 | 功能 | 接口 | 相关参数
智能功能 |  |  |
iDS-9xxxHF-SH系列设备 | 获取智能控制参数 | NET_DVR_GetDVRConfig | 配置参数：NET_VCA_CTRLCFG
iDS-9xxxHF-SH系列设备 | 设置智能控制参数 | NET_DVR_SetDVRConfig | 配置参数：NET_VCA_CTRLCFG
iDS-9xxxHF-SH系列设备 | 获取行为分析参数 | NET_DVR_GetDVRConfig | 配置参数：NET_VCA_RULECFG
iDS-9xxxHF-SH系列设备 | 设置行为分析参数 | NET_DVR_SetDVRConfig | 配置参数：NET_VCA_RULECFG
iDS-9xxxHF-SH系列设备 | 获取智能信息DSP叠加配置参数 | NET_DVR_GetVCADrawMode |
iDS-9xxxHF-SH系列设备 | 设置智能信息DSP叠加配置参数 | NET_DVR_SetVCADrawMode |
iDS-9xxxHF-SH系列设备 | 获取设备能力 | NET_DVR_GetDeviceAbility | 支持的能力类型有：VCA_DEV_ABILITY（智能设备的能力）、VCA_CHAN_ABILITY（智能通道的能力）
iDS-9xxxHF-SH系列设备 | 重启使能库 | NET_VCA_RestartLib |


多路解码器系列设备功能接口介绍

多路解码器系列设备除通用接口的功能外，还支持以下接口的功能，包括、语音对讲、远程参数配置和解码相关配置等。

设备型号 | 功能 | 接口 | 相关参数
云台控制 |  |  |
多路解码器系列设备 | 云台控制操作(需先启动图象预览) | NET_DVR_PTZControl |
多路解码器系列设备 | 云台控制操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZControl好，RTSP预览时不支持此功能） | NET_DVR_PTZControl_EX |
多路解码器系列设备 | 云台控制操作(不用启动图象预览) | NET_DVR_PTZControl_Other |
多路解码器系列设备 | 带速度的云台控制操作(需先启动图象预览) | NET_DVR_PTZControlWithSpeed |
多路解码器系列设备 | 带速度的云台控制操作(不用启动图象预览) | NET_DVR_PTZControlWithSpeed_Other |
多路解码器系列设备 | 云台预置点操作（需先启动预览） | NET_DVR_PTZPreset |
多路解码器系列设备 | 云台预置点操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZPreset好，RTSP预览时不支持此功能） | NET_DVR_PTZPreset_EX |
多路解码器系列设备 | 云台预置点操作 | NET_DVR_PTZPreset_Other |
多路解码器系列设备 | 云台巡航操作，需先启动预览 | NET_DVR_PTZCruise |
多路解码器系列设备 | 云台巡航操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZCruise好，RTSP预览时不支持此功能） | NET_DVR_PTZCruise_EX |
多路解码器系列设备 | 云台巡航操作 | NET_DVR_PTZCruise_Other |
多路解码器系列设备 | 云台轨迹操作，需先启动预览 | NET_DVR_PTZTrack |
多路解码器系列设备 | 云台轨迹操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZTrack好，RTSP预览时不支持此功能） | NET_DVR_PTZTrack_EX |
多路解码器系列设备 | 云台轨迹操作 | NET_DVR_PTZTrack_Other |
多路解码器系列设备 | 透明云台操作，需先启动预览 | NET_DVR_TransPTZ |
多路解码器系列设备 | 透明云台操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_TransPTZ好，RTSP预览时不支持此功能） | NET_DVR_TransPTZ_EX |
多路解码器系列设备 | 透明云台操作 | NET_DVR_TransPTZ_Other |
语音对讲、转发及广播 |  |  |
多路解码器系列设备 | 启动语音对讲 | NET_DVR_StartVoiceCom_V30 |
多路解码器系列设备 | 设置语音对讲客户端的音量 | NET_DVR_SetVoiceComClientVolume |
多路解码器系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
多路解码器系列设备 | 启动语音转发，获取编码后的音频数据 | NET_DVR_StartVoiceCom_MR_V30 |
多路解码器系列设备 | 转发语音数据 | NET_DVR_VoiceComSendData |
多路解码器系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
多路解码器系列设备 | 启动语音广播的PC端声音捕获 | NET_DVR_ClientAudioStart_V30 |
多路解码器系列设备 | 添加设备的某个语音通道到可以接收PC端声音的广播组 | NET_DVR_AddDVR_V30 |
多路解码器系列设备 | 从可接收PC机声音的广播组里删除该设备的语音通道 | NET_DVR_DelDVR_V30 |
多路解码器系列设备 | 停止语音广播的PC端声音捕获 | NET_DVR_ClientAudioStop |
透明通道 |  |  |
多路解码器系列设备 | 建立透明通道 | NET_DVR_SerialStart |
多路解码器系列设备 | 通过透明通道向设备串口发送数据 | NET_DVR_SerialSend |
多路解码器系列设备 | 断开透明通道 | NET_DVR_SerialStop |
向串口发送数据 |  |  |
多路解码器系列设备 | 直接向串口发送数据，不需要建立透明通道 | NET_DVR_SendToSerialPort |
多路解码器系列设备 | 直接向232串口发送数据，不需要建立透明通道 | NET_DVR_SendTo232Port |
设备维护管理 |  |  |
多路解码器系列设备 | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
多路解码器系列设备 | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
多路解码器系列设备 | 远程升级 | NET_DVR_Upgrade |
多路解码器系列设备 | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
多路解码器系列设备 | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
多路解码器系列设备 | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
多路解码器系列设备 | 恢复设备默认参数 | NET_DVR_RestoreConfig |
多路解码器系列设备 | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
多路解码器系列设备 | 导出配置文件 | NET_DVR_GetConfigFile |
多路解码器系列设备 | 导入配置文件 | NET_DVR_SetConfigFile_EX |
多路解码器系列设备 | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
多路解码器系列设备 | 重启设备 | NET_DVR_RebootDVR |
多路解码器系列设备 | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
多路解码器系列设备 | 获取设备参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_CAMERAPARAMCFG
多路解码器系列设备 | 设置设备参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_CAMERAPARAMCFG
多路解码器系列设备 | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
多路解码器系列设备 | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
多路解码器系列设备 | 获取（云台）解码器参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
多路解码器系列设备 | 设置（云台）解码器参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
多路解码器系列设备 | 获取232串口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
多路解码器系列设备 | 设置232串口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
多路解码器系列设备 | 获取报警输入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
多路解码器系列设备 | 设置报警输入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
多路解码器系列设备 | 获取报警输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
多路解码器系列设备 | 设置报警输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
多路解码器系列设备 | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
多路解码器系列设备 | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
多路解码器系列设备 | 获取异常参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
多路解码器系列设备 | 设置异常参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
多路解码器系列设备 | 获取报警触发辅助输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
多路解码器系列设备 | 设置报警触发辅助输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
多路解码器系列设备 | 获取网络应用(NTP/DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
多路解码器系列设备 | 设置网络应用(NTP/DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
多路解码器系列设备 | 获取网络应用(NTP)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NTPPARA
多路解码器系列设备 | 设置网络应用(NTP)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NTPPARA
多路解码器系列设备 | 获取网络应用(DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
多路解码器系列设备 | 设置网络应用(DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
多路解码器系列设备 | 获取网络应用(EMAIL)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EMAILCFG
多路解码器系列设备 | 设置网络应用(EMAIL)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EMAILCFG
多路解码器系列设备 | 获取网络应用(EMAIL)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
多路解码器系列设备 | 设置网络应用(EMAIL)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
多路解码器系列设备 | 获取NFS（网络文件系统）参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NFSCFG
多路解码器系列设备 | 设置NFS（网络文件系统）参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NFSCFG
多路解码器系列设备 | 获取设备报警输出 | NET_DVR_GetAlarmOut_V30 |
多路解码器系列设备 | 设置设备报警输出 | NET_DVR_SetAlarmOut |
多路解码器系列设备 | 获取设备能力集 | NET_DVR_GetDeviceAbility |
多路解码器专用功能 |  |  |
多路解码器系列设备 | 获取网络参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_OTHER
多路解码器系列设备 | 设置网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_OTHER
多路解码器系列设备 | 多路解码器解码通道缩放控制 | NET_DVR_MatrixGetDecChanCfg |
多路解码器系列设备 | 设置多路解码器解码通道缩放控制 | NET_DVR_MatrixSetDecChanCfg |
多路解码器系列设备 | 设置多路解码器的视频制式 | NET_DVR_MatrixSetVideoStandard |
多路解码器系列设备 | 启动动态解码 | NET_DVR_MatrixStartDynamic |
多路解码器系列设备 | 启动动态解码 | NET_DVR_MatrixStartDynamic_V30 |
多路解码器系列设备 | 停止动态解码 | NET_DVR_MatrixStopDynamic |
多路解码器系列设备 | 获取轮巡解码通道参数 | NET_DVR_MatrixGetLoopDecChanInfo_V30 |
多路解码器系列设备 | 获取轮巡解码通道参数 | NET_DVR_MatrixGetLoopDecChanInfo |
多路解码器系列设备 | 设置轮巡解码通道参数 | NET_DVR_MatrixSetLoopDecChanInfo_V30 |
多路解码器系列设备 | 设置轮巡解码通道参数 | NET_DVR_MatrixSetLoopDecChanInfo |
多路解码器系列设备 | 获取单个解码通道轮巡开关 | NET_DVR_MatrixGetLoopDecChanEnable |
多路解码器系列设备 | 设置单个解码通道轮巡开关 | NET_DVR_MatrixSetLoopDecChanEnable |
多路解码器系列设备 | 获取所有解码通道轮巡开关 | NET_DVR_MatrixGetLoopDecEnable |
多路解码器系列设备 | 获取当前解码通道信息 | NET_DVR_MatrixGetDecChanInfo_V30 |
多路解码器系列设备 | 获取当前解码通道信息 | NET_DVR_MatrixGetDecChanInfo |
多路解码器系列设备 | 获取当前解码通道状态 | NET_DVR_MatrixGetDecChanStatus |
多路解码器系列设备 | 获取当前解码通道开关 | NET_DVR_MatrixGetDecChanEnable |
多路解码器系列设备 | 设置当前解码通道开关 | NET_DVR_MatrixSetDecChanEnable |
多路解码器系列设备 | 设置解码设备远程回放文件配置 | NET_DVR_MatrixSetRemotePlay |
多路解码器系列设备 | 远程回放文件控制 | NET_DVR_MatrixSetRemotePlayControl |
多路解码器系列设备 | 获取回放状态 | NET_DVR_MatrixGetRemotePlayStatus |
多路解码器系列设备 | 上传LOGO | NET_DVR_UploadLogo |
多路解码器系列设备 | LOGO显示控制 | NET_DVR_LogoSwitch |
多路解码器系列设备 | 多路解码器启动被动解码 | NET_DVR_MatrixStartPassiveDecode |
多路解码器系列设备 | 向被动解码通道发送数据 | NET_DVR_MatrixSendData |
多路解码器系列设备 | 多路解码器停止被动解码 | NET_DVR_MatrixStopPassiveDecode |
多路解码器系列设备 | 获取多路解码器被动解码状态 | NET_DVR_MatrixGetPassiveDecodeStatus |
多路解码器系列设备 | 被动解码播放控制 | NET_DVR_MatrixPassiveDecodeControl |
多路解码器系列设备 | 多路解码器获取显示通道配置 | NET_DVR_MatrixGetDisplayCfg |
多路解码器系列设备 | 多路解码器设置显示通道配置 | NET_DVR_MatrixSetDisplayCfg |
多路解码器系列设备 | 多路解码器显示通道控制 | NET_DVR_MatrixDiaplayControl |
多路解码器系列设备 | 获取透明通道信息 | NET_DVR_MatrixGetTranInfo_V30 |
多路解码器系列设备 | 获取透明通道信息 | NET_DVR_MatrixGetTranInfo |
多路解码器系列设备 | 设置透明通道信息 | NET_DVR_MatrixSetTranInfo_V30 |
多路解码器系列设备 | 设置透明通道信息 | NET_DVR_MatrixSetTranInfo |
多路解码器系列设备 | 多路解码器获取设备状态 | NET_DVR_MatrixGetDeviceStatus |
多路解码器系列设备 | 获取透明通道信息 | NET_DVR_MatrixGetTranInfo |
多路解码器系列设备 | 设置透明通道信息 | NET_DVR_MatrixSetTranInfo_V30 |
多路解码器系列设备 | 设置透明通道信息 | NET_DVR_MatrixSetTranInfo |


审讯机系列设备功能接口介绍

审讯机系列设备除通用接口的功能外，还支持以下接口的功能，包括预览、视频数据获取、报警上传、语音对讲、远程参数配置和审讯机专用功能等。

设备型号 | 功能 | 接口 | 相关参数
预览相关功能 |  |  |
审讯机系列设备 | 设置播放显示模式 | NET_DVR_SetShowMode |
审讯机系列设备 | 主码流动态产生一个关键帧 | NET_DVR_MakeKeyFrame |
审讯机系列设备 | 子码流动态产生一个关键帧 | NET_DVR_MakeKeyFrameSub |
审讯机系列设备 | 实时预览 | NET_DVR_RealPlay_V30 |
审讯机系列设备 | 停止预览 | NET_DVR_StopRealPlay |
审讯机系列设备 | 获取预览时用来解码和显示的播放器句柄 | NET_DVR_GetRealPlayerIndex |
审讯机系列设备 | 获取预览视频显示参数 | NET_DVR_ClientGetVideoEffect |
审讯机系列设备 | 设置预览视频显示参数 | NET_DVR_ClientSetVideoEffect |
审讯机系列设备 | 预览画面叠加字符和图像 | NET_DVR_RigisterDrawFun |
审讯机系列设备 | 设置播放库的帧缓冲区个数 | NET_DVR_SetPlayerBufNumber |
审讯机系列设备 | 设置解码时丢弃B帧的个数 | NET_DVR_ThrowBFrame |
审讯机系列设备 | 设置声音播放模式 | NET_DVR_SetAudioMode |
审讯机系列设备 | 独占声卡模式下开启声音 | NET_DVR_OpenSound |
审讯机系列设备 | 独占声卡模式下关闭声音 | NET_DVR_CloseSound |
审讯机系列设备 | 共享声卡模式下开启声音 | NET_DVR_OpenSoundShare |
审讯机系列设备 | 共享声卡模式下关闭声音 | NET_DVR_CloseSoundShare |
审讯机系列设备 | 调节播放音量 | NET_DVR_Volume |
审讯机系列设备 | 初始化系统中的显示设备 | NET_DVR_InitDDrawDevice |
审讯机系列设备 | 释放显示设备占用的资源 | NET_DVR_ReleaseDDrawDevice |
审讯机系列设备 | 获取系统的显示设备的数量 | NET_DVR_GetDDrawDeviceTotalNums |
审讯机系列设备 | 设置播放窗口所使用的显卡 | NET_DVR_SetDDrawDevice |
审讯机系列设备 | 注册回调函数，捕获实时码流数据 | NET_DVR_SetRealDataCallBack |
审讯机系列设备 | 注册回调函数，捕获实时码流数据（标准码流） | NET_DVR_SetStandardDataCallBack |
审讯机系列设备 | 捕获数据并存放到指定的文件中 | NET_DVR_SaveRealData |
审讯机系列设备 | 停止数据捕获 | NET_DVR_StopSaveRealData |
审讯机系列设备 | 单帧数据捕获并保存成BMP位图 | NET_DVR_CapturePicture |
审讯机系列设备 | 单帧数据捕获并保存成JPEG图 | NET_DVR_CaptureJPEGPicture |
审讯机系列设备 | 单帧数据捕获并保存成JPEG存放在指定的内存空间中 | NET_DVR_CaptureJPEGPicture_NEW |
布防、撤防和监听 |  |  |
审讯机系列设备 | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 |
审讯机系列设备 | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
审讯机系列设备 | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
审讯机系列设备 | 启动监听，接收设备主动上传的报警等信息（支持多线程） | NET_DVR_StartListen_V30 |
审讯机系列设备 | 停止监听（支持多线程） | NET_DVR_StopListen_V30 |
云台控制 |  |  |
审讯机系列设备 | 云台控制操作(需先启动图象预览) | NET_DVR_PTZControl |
审讯机系列设备 | 云台控制操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZControl好，RTSP预览时不支持此功能） | NET_DVR_PTZControl_EX |
审讯机系列设备 | 云台控制操作(不用启动图象预览) | NET_DVR_PTZControl_Other |
审讯机系列设备 | 带速度的云台控制操作(需先启动图象预览) | NET_DVR_PTZControlWithSpeed |
审讯机系列设备 | 带速度的云台控制操作(不用启动图象预览) | NET_DVR_PTZControlWithSpeed_Other |
审讯机系列设备 | 云台预置点操作（需先启动预览） | NET_DVR_PTZPreset |
审讯机系列设备 | 云台预置点操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZPreset好，RTSP预览时不支持此功能） | NET_DVR_PTZPreset_EX |
审讯机系列设备 | 云台预置点操作 | NET_DVR_PTZPreset_Other |
审讯机系列设备 | 云台巡航操作，需先启动预览 | NET_DVR_PTZCruise |
审讯机系列设备 | 云台巡航操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZCruise好，RTSP预览时不支持此功能） | NET_DVR_PTZCruise_EX |
审讯机系列设备 | 云台巡航操作 | NET_DVR_PTZCruise_Other |
审讯机系列设备 | 云台轨迹操作，需先启动预览 | NET_DVR_PTZTrack |
审讯机系列设备 | 云台轨迹操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZTrack好，RTSP预览时不支持此功能） | NET_DVR_PTZTrack_EX |
审讯机系列设备 | 云台轨迹操作 | NET_DVR_PTZTrack_Other |
审讯机系列设备 | 透明云台操作，需先启动预览 | NET_DVR_TransPTZ |
审讯机系列设备 | 透明云台操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_TransPTZ好，RTSP预览时不支持此功能） | NET_DVR_TransPTZ_EX |
审讯机系列设备 | 透明云台操作 | NET_DVR_TransPTZ_Other |
语音对讲、转发及广播 |  |  |
审讯机系列设备 | 启动语音对讲 | NET_DVR_StartVoiceCom_V30 |
审讯机系列设备 | 设置语音对讲客户端的音量 | NET_DVR_SetVoiceComClientVolume |
审讯机系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
审讯机系列设备 | 启动语音转发，获取编码后的音频数据 | NET_DVR_StartVoiceCom_MR_V30 |
审讯机系列设备 | 转发语音数据 | NET_DVR_VoiceComSendData |
审讯机系列设备 | 停止语音对讲或者语音转发 | NET_DVR_StopVoiceCom |
审讯机系列设备 | 启动语音广播的PC端声音捕获 | NET_DVR_ClientAudioStart_V30 |
审讯机系列设备 | 添加设备的某个语音通道到可以接收PC端声音的广播组 | NET_DVR_AddDVR_V30 |
审讯机系列设备 | 从可接收PC机声音的广播组里删除该设备的语音通道 | NET_DVR_DelDVR_V30 |
审讯机系列设备 | 停止语音广播的PC端声音捕获 | NET_DVR_ClientAudioStop |
透明通道 |  |  |
审讯机系列设备 | 建立透明通道 | NET_DVR_SerialStart |
审讯机系列设备 | 通过透明通道向设备串口发送数据 | NET_DVR_SerialSend |
审讯机系列设备 | 断开透明通道 | NET_DVR_SerialStop |
向串口发送数据 |  |  |
审讯机系列设备 | 直接向串口发送数据，不需要建立透明通道 | NET_DVR_SendToSerialPort |
审讯机系列设备 | 直接向232串口发送数据，不需要建立透明通道 | NET_DVR_SendTo232Port |
设备维护管理 |  |  |
审讯机系列设备 | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
审讯机系列设备 | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
审讯机系列设备 | 远程升级 | NET_DVR_Upgrade |
审讯机系列设备 | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
审讯机系列设备 | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
审讯机系列设备 | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
审讯机系列设备 | 查找设备的日志信息（可搜索带S.M.A.R.T信息的日志） | NET_DVR_FindDVRLog_V30 |
审讯机系列设备 | 逐条获取查找到的日志信息 | NET_DVR_FindNextLog_V30 |
审讯机系列设备 | 释放查找日志的资源 | NET_DVR_FindLogClose_V30 |
审讯机系列设备 | 恢复设备默认参数 | NET_DVR_RestoreConfig |
审讯机系列设备 | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
审讯机系列设备 | 导出配置文件 | NET_DVR_GetConfigFile |
审讯机系列设备 | 导入配置文件 | NET_DVR_SetConfigFile_EX |
审讯机系列设备 | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
审讯机系列设备 | 重启设备 | NET_DVR_RebootDVR |
审讯机系列设备 | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
审讯机系列设备 | 获取设备参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
审讯机系列设备 | 设置设备参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DEVICECFG_V40
审讯机系列设备 | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
审讯机系列设备 | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
审讯机系列设备 | 获取（云台）解码器参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
审讯机系列设备 | 设置（云台）解码器参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DECODERCFG_V30
审讯机系列设备 | 获取232串口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
审讯机系列设备 | 设置232串口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
审讯机系列设备 | 获取报警输入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
审讯机系列设备 | 设置报警输入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMINCFG_V30
审讯机系列设备 | 获取报警输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
审讯机系列设备 | 设置报警输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMOUTCFG_V30
审讯机系列设备 | 获取本地预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
审讯机系列设备 | 设置本地预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
审讯机系列设备 | 获取辅助预览参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
审讯机系列设备 | 设置辅助预览参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_PREVIEWCFG_V30
审讯机系列设备 | 获取视频输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30
审讯机系列设备 | 设置视频输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_VIDEOOUT_V30
审讯机系列设备 | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
审讯机系列设备 | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
审讯机系列设备 | 获取异常参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
审讯机系列设备 | 设置异常参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EXCEPTION_V30
审讯机系列设备 | 获取报警触发辅助输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
审讯机系列设备 | 设置报警触发辅助输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_AUXOUTCFG
审讯机系列设备 | 获取网络应用(NTP/DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
审讯机系列设备 | 设置网络应用(NTP/DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETAPPCFG
审讯机系列设备 | 获取网络应用(NTP)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NTPPARA
审讯机系列设备 | 设置网络应用(NTP)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NTPPARA
审讯机系列设备 | 获取网络应用(DDNS)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
审讯机系列设备 | 设置网络应用(DDNS)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_DDNSPARA_V30
审讯机系列设备 | 获取网络应用(EMAIL)参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
审讯机系列设备 | 设置网络应用(EMAIL)参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_EMAILCFG_V30
审讯机系列设备 | 获取NFS（网络文件系统）参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NFSCFG
审讯机系列设备 | 设置NFS（网络文件系统）参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NFSCFG
审讯机系列设备 | 获取语音对讲音频参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_COMPRESSION_AUDIO
审讯机系列设备 | 设置语音对讲音频参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_COMPRESSION_AUDIO
审讯机系列设备 | 获取设备报警输出 | NET_DVR_GetAlarmOut |
审讯机系列设备 | 获取设备报警输出 | NET_DVR_GetAlarmOut_V30 |
审讯机系列设备 | 设置设备报警输出 | NET_DVR_SetAlarmOut |
审讯机系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG |
审讯机系列设备 | 获取视频输出缩放信息 | NET_DVR_GetScaleCFG_V30 |
审讯机系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG |
审讯机系列设备 | 设置视频输出缩放参数 | NET_DVR_SetScaleCFG_V30 |
审讯机系列设备专用功能 |  |  |
审讯机系列设备 | 获取设备刻录参数 | NET_DVR_InquestGetCDRWScheme |
审讯机系列设备 | 设置设备刻录参数 | NET_DVR_InquestSetCDRWScheme |
审讯机系列设备 | 获取画中画状态 | NET_DVR_InquestGetPIPStatus |
审讯机系列设备 | 设置画中画状态 | NET_DVR_InquestSetPIPStatus |
审讯机系列设备 | 获取设备码流加密状态 | NET_DVR_InquestCheckSecretKey |
审讯机系列设备 | 设置设备码流加密密钥 | NET_DVR_InquestSetSecretKey |
审讯机系列设备 | 获取设备码流加密状态 | NET_DVR_InquestGetEncryptState |
审讯机系列设备 | 设置设备码流加密密钥 | NET_DVR_InquestStreamEncrypt |
审讯机系列设备 | 搜索审讯文件 | NET_DVR_InquestFindFile |
审讯机系列设备 | 逐个获取查找到的审讯文件信息 | NET_DVR_InquestFindNextFile |
审讯机系列设备 | 停止搜索审讯文件，释放资源 | NET_DVR_InquestFindClose |
审讯机系列设备 | 删除审讯文件 | NET_DVR_InquestDeleteFile |
审讯机系列设备 | 按文件名刻录文件 | NET_DVR_InquestCDWByFile |
审讯机系列设备 | 按时间段备份录像文件 | NET_DVR_BackupByTime |
审讯机系列设备 | 获取文件备份的进度 | NET_DVR_GetBackupProgress |
审讯机系列设备 | 停止文件备份 | NET_DVR_StopBackup |
审讯机系列设备 | 向设备上传审讯文件 | NET_DVR_InquestUploadFile |
审讯机系列设备 | 获取文件上传的进度值和状态值 | NET_DVR_InquestGetUploadState |
审讯机系列设备 | 停止上传审讯文件 | NET_DVR_InquestUploadClose |
审讯机系列设备 | 审讯中开始刻录 | NET_DVR_InquestStartCDW |
审讯机系列设备 | 审讯中停止刻录 | NET_DVR_InquestStopCDW |
审讯机系列设备 | 获取刻录状态 | NET_DVR_InquestGetCDWState |


报警主机功能接口介绍

设备网络SDK开发使用手册

报警主机通用功能接口介绍

报警主机主要有以下型号：
DS_19XX: 1900系列，只有1906产品，其他都为串口协议
DS_19DXX: 动环监控报警主机
DS_19AXX: 通用报警主机类产品
DS_19CXX: 自助银行报警主机
DS_1HXX: 防护舱

除通用接口的功能外，报警主机还支持以下接口的功能，包括获取设备能力集、用户配置、警号配置、状态查询、使能状态配置、日志查询等。

设备型号 | 功能 | 接口 | 相关参数
设备能力集 |  |  |
报警主机 | 获取设备能力集 | NET_DVR_GetDeviceAbility |
用户配置 |  |  |
报警主机 | 获取设备用户配置 | NET_DVR_GetAlarmDeviceUser |
报警主机 | 设置设备用户配置 | NET_DVR_SetAlarmDeviceUser |
警号 |  |  |
报警主机 | 获取警号参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SIREN_PARAM
报警主机 | 设置警号参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SIREN_PARAM
报警主机 | 警号输出控制 | NET_DVR_AlarmHostAssistantControl |
状态查询 |  |  |
报警主机 | 获取报警主机主要状态 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMHOST_MAIN_STATUS DS-1HXX不支持
报警主机 | 获取报警主机其他状态 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMHOST_OTHER_STATUS
使能状态配置 |  |  |
报警主机 | 获取报警主机使能状态 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMHOST_ENABLECFG
报警主机 | 设置报警主机使能状态 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMHOST_ENABLECFG
报警输入口 |  |  |
报警主机 | 获取报警输入参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMIN_PARAM DS-1Hxx不支持
报警主机 | 设置报警输入参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMIN_PARAM DS-1Hxx不支持
报警主机 | 对报警输入口布防 | NET_DVR_AlarmHostSetupAlarmChan | DS-1Hxx不支持
报警主机 | 对报警输入口撤防 | NET_DVR_AlarmHostCloseAlarmChan | DS-1Hxx不支持
报警主机 | 对报警输入口旁路 | NET_DVR_BypassAlarmChan | DS-1Hxx不支持
报警主机 | 对报警输入口撤销旁路 | NET_DVR_UnBypassAlarmChan | DS_1Hxx不支持
报警输出控制 |  |  |
报警主机 | 获取报警输出参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMOUT_PARAM DS-1Hxx不支持
报警主机 | 设置报警输出参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMOUT_PARAM DS-1Hxx不支持
报警主机 | 设置报警输出 | NET_DVR_SetAlarmHostOut |
报警主机 | 辅助功能控制 | NET_DVR_AlarmHostAssistantControl |
日志查询 |  |  |
报警主机 | 查找报警主机的日志信息 | NET_DVR_FindAlarmHostLog |
报警主机 | 逐条获取查找到的报警主机日志信息 | NET_DVR_FindNextAlarmHostLog |
报警主机 | 关闭报警主机日志查找，释放资源 | NET_DVR_FindAlarmHostLogClose |


DS-19Axx通用报警主机功能接口介绍

除报警主机通用接口的功能外，DS-19Axx通用报警主机还支持以下接口的功能。

设备型号 | 功能 | 接口 | 相关参数
参数配置 |  |  |
DS-19Axx通用报警主机 | 获取报警主机拨号参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMHOSTDIALCFG
DS-19Axx通用报警主机 | 设置报警主机拨号参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMHOSTDIALCFG
DS-19Axx通用报警主机 | 获取子系统参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMSUBSYSTEMPARAM
DS-19Axx通用报警主机 | 设置子系统参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMSUBSYSTEMPARAM
DS-19Axx通用报警主机 | 获取GPRS参数配置 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMHOST_GPRS_CFG
DS-19Axx通用报警主机 | 设置GPRS参数配置 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMHOST_GPRS_CFG
DS-19Axx通用报警主机 | 获取网络参数配置 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMHOST_NETCFG
DS-19Axx通用报警主机 | 设置网络参数配置 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMHOST_NETCFG
用户配置 |  |  |
DS-19Axx通用报警主机 | 获取操作用户配置 | NET_DVR_GetOperateUser |
DS-19Axx通用报警主机 | 设置操作用户配置 | NET_DVR_SetOperateUser |
组旁路操作 |  |  |
DS-19Axx通用报警主机 | 对报警输入口进行组旁路 | NET_DVR_AlarmHostArrayBypass |
DS-19Axx通用报警主机 | 对报警输入口进行组旁路恢复 | NET_DVR_AlarmHostArrayBypassResume |
子系统 |  |  |
DS-19Axx通用报警主机 | 对报警输入子系统布防 | NET_DVR_AlarmHostSubSystemSetupAlarmChan |
DS-19Axx通用报警主机 | 对报警输入子系统撤防 | NET_DVR_AlarmHostSubSystemCloseAlarmChan |
DS-19Axx通用报警主机 | 对报警输入子系统进行消警 | NET_DVR_AlarmHostClearAlarm |
报警上传方式配置 |  |  |
DS-19Axx通用报警主机 | 获取报警上传方式及参数 | NET_DVR_AlarmHostGetReportMode |
DS-19Axx通用报警主机 | 设置报警上传方式及参数 | NET_DVR_AlarmHostSetReportMode |
客户端报警布防 |  |  |
DS-19Axx通用报警主机 | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 | 支持的报警信息类型有： COMM_SWITCH_ALARM， COMM_ALARMHOST_EXCEPTION
DS-19Axx通用报警主机 | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
DS-19Axx通用报警主机 | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
其他 |  |  |
DS-19Axx通用报警主机 | 蓄电池电压查询 | NET_DVR_GetBatteryVoltage |


DS-19Dxx动环报警主机功能接口介绍

除报警主机通用接口的功能外，DS-19Dxx动环报警主机还支持以下接口的功能。

设备型号 | 功能 | 接口 | 相关参数
参数配置 |  |  |
DS-19Dxx动环报警主机 | 获取模拟量参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_SENSOR_INFO
DS-19Dxx动环报警主机 | 设置模拟量参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_SENSOR_INFO
DS-19Dxx动环报警主机 | 获取RS485参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARM_RS485CFG
DS-19Dxx动环报警主机 | 设置RS485参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARM_RS485CFG
用户配置 |  |  |
DS-19Dxx动环报警主机 | 获取操作用户配置 | NET_DVR_GetOperateUser |
DS-19Dxx动环报警主机 | 设置操作用户配置 | NET_DVR_SetOperateUser |
RS485前端参数 |  |  |
DS-19Dxx动环报警主机 | 获取485前端设备能力列表 | NET_DVR_GetDeviceTypeList |
DS-19Dxx动环报警主机 | 获取485前端设备支持的协议列表 | NET_DVR_GetDeviceProtoList |
透明通道 |  |  |
DS-19Dxx动环报警主机 | 和报警主机设备建立透明通道 | NET_DVR_AlarmHostSerialStart |
DS-19Dxx动环报警主机 | 向透明通道指定的485口或者232口发送数据 | NET_DVR_AlarmHostSerialSend |
DS-19Dxx动环报警主机 | 断开透明通道 | NET_DVR_AlarmHostSerialStop |
客户端报警布防 |  |  |
DS-19Dxx动环报警主机 | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 | 支持的报警信息类型有： COMM_ALARM_ALARMHOST，COMM_SENSOR_VALUE_UPLOAD， COMM_SENSOR_ALARM， COMM_SWITCH_ALARM， COMM_ALARMHOST_EXCEPTION
DS-19Dxx动环报警主机 | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
DS-19Dxx动环报警主机 | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
其他 |  |  |
DS-19Dxx动环报警主机 | 控制空调遥控器 | NET_DVR_SetAirCondition |
DS-19Dxx动环报警主机 | 蓄电池电压查询 | NET_DVR_GetBatteryVoltage |


DS-19Cxx自主行报警主机功能接口介绍

除报警主机通用接口的功能外，DS-19Cxx自主行报警主机还支持以下接口的功能。

设备型号 | 功能 | 接口 | 相关参数
参数配置 |  |  |
DS-19Cxx自主行报警主机 | 获取报警主机拨号启用方式 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMHOSTDIALSETUPMODE
DS-19Cxx自主行报警主机 | 设置报警主机拨号启用方式 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMHOSTDIALSETUPMODE
DS-19Cxx自主行报警主机 | 获取报警主机拨号参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_ALARMHOSTDIALCFG
DS-19Cxx自主行报警主机 | 设置报警主机拨号参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_ALARMHOSTDIALCFG
DS-19Cxx自主行报警主机 | 获取报警主机门禁参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_GATEWAY_CFG
DS-19Cxx自主行报警主机 | 设置报警主机门禁参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_GATEWAY_CFG
客户端报警布防 |  |  |
DS-19Cxx自主行报警主机 | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 | 支持的报警信息类型有： COMM_SWITCH_ALARM， COMM_ALARMHOST_EXCEPTION
DS-19Cxx自主行报警主机 | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
DS-19Cxx自主行报警主机 | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
其他 |  |  |
DS-19Cxx自主行报警主机 | 蓄电池电压查询 | NET_DVR_GetBatteryVoltage |


DS_1Hxx ATM防护舱功能接口介绍

除报警主机通用接口的功能外，DS_1Hxx ATM防护舱还支持以下接口的功能。

设备型号 | 功能 | 接口 | 相关参数
参数配置 |  |  |
DS_1Hxx ATM防护舱 | 获取门禁参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_GATEWAY_CFG
DS_1Hxx ATM防护舱 | 设置门禁参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_GATEWAY_CFG
DS_1Hxx ATM防护舱 | 获取232串口参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
DS_1Hxx ATM防护舱 | 设置232串口参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RS232CFG_V30
语音上传下载 |  |  |
DS_1Hxx ATM防护舱 | 语音上传 | NET_DVR_StartUploadAudio |
DS_1Hxx ATM防护舱 | 语音下载 | NET_DVR_StartDownloadAudio |
DS_1Hxx ATM防护舱 | 获取上传或者下载进度 | NET_DVR_GetAudioProgress |
DS_1Hxx ATM防护舱 | 停止上传或者下载 | NET_DVR_StopAudioOperate |
DS_1Hxx ATM防护舱 | 语音控制 | NET_DVR_AudioCtrl |
透明通道 |  |  |
DS_1Hxx ATM防护舱 | 和报警主机设备建立透明通道 | NET_DVR_AlarmHostSerialStart |
DS_1Hxx ATM防护舱 | 向透明通道指定的485口或者232口发送数据 | NET_DVR_AlarmHostSerialSend |
DS_1Hxx ATM防护舱 | 断开透明通道 | NET_DVR_AlarmHostSerialStop |
报警布防 |  |  |
DS_1Hxx ATM防护舱 | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 | 支持的报警信息类型有： COMM_ALARMHOST_SAFETYCABINSTATE, COMM_ALARMHOST_ALARMOUTSTATUS
DS_1Hxx ATM防护舱 | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
DS_1Hxx ATM防护舱 | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
报警监听 |  |  |
DS_1Hxx ATM防护舱 | 启动监听 | NET_DVR_StartListen_V30 | 支持的报警信息类型有： COMM_ALARMHOST_SAFETYCABINSTATE, COMM_ALARMHOST_ALARMOUTSTATUS
DS_1Hxx ATM防护舱 | 停止监听 | NET_DVR_StopListen_V30 |
远程升级 |  |  |
DS_1Hxx ATM防护舱 | 升级 | NET_DVR_Upgrade |
DS_1Hxx ATM防护舱 | 获取升级进度 | NET_DVR_GetUpgradeProgress |
DS_1Hxx ATM防护舱 | 获取升级状态 | NET_DVR_GetUpgradeState |
DS_1Hxx ATM防护舱 | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |


CVR功能接口介绍

CVR功能接口介绍除通用接口的功能外，还支持以下接口的功能，包括预览、视频数据获取、录像文件查找、回放和下载、录像文件锁定和备份、手动录像、报警上传、语音对讲、硬盘管理和远程参数配置等。

设备型号 | 功能 | 接口 | 相关参数
预览相关功能 |  |  |
邦诺CVR | 设置播放显示模式 | NET_DVR_SetShowMode |
邦诺CVR | 主码流动态产生一个关键帧 | NET_DVR_MakeKeyFrame |
邦诺CVR | 子码流动态产生一个关键帧 | NET_DVR_MakeKeyFrameSub |
邦诺CVR | 实时预览 | NET_DVR_RealPlay_V30 |
邦诺CVR | 停止预览 | NET_DVR_StopRealPlay |
邦诺CVR | 获取预览时用来解码和显示的播放器句柄 | NET_DVR_GetRealPlayerIndex |
邦诺CVR | 预览画面叠加字符和图像 | NET_DVR_RigisterDrawFun |
邦诺CVR | 设置播放库的帧缓冲区个数 | NET_DVR_SetPlayerBufNumber |
邦诺CVR | 设置解码时丢弃B帧的个数 | NET_DVR_ThrowBFrame |
邦诺CVR | 设置声音播放模式 | NET_DVR_SetAudioMode |
邦诺CVR | 独占声卡模式下开启声音 | NET_DVR_OpenSound |
邦诺CVR | 独占声卡模式下关闭声音 | NET_DVR_CloseSound |
邦诺CVR | 共享声卡模式下开启声音 | NET_DVR_OpenSoundShare |
邦诺CVR | 共享声卡模式下关闭声音 | NET_DVR_CloseSoundShare |
邦诺CVR | 调节播放音量 | NET_DVR_Volume |
邦诺CVR | 注册回调函数，捕获实时码流数据 | NET_DVR_SetRealDataCallBack |
邦诺CVR | 注册回调函数，捕获实时码流数据（标准码流） | NET_DVR_SetStandardDataCallBack |
邦诺CVR | 捕获数据并存放到指定的文件中 | NET_DVR_SaveRealData |
邦诺CVR | 停止数据捕获 | NET_DVR_StopSaveRealData |
邦诺CVR | 单帧数据捕获并保存成BMP位图 | NET_DVR_CapturePicture |
录像锁定 |  |  |
邦诺CVR | 按时间对录像段加锁 | NET_DVR_LockFileByTime |
邦诺CVR | 按时间对录像段解锁 | NET_DVR_UnLockFileByTime |
邦诺CVR | 按流ID对录像段加锁 | NET_DVR_LockStreamFileByTime |
邦诺CVR | 按流ID对录像段解锁 | NET_DVR_UnlockStreamFileByTime |
按流ID查找录像的相关功能 |  |  |
邦诺CVR | 根据事件查找录像文件 | NET_DVR_FindFileByEvent |
邦诺CVR | 逐个获取查找到的文件信息 | NET_DVR_FindNextEvent |
邦诺CVR | 关闭文件查找，释放资源 | NET_DVR_FindClose_V30 |
回放录像及相关 |  |  |
邦诺CVR | 按时间回放录像文件 | NET_DVR_PlayBackByTime_V40 |
邦诺CVR | 控制录像回放的状态 | NET_DVR_PlayBackControl_V40 |
邦诺CVR | 停止回放录像文件 | NET_DVR_StopPlayBack |
邦诺CVR | 捕获回放的录像数据，并保存成文件 | NET_DVR_PlayBackSaveData |
邦诺CVR | 停止保存录象数据 | NET_DVR_StopPlayBackSave |
邦诺CVR | 注册回调函数，捕获录像数据 | NET_DVR_SetPlayDataCallBack |
邦诺CVR | 获取录像回放时显示的OSD时间 | NET_DVR_GetPlayBackOsdTime |
邦诺CVR | 录像回放时抓图，并保存在文件中 | NET_DVR_PlayBackCaptureFile |
邦诺CVR | 刷新显示回放窗口 | NET_DVR_RefreshPlay |
邦诺CVR | 获取回放时用来解码显示的播放库句柄 | NET_DVR_GetPlayBackPlayerIndex |
录像下载及相关 |  |  |
邦诺CVR | 按时间下载录像文件 | NET_DVR_GetFileByTime_V40 |
邦诺CVR | 控制录像下载的状态 | NET_DVR_PlayBackControl_V40 |
邦诺CVR | 停止下载录像文件 | NET_DVR_StopGetFile |
录像文件锁定与解锁 |  |  |
邦诺CVR | 按时间锁定录像段 | NET_DVR_LockFileByTime |
邦诺CVR | 按时间解锁录像段 | NET_DVR_UnLockFileByTime |
邦诺CVR | 按流ID锁定录像段 | NET_DVR_LockStreamFileByTime |
邦诺CVR | 按流ID解锁录像段 | NET_DVR_UnlockStreamFileByTime |
手动录像 |  |  |
邦诺CVR | 远程手动启动设备录像 | NET_DVR_StartDVRRecord |
邦诺CVR | 远程手动停止设备录像 | NET_DVR_StopDVRRecord |
邦诺CVR | 按流ID远程手动启动设备录像 | NET_DVR_StartManualRecord |
邦诺CVR | 按流ID远程手动停止设备录像 | NET_DVR_StopManualRecord |
布防、撤防和监听 |  |  |
邦诺CVR | 注册回调函数，接收设备报警消息等 | NET_DVR_SetDVRMessageCallBack_V30 | 上传的报警信息NET_DVR_ALARMINFO_DEV
邦诺CVR | 建立报警上传通道，获取报警等信息 | NET_DVR_SetupAlarmChan_V30 |
邦诺CVR | 撤销报警上传通道 | NET_DVR_CloseAlarmChan_V30 |
邦诺CVR | 启动监听，接收设备主动上传的报警等信息（支持多线程） | NET_DVR_StartListen_V30 | 上传的报警信息NET_DVR_ALARMINFO_DEV
邦诺CVR | 停止监听（支持多线程） | NET_DVR_StopListen_V30 |
硬盘管理 |  |  |
邦诺CVR | 远程格式化设备硬盘 | NET_DVR_FormatDisk |
邦诺CVR | 获取格式化硬盘的进度 | NET_DVR_GetFormatProgress |
邦诺CVR | 关闭格式化硬盘句柄，释放资源 | NET_DVR_CloseFormatHandle |
设备维护管理 |  |  |
邦诺CVR | 获取设备的工作状态 | NET_DVR_GetDVRWorkState_V30 |
邦诺CVR | 设置远程升级时网络环境 | NET_DVR_SetNetworkEnvironment |
邦诺CVR | 远程升级 | NET_DVR_Upgrade |
邦诺CVR | 获取远程升级的进度 | NET_DVR_GetUpgradeProgress |
邦诺CVR | 获取远程升级的状态 | NET_DVR_GetUpgradeState |
邦诺CVR | 关闭远程升级句柄，释放资源 | NET_DVR_CloseUpgradeHandle |
邦诺CVR | 恢复设备默认参数 | NET_DVR_RestoreConfig |
邦诺CVR | 导出配置文件 | NET_DVR_GetConfigFile_V30 |
邦诺CVR | 导出配置文件 | NET_DVR_GetConfigFile |
邦诺CVR | 导入配置文件 | NET_DVR_SetConfigFile_EX |
邦诺CVR | 导入配置文件 | NET_DVR_SetConfigFile |
关机和重启 |  |  |
邦诺CVR | 重启设备 | NET_DVR_RebootDVR |
邦诺CVR | 关闭设备 | NET_DVR_ShutDownDVR |
远程参数配置 |  |  |
邦诺CVR | 获取设备时间参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_TIME
邦诺CVR | 设置设备时间参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_TIME
邦诺CVR | 获取录像参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_RECORD_V30
邦诺CVR | 设置录像参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_RECORD_V30
邦诺CVR | 获取网络参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
邦诺CVR | 设置网络参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_NETCFG_V30
邦诺CVR | 获取用户参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_USER_V30
邦诺CVR | 设置用户参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_USER_V30
邦诺CVR | 获取IP接入配置参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_IPPARACFG_V40
邦诺CVR | 设置IP接入配置参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_IPPARACFG_V40
邦诺CVR | 获取硬盘管理参数 | NET_DVR_GetDVRConfig | 配置参数：NET_DVR_HDCFG
邦诺CVR | 设置硬盘管理参数 | NET_DVR_SetDVRConfig | 配置参数：NET_DVR_HDCFG
邦诺CVR | 获取流的来源信息 | NET_DVR_GetDeviceConfig | 配置参数：NET_DVR_STREAM_SRC_INFO
邦诺CVR | 设置流的来源信息 | NET_DVR_SetDeviceConfig | 配置参数：NET_DVR_STREAM_SRC_INFO
邦诺CVR | 获取录像信息 | NET_DVR_GetDeviceConfig | 配置参数：NET_DVR_STREAM_RECORD_INFO
邦诺CVR | 设置录像参数 | NET_DVR_SetDeviceConfig | 配置参数：NET_DVR_STREAM_RECORD_INFO
邦诺CVR | 获取流状态信息 | NET_DVR_GetDeviceConfig | 配置参数：NET_DVR_STREAM_RECORD_STATUS
邦诺CVR | 设置流状态信息 | NET_DVR_SetDeviceConfig | 配置参数：NET_DVR_STREAM_RECORD_STATUS

以下给出设备支持的编码类型和封装格式

设备型号 | 封装格式 | 编码类型 | 备注
邦诺CVR | 依接入的前端决定 | 依接入的前端决定 |


SDK接口调用主要流程

设备网络SDK开发使用手册

SDK接口调用的主要流程

其中虚线框的流程是可选部分，不会影响其他流程和模块的功能使用。按实现功能的不同可以分成十个模块，实现每个模块的功能时初始化SDK、用户注册设备、注销设备和释放SDK资源这4个流程是必不可少的。

  • 初始化SDK（NET_DVR_Init）：对整个网络SDK系统的初始化，内存预分配等操作。
  • 设置连接超时时间（NET_DVR_SetConnectTime）：这部分为可选，用于设置SDK中的网络连接超时时间，用户可以根据自己的需要设置该值。在不调用此接口设置超时时间的情况下，将采用SDK中的默认值。
  • 设置接收异常消息的回调函数（NET_DVR_SetDVRMessage或NET_DVR_SetExceptionCallBack_V30）：由于SDK中大部分模块的功能都是由异步模式实现，所以我们提供此接口用于接收预览、报警、回放、透明通道和语音对讲等模块发生异常信息。用户可以在初始化SDK后就设置该回调函数，在应用层对各个模块异常消息的接收和处理。
  • 从解析服务器获得设备的IP地址（NET_DVR_GetDVRIPByResolveSvr）：该接口提供一种在仅知道设备名称和序列号的情况下，从解析服务器获得设备IP地址的方法。如：当前设备是通过拨号上网方式获取到动态IP地址，而运行了我公司IPServer软件的服务器即为解析服务器，我们可以通过此接口输入解析服务器的地址、设备的名称和序列号等信息查询该设备的IP地址。IPServer是我公司提供的一款域名解析服务器软件。
  • 用户注册设备（NET_DVR_Login_V30）：实现用户的注册功能，注册成功后，返回的用户ID作为其他功能操作的唯一标识，SDK允许最大注册用户数为512个。就设备而言，V3.0以上版本支持的设备允许有32个注册用户名，而且同时最多允许128个用户注册；V3.0以下版本支持的设备允许有16个注册用户名，而且同时最多允许128个用户注册。
  • 预览模块：从前端服务器取实时码流，解码显示以及播放控制等功能，同时支持软解码和解码卡解码。具体流程详见预览模块流程。
  • 回放和下载模块：可以通过按时间和按文件名的方式远程回放或者下载前端服务器的录像文件，后续可以进行解码或者存储。同时还支持断点续传功能。具体流程详见回放和下载模块流程。
  • 参数配置模块：设置和获取前端服务器的参数，主要包括设备参数、网络参数、通道压缩参数、串口参数、报警参数、异常参数、交易信息和用户配置等参数信息。具体流程详见参数配置模块流程。
  • 远程设备维护模块：实现关闭设备、重启设备、恢复默认值、远程硬盘格式化、远程升级和配置文件导入/导出等维护工作。具体流程详见远程设备维护模块流程。
  • 语音对讲转发模块：实现和前端服务器的语音数据对讲和语音数据获取，音频编码格式可以指定。具体流程详见语音对讲转发模块流程。
  • 报警模块：处理前端服务器上传的各种报警信号。报警分为“布防”和“监听”两种方式，在采用监听方式并且不需要获取用户ID的情况下，报警模块可以无需进行“用户注册”操作步骤。具体流程详见报警模块流程。
  • 透明通道模块：透明通道是将IP数据报文解析后直接发送到串行口的一种技术。实际上起到了延伸串行设备控制距离的作用。可利用IP网络控制多种串行设备，如控制解码器、矩阵、报警主机、门禁、仪器仪表等串行设备，对用户来说，只看到点对点传输，无须关心网络传输过程，所以称为串口透明通道。 SDK提供485和232串口作为透明通道功能，其中要将232串口作为透明通道使用，首先必须在232串口的配置信息（NET_DVR_RS232CFG）中将工作模式选为透明通道，这样232串口才可作为透明通道使用。具体流程详见透明通道模块流程。
  • 云台控制模块：实现对云台的基本操作、预置点、巡航、轨迹和透明云台的控制。SDK将云台控制分为两种模式：一种是通过图像预览返回的句柄进行控制；另一种是无预览限制，通过用户注册ID号进行云台控制。
  • 解码器功能模块：实现解码器设备的配置、解码控制等功能。SDK支持单路解码器和多路解码器，但目前以多路解码器为主流产品。具体流程详见多路解码器功能模块流程。
  • 智能行为分析功能模块：实现对智能产品的参数配置、报警上传和能力集获取等功能。具体流程详见智能行为分析功能模块流程。

注：本手册下文提供的代码都是在VC环境下编译的，其他语言版本的DEMO可在我们提供的多语言版本DEMO资源中找到。


预览模块流程

  • 实时预览支持TCP、UDP、RTP、MULTICAST网络传输模式。
  • 实时预览时，DS-80xx、DS-70xx、DS-71xx、DS-72xx、 DS-60xx、DS-61xx系列设备每个通道最多支持6路同时连接，每台设备最多支持24路同时连接；
    DS-81xx、DS-71xxHV、72xxHV等系列设备每个通道最多支持6路同时连接，每台设备最多支持18路同时连接；
    DS-90xx混合型硬盘录像机每个通道最多支持6路同时连接，每台设备最多支持64路同时连接；
    DS-91xx系列设备每个通道最多支持6路同时连接，每台设备最多支持64路同时连接；
    IP设备每个通道最多支持6路同时连接；
    DS-91xx-ST系列通道连接数没有限制，每台设备最多支持128路同时连接。
预览和与预览相关的模块流程图

图中虚线框部分的模块是与预览模块相关，必须在启动预览后才能调用，这些模块之间是并列的关系，各自完成相应的功能。

  • 声音控制功能主要实现独占、共享声音的打开和关闭；音量的控制。相关接口有：NET_DVR_OpenSound、NET_DVR_CloseSound、NET_DVR_OpenSoundShare、NET_DVR_CloseSoundShare、NET_DVR_Volume等。
  • 实时流数据捕获和录像模块主要实现数据回调和本地录像的功能，可以供用户后续处理。相关接口有：NET_DVR_SetRealDataCallBack、NET_DVR_SetStandardDataCallBack、NET_DVR_SaveRealData等。
  • 抓图功能主要实现对当前解码图像的捕获，保存格式为BMP。相关接口有：NET_DVR_CapturePicture。
  • 云台控制模块主要是在开启预览的前提下实现对云台控制的操作功能，包括云台预置点、巡航、轨迹和透明云台等。相关接口有：NET_DVR_PTZControl、NET_DVR_PTZPreset、NET_DVR_PTZCruise、NET_DVR_PTZTrack、NET_DVR_TransPTZ。

实时流解码方式

  • 方式一：在预览接口NET_DVR_RealPlay_V30中预览参数的播放窗口句柄赋成有效句柄，则由SDK实现解码功能。在初始化SDK和注册设备两步骤后，直接调用启动预览和停止预览接口。

  • 方式二：用户可以通过设置预览接口NET_DVR_RealPlay_V30中预览参数的播放窗口句柄为空值，并通过调用捕获数据的接口（即设置NET_DVR_RealPlay_V30接口中的回调函数或调用NET_DVR_SetRealDataCallBack、NET_DVR_SetStandardDataCallBack接口），获取码流数据进行后续解码播放处理。

下面示例代码以设置NET_DVR_RealPlay_V30()接口中的回调为例进行说明。

示例代码

方式一(由SDK实现解码显示)

#include <stdio.h>
#include <iostream>
#include "Windows.h"
#include "HCNetSDK.h"
#include <time.h>
using namespace std;

void CALLBACK g_ExceptionCallBack(DWORD dwType, LONG lUserID, LONG lHandle, void *pUser)
{
    char tempbuf[256] = {0};
    switch(dwType)
    {
    case EXCEPTION_RECONNECT:    //预览时重连
        printf("----------reconnect--------%d\n", time(NULL));
    break;
    default:
    break;
    }
}

void main() {

  //---------------------------------------
  // 初始化
  NET_DVR_Init();
  //设置连接时间与重连时间
  NET_DVR_SetConnectTime(2000, 1);
  NET_DVR_SetReconnect(10000, true);

  //---------------------------------------
  // 注册设备
  LONG lUserID;
  NET_DVR_DEVICEINFO_V30 struDeviceInfo;
  lUserID = NET_DVR_Login_V30("192.0.0.64", 8000, "admin", "12345", &struDeviceInfo);
  if (lUserID < 0)
  {
       printf("Login error, %d\n", NET_DVR_GetLastError());
       NET_DVR_Cleanup();
       return;
  }

  //---------------------------------------
  //设置异常消息回调函数
  NET_DVR_SetExceptionCallBack_V30(0, NULL,g_ExceptionCallBack, NULL);

  //---------------------------------------
  //启动预览并设置回调数据流
  LONG lRealPlayHandle;
  HWND hWnd = GetConsoleWindow();     //获取窗口句柄
  NET_DVR_CLIENTINFO ClientInfo = {0};
  ClientInfo.hPlayWnd = hWnd;         //需要SDK解码时句柄设为有效值，仅取流不解码时可设为空
  ClientInfo.lChannel     = 1;       //预览通道号
  ClientInfo.lLinkMode    = 0;       //最高位(31)为0表示主码流，为1表示子码流0～30位表示连接方式：0－TCP方式；1－UDP方式；2－多播方式；3－RTP方式;
  ClientInfo.sMultiCastIP = NULL;   //多播地址，需要多播预览时配置

  BOOL bPreviewBlock = false;       //请求码流过程是否阻塞，0：否，1：是
  lRealPlayHandle = NET_DVR_RealPlay_V30(lUserID, &ClientInfo, NULL, NULL, 0);
  if (lRealPlayHandle < 0)
  {
      printf("NET_DVR_RealPlay_V30 error\n");
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  //---------------------------------------
  //关闭预览
  NET_DVR_StopRealPlay(lRealPlayHandle);
  //注销用户
  NET_DVR_Logout(lUserID);
  //释放SDK资源
  NET_DVR_Cleanup();

  return;
}

方式二（由用户自行处理回调得到的码流数据，此处以软解显示为例，代码中带有PlayM4_的函数参见软解码库说明文档《播放器SDK编程指南》）

#include <stdio.h>
#include <iostream>
#include "Windows.h"
#include "HCNetSDK.h"
#include "plaympeg4.h"
#include <time.h>
using namespace std;

LONG lPort; //全局的播放库port号

void CALLBACK g_RealDataCallBack_V30(LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,void* dwUser)
{
    HWND hWnd=GetConsoleWindow();

    switch (dwDataType)
    {
    case NET_DVR_SYSHEAD: //系统头

        if (!PlayM4_GetPort(&lPort))  //获取播放库未使用的通道号
        {
            break;
        }
        //m_iPort = lPort; //第一次回调的是系统头，将获取的播放库port号赋值给全局port，下次回调数据时即使用此port号播放
        if (dwBufSize > 0)
        {
            if (!PlayM4_SetStreamOpenMode(lPort, STREAME_REALTIME))  //设置实时流播放模式
            {
                break;
            }

            if (!PlayM4_OpenStream(lPort, pBuffer, dwBufSize, 1024*1024)) //打开流接口
            {
                break;
            }

            if (!PlayM4_Play(lPort, hWnd)) //播放开始
            {
                break;
            }
        }
    case NET_DVR_STREAMDATA:   //码流数据
        if (dwBufSize > 0 && lPort != -1)
        {
            if (!PlayM4_InputData(lPort, pBuffer, dwBufSize))
            {
                break;
            }
        }
    }
}

void CALLBACK g_ExceptionCallBack(DWORD dwType, LONG lUserID, LONG lHandle, void *pUser)
{
    char tempbuf[256] = {0};
    switch(dwType)
    {
    case EXCEPTION_RECONNECT:    //预览时重连
    printf("----------reconnect--------%d\n", time(NULL));
    break;
    default:
    break;
    }
}

void main() {

  //---------------------------------------
  // 初始化
  NET_DVR_Init();
  //设置连接时间与重连时间
  NET_DVR_SetConnectTime(2000, 1);
  NET_DVR_SetReconnect(10000, true);

  //---------------------------------------
  // 注册设备
  LONG lUserID;
  NET_DVR_DEVICEINFO_V30 struDeviceInfo;
  lUserID = NET_DVR_Login_V30("172.0.0.100", 8000, "admin", "12345", &struDeviceInfo);
  if (lUserID < 0)
  {
       printf("Login error, %d\n", NET_DVR_GetLastError());
       NET_DVR_Cleanup();
       return;
  }

  //---------------------------------------
  //设置异常消息回调函数
  NET_DVR_SetExceptionCallBack_V30(0, NULL,g_ExceptionCallBack, NULL);

  //---------------------------------------
  //启动预览并设置回调数据流
  LONG lRealPlayHandle;
  NET_DVR_CLIENTINFO ClientInfo = {0};
  ClientInfo.hPlayWnd = NULL;         //需要SDK解码时句柄设为有效值，仅取流不解码时可设为空
  ClientInfo.lChannel     = 1;       //预览通道号
  ClientInfo.lLinkMode    = 0;       //最高位(31)为0表示主码流，为1表示子码流0～30位表示连接方式：0－TCP方式；1－UDP方式；2－多播方式；3－RTP方式;
  ClientInfo.sMultiCastIP = NULL;   //多播地址，需要多播预览时配置

  BOOL bPreviewBlock = false;       //请求码流过程是否阻塞，0：否，1：是
  lRealPlayHandle = NET_DVR_RealPlay_V30(lUserID, &ClientInfo, g_RealDataCallBack_V30, NULL, 0);
  if (lRealPlayHandle < 0)
  {
      printf("NET_DVR_RealPlay_V30 error\n");
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  //---------------------------------------
  //关闭预览
  NET_DVR_StopRealPlay(lRealPlayHandle);
  //注销用户
  NET_DVR_Logout_V30(lUserID);
  NET_DVR_Cleanup();

  return;
}


回放和下载模块流程

  • 按文件回放或下载需要通过查找录像文件功能先获取文件信息（相关接口NET_DVR_FindFile_V30、NET_DVR_FindNextFile_V30），然后根据获取到的文件名开始回放或下载（相关接口NET_DVR_PlayBackByName、NET_DVR_GetFileByName），特别提醒在调用了回放或下载的接口后，还必须调用控制接口（NET_DVR_PlayBackControl）的开始播放命令（NET_DVR_PLAYSTART）。

  • 按时间回放或下载文件时，用户可以无需调用查找录像文件的相关接口，只要在接口中指定开始和结束时间，调用回放或下载接口（相关接口NET_DVR_PlayBackByTime、NET_DVR_GetFileByTime）后，还必须调用控制接口（NET_DVR_PlayBackControl）的开始播放命令（NET_DVR_PLAYSTART）。此时，将按照指定时间范围内最近的有录像的时间段开始回放或下载。用户也可以通过调用查找录像文件的相关接口，获取文件的开始和结束时间后，按这个时间范围指定回放或下载接口中的时间参数，最后还必须调用控制接口（NET_DVR_PlayBackControl）的开始播放命令（NET_DVR_PLAYSTART）。
  • Linux下，按文件回放和按时间回放时，若回放的窗口句柄不为NULL（即需要SDK解码显示），需要调用初始化窗口接口（NET_DVR_DrawAreaInit）进行SDL窗口的初始化才能正常的解码显示，在停止回放时，需要调用释放窗口资源接口（NET_DVR_DrawAreaRelease）释放窗口资源。

示例代码

示例一：查找录像文件并下载

#include <stdio.h>
#include <iostream>
#include "Windows.h"
#include "HCNetSDK.h"
using namespace std;

int saveRecordFile(int userId,char * srcfile,char * destfile)
{
    int bRes = 1;
    int hPlayback = 0;
    if( (hPlayback = NET_DVR_GetFileByName(userId, srcfile, destfile)) < 0 )
    {
        printf( "GetFileByName failed. error[%d]\n", NET_DVR_GetLastError());
        bRes= -1;
        return bRes;
    }

    if(!NET_DVR_PlayBackControl(hPlayback, NET_DVR_PLAYSTART, 0, NULL))
    {
        printf("play back control failed [%d]\n",NET_DVR_GetLastError());
        bRes=-1;
        return bRes;
    }

    int nPos = 0;
    for(nPos = 0;  nPos < 100&&nPos>=0; nPos = NET_DVR_GetDownloadPos(hPlayback))
    {
        Sleep(5000);  //millisecond
    }
    printf("have got %d\n", nPos);

    if(!NET_DVR_StopGetFile(hPlayback))
    {
        printf("failed to stop get file [%d]\n",NET_DVR_GetLastError());
        bRes = -1;
        return bRes;
    }
    printf("%s\n",srcfile);

    if(nPos<0||nPos>100)
    {
        printf("download err [%d]\n",NET_DVR_GetLastError());
        bRes=-1;
        return bRes;
    }
    else
    {
        return 0;
    }
}

void main() {

  //---------------------------------------
  // 初始化
  NET_DVR_Init();
  //设置连接时间与重连时间
  NET_DVR_SetConnectTime(2000, 1);
  NET_DVR_SetReconnect(10000, true);

  //---------------------------------------
  // 注册设备
  LONG lUserID;
  NET_DVR_DEVICEINFO_V30 struDeviceInfo;
  lUserID = NET_DVR_Login_V30("192.0.0.64", 8000, "admin", "12345", &struDeviceInfo);
  if (lUserID < 0)
  {
       printf("Login error, %d\n", NET_DVR_GetLastError());
       NET_DVR_Cleanup();
       return;
  }

  NET_DVR_FILECOND struFileCond;
  struFileCond.dwFileType = 0xFF;
  struFileCond.lChannel = 1;
  struFileCond.dwIsLocked = 0xFF;
  struFileCond.dwUseCardNo = 0;
  struFileCond.struStartTime.dwYear   = 2011;
  struFileCond.struStartTime.dwMonth  = 3;
  struFileCond.struStartTime.dwDay    = 1;
  struFileCond.struStartTime.dwHour   = 10;
  struFileCond.struStartTime.dwMinute = 6;
  struFileCond.struStartTime.dwSecond =50;
  struFileCond.struStopTime.dwYear    = 2011;
  struFileCond.struStopTime.dwMonth   = 3;
  struFileCond.struStopTime.dwDay     = 1;
  struFileCond.struStopTime.dwHour    = 11;
  struFileCond.struStopTime.dwMinute  = 7;
  struFileCond.struStopTime.dwSecond  = 0;

  //---------------------------------------
  //查找录像文件
  int lFindHandle = NET_DVR_FindFile_V30(lUserID, &struFileCond);
  if(lFindHandle < 0)
  {
      printf("find file fail,last error %d\n",NET_DVR_GetLastError());
      return;
  }
  NET_DVR_FINDDATA_V30 struFileData;
  while(true)
  {
      int result = NET_DVR_FindNextFile_V30(lFindHandle, &struFileData);
      if(result == NET_DVR_ISFINDING)
      {
          continue;
      }
      else if(result == NET_DVR_FILE_SUCCESS)
      {
          char strFileName[256] = {0};
          sprintf(strFileName, "./%s", struFileData.sFileName);
          saveRecordFile(lUserID, struFileData.sFileName,  strFileName);
          break;
      }
      else if(result == NET_DVR_FILE_NOFIND || result == NET_DVR_NOMOREFILE)
      {
          break;
      }
      else
      {
          printf("find file fail for illegal get file state");
          break;
      }
  }

  //停止查找
  if(lFindHandle > 0)
  {
      NET_DVR_FindClose_V30(lFindHandle);
  }

  //注销用户
  NET_DVR_Logout(lUserID);
  //释放SDK资源
  NET_DVR_Cleanup();
  return;
}

示例二：按时间播放录像文件

#include <stdio.h>
#include <iostream>
#include "Windows.h"
#include "HCNetSDK.h"
using namespace std;

void main() {

  //---------------------------------------
  // 初始化
  NET_DVR_Init();
  //设置连接时间与重连时间
  NET_DVR_SetConnectTime(2000, 1);
  NET_DVR_SetReconnect(10000, true);

  //---------------------------------------
  // 注册设备
  LONG lUserID;
  NET_DVR_DEVICEINFO_V30 struDeviceInfo;
  lUserID = NET_DVR_Login_V30("192.0.0.64", 8000, "admin", "12345", &struDeviceInfo);
  if (lUserID < 0)
  {
       printf("Login error, %d\n", NET_DVR_GetLastError());
       NET_DVR_Cleanup();
       return;
  }

  NET_DVR_TIME struStartTime, struStopTime;
  struStartTime.dwYear   = 2011;
  struStartTime.dwMonth  = 3;
  struStartTime.dwDay    = 1;
  struStartTime.dwHour   = 9;
  struStartTime.dwMinute = 0;
  struStartTime.dwSecond =0;
  struStopTime.dwYear    = 2011;
  struStopTime.dwMonth   = 3;
  struStopTime.dwDay     = 1;
  struStopTime.dwHour    = 10;
  struStopTime.dwMinute  = 7;
  struStopTime.dwSecond  = 0;
  HWND hWnd = GetConsoleWindow();     //获取窗口句柄

  //---------------------------------------
  //按时间回放
  int hPlayback;
  hPlayback = NET_DVR_PlayBackByTime(lUserID, 1, &struStartTime, &struStopTime, hWnd);
  if(hPlayback < 0)
  {
      printf("NET_DVR_GetFileByTime fail,last error %d\n",NET_DVR_GetLastError());
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  //---------------------------------------
  //开始
  if(!NET_DVR_PlayBackControl(hPlayback, NET_DVR_PLAYSTART, 0, NULL))
  {
      printf("play back control failed [%d]\n",NET_DVR_GetLastError());
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  Sleep(15000);  //millisecond
  if(!NET_DVR_StopPlayBack(hPlayback))
  {
      printf("failed to stop file [%d]\n",NET_DVR_GetLastError());
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  //注销用户
  NET_DVR_Logout(lUserID);
  //释放SDK资源
  NET_DVR_Cleanup();
  return;
}

示例三：按时间下载录像文件

#include <stdio.h>
#include <iostream>
#include "Windows.h"
#include "HCNetSDK.h"
using namespace std;

void main() {

  //---------------------------------------
  // 初始化
  NET_DVR_Init();
  //设置连接时间与重连时间
  NET_DVR_SetConnectTime(2000, 1);
  NET_DVR_SetReconnect(10000, true);

  //---------------------------------------
  // 注册设备
  LONG lUserID;
  NET_DVR_DEVICEINFO_V30 struDeviceInfo;
  lUserID = NET_DVR_Login_V30("192.0.0.64", 8000, "admin", "12345", &struDeviceInfo);
  if (lUserID < 0)
  {
       printf("Login error, %d\n", NET_DVR_GetLastError());
       NET_DVR_Cleanup();
       return;
  }

  NET_DVR_TIME struStartTime, struStopTime;
  struStartTime.dwYear   = 2011;
  struStartTime.dwMonth  = 3;
  struStartTime.dwDay    = 1;
  struStartTime.dwHour   = 9;
  struStartTime.dwMinute = 0;
  struStartTime.dwSecond =0;
  struStopTime.dwYear    = 2011;
  struStopTime.dwMonth   = 3;
  struStopTime.dwDay     = 1;
  struStopTime.dwHour    = 10;
  struStopTime.dwMinute  = 7;
  struStopTime.dwSecond  = 0;

  //---------------------------------------
  //按时间下载
  int hPlayback;
  hPlayback = NET_DVR_GetFileByTime(lUserID, 1, &struStartTime, &struStopTime, "./test.mp4");
  if(hPlayback < 0)
  {
      printf("NET_DVR_GetFileByTime fail,last error %d\n",NET_DVR_GetLastError());
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  //---------------------------------------
  //开始下载
  if(!NET_DVR_PlayBackControl(hPlayback, NET_DVR_PLAYSTART, 0, NULL))
  {
      printf("play back control failed [%d]\n",NET_DVR_GetLastError());
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  int nPos = 0;
  for(nPos = 0; nPos < 100&&nPos>=0; nPos = NET_DVR_GetDownloadPos(hPlayback))
  {
      Sleep(5000);  //millisecond
  }
  if(!NET_DVR_StopGetFile(hPlayback))
  {
      printf("failed to stop get file [%d]\n",NET_DVR_GetLastError());
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }
  if(nPos<0||nPos>100)
  {
      printf("download err [%d]\n",NET_DVR_GetLastError());
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  //注销用户
  NET_DVR_Logout(lUserID);
  //释放SDK资源
  NET_DVR_Cleanup();
  return;
}


参数配置模块流程

  • 实现参数配置首先必须做好初始化SDK和用户注册这两个步骤，将用户注册接口返回的ID号作为配置接口的首个参数。建议在每次设置某类参数之前，先调用获取参数的接口（NET_DVR_GetDVRConfig）得到完整的参数结构，修改需要更改的参数，作为设置参数接口中的输入参数，最后调用设置参数接口（NET_DVR_SetDVRConfig），返回成功即设置成功。

    • 示例代码

    配置压缩参数（NET_DVR_COMPRESSIONCFG_V30）

    #include <stdio.h>
#include <iostream>
#include "Windows.h"
#include "HCNetSDK.h"
using namespace std;

void main() {

  //---------------------------------------
  // 初始化
  NET_DVR_Init();
  //设置连接时间与重连时间
  NET_DVR_SetConnectTime(2000, 1);
  NET_DVR_SetReconnect(10000, true);

  //---------------------------------------
  // 注册设备
  LONG lUserID;
  NET_DVR_DEVICEINFO_V30 struDeviceInfo;
  lUserID = NET_DVR_Login_V30("192.0.0.64", 8000, "admin", "12345", &struDeviceInfo);
  if (lUserID < 0)
  {
       printf("Login error, %d\n", NET_DVR_GetLastError());
       NET_DVR_Cleanup();
       return;
  }

  int iRet;
  //获取压缩参数
  DWORD dwReturnLen;
  NET_DVR_COMPRESSIONCFG_V30 struParams = {0};
  iRet = NET_DVR_GetDVRConfig(lUserID, NET_DVR_GET_COMPRESSCFG_V30, struDeviceInfo.byStartChan, \
          &struParams, sizeof(NET_DVR_COMPRESSIONCFG_V30), &dwReturnLen);
  if (!iRet)
  {
      printf("NET_DVR_GetDVRConfig NET_DVR_GET_COMPRESSCFG_V30 error.\n");
      NET_DVR_Logout_V30(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  //设置压缩参数
  struParams.struNormHighRecordPara.dwVideoBitrate = 22;
  iRet = NET_DVR_SetDVRConfig(lUserID, NET_DVR_SET_COMPRESSCFG_V30, struDeviceInfo.byStartChan, \
          &struParams, sizeof(NET_DVR_COMPRESSIONCFG_V30));
  if (!iRet)
  {
      printf("NET_DVR_GetDVRConfig NET_DVR_SET_COMPRESSCFG_V30 error.\n");
      NET_DVR_Logout_V30(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  //获取压缩参数
  iRet = NET_DVR_GetDVRConfig(lUserID, NET_DVR_GET_COMPRESSCFG_V30, struDeviceInfo.byStartChan, \
          &struParams, sizeof(NET_DVR_COMPRESSIONCFG_V30), &dwReturnLen);
  if (!iRet)
  {
      printf("NET_DVR_GetDVRConfig NET_DVR_GET_COMPRESSCFG_V30 error.\n");
      NET_DVR_Logout_V30(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  printf("Video Bitrate is %d\n", struParams.struNormHighRecordPara.dwVideoBitrate);
  //注销用户
  NET_DVR_Logout(lUserID);
  //释放SDK资源
  NET_DVR_Cleanup();
  return;
}


远程设备维护模块流程

远程设备维护模块包括获取设备工作状态、远程升级、日志查找、恢复设备默认参数和导入、导出配置文件等功能。

  • 获取设备工作状态：可以获取到设备当前的硬盘状态、通道状态、报警输入和输出口状态、本地显示状态和语音通道状态等信息。相关接口有：NET_DVR_GetDVRWorkState_V30等。
  • 远程升级：对设备进行升级，并且可以获取当前升级的进度和状态。相关接口有：NET_DVR_Upgrade、NET_DVR_GetUpgradeProgress、NET_DVR_GetUpgradeState等。
  • 日志查找：可以搜索到当前设备的日志信息，包括报警、异常、操作和带S.M.A.R.T信息的日志。相关接口有：NET_DVR_FindDVRLog_V30、NET_DVR_FindNextLog_V30等。
  • 恢复设备默认参数：调用接口NET_DVR_RestoreConfig能将设备的所有参数都恢复成默认值。
  • 导入、导出配置文件：将设备目前的所有配置信息导出保存或者将指定的配置信息导入到设备。相关接口有：NET_DVR_GetConfigFile_V30、NET_DVR_GetConfigFile、NET_DVR_SetConfigFile_EX、NET_DVR_SetConfigFile等。

示例代码

日志查询

#include <stdio.h>
#include <iostream>
#include "Windows.h"
#include "HCNetSDK.h"
using namespace std;

void main() {

    //---------------------------------------
    // 初始化
    NET_DVR_Init();
    //设置连接时间与重连时间
    NET_DVR_SetConnectTime(2000, 1);
    NET_DVR_SetReconnect(10000, true);

    //---------------------------------------
    // 注册设备
    LONG lUserID;
    NET_DVR_DEVICEINFO_V30 struDeviceInfo;
    lUserID = NET_DVR_Login_V30("192.0.0.64", 8000, "admin", "12345", &struDeviceInfo);
    if (lUserID < 0)
    {
         printf("Login error, %d\n", NET_DVR_GetLastError());
         NET_DVR_Cleanup();
         return;
    }

    NET_DVR_TIME struStartTime, struStopTime;
    struStartTime.dwYear    = 2011;
    struStartTime.dwMonth   = 3;
    struStartTime.dwDay     = 2;
    struStartTime.dwHour    = 9;
    struStartTime.dwMinute  = 0;
    struStartTime.dwSecond  =0;

    struStopTime.dwYear     = 2011;
    struStopTime.dwMonth    = 3;
    struStopTime.dwDay      = 2;
    struStopTime.dwHour     = 9;
    struStopTime.dwMinute   = 10;
    struStopTime.dwSecond   = 0;

    //---------------------------------------
    //查找日志
    int lFindHandle = NET_DVR_FindDVRLog_V30(lUserID, 0, 0, 0, &struStartTime, &struStopTime, FALSE);
    if(lFindHandle < 0)
    {
        printf("find log fail,last error %d\n",NET_DVR_GetLastError());
        return;
    }
    NET_DVR_LOG_V30 struLog;
    while(true)
    {
        int result = NET_DVR_FindNextLog_V30(lFindHandle, &struLog);
        if(result == NET_DVR_ISFINDING)
        {
            printf("finding\n");
            continue;
        }
        else if(result == NET_DVR_FILE_SUCCESS)
        {
            char strLog[256] = {0};
            printf("log:%04d-%02d-%02d %02d:%02d:%02d\n", struLog.strLogTime.dwYear, struLog.strLogTime.dwMonth, struLog.strLogTime.dwDay, \
                struLog.strLogTime.dwHour,struLog.strLogTime.dwMinute, struLog.strLogTime.dwSecond);
        }
        else if(result == NET_DVR_FILE_NOFIND || result == NET_DVR_NOMOREFILE)
        {
            printf("find ending\n");
            break;
        }
        else
        {
            printf("find log fail for illegal get file state\n");
            break;
        }
    }

    //停止日志查询
    if(lFindHandle > 0)
    {
        NET_DVR_FindLogClose_V30(lFindHandle);
    }

    //注销用户
    NET_DVR_Logout(lUserID);
    //释放SDK资源
    NET_DVR_Cleanup();
    return;
}


语音对讲、转发模块流程

  • 语音对讲功能实现PC机与设备间音频的发送和接收。在成功注册设备后调用NET_DVR_StartVoiceCom_V30接口完成，同时在该接口中用户可以通过设置回调函数获取当前设备发送或者PC机采集的数据（按需要选择回调编码后或者PCM数据）。
  • 语音转发功能实现将待发送的音频数据（编码后）转发给设备。首先调用NET_DVR_StartVoiceCom_MR_V30接口启动与某台设备的语音转发，再调用NET_DVR_VoiceComSendData接口发送经过编码的音频数据，但是对每次发送的数据大小有限定值，详细说明可见接口。 首先调用NET_DVR_StartVoiceCom_MR_V30接口启动与设备的语音转发（此时已建立与设备之间的连接，等待发送数据）。 第二，准备好待发送的数据（需要经过编码），相对于上图中虚线框部分，如果数据已按本公司的压缩格式处理这部分就可以省略。数据源可以是从PC声卡中采集或是从文件中读取，但是需要经过本公司提供的压缩算法进行压缩处理，SDK提供一套编码接口，方法如下：1）初始化音频编码，调用接口NET_DVR_InitG722Encoder；2）G722音频编码，调用接口NET_DVR_EncodeG722Frame，该接口的参数有一定的要求，详见接口说明；3）当结束所有的编码过程需要调用NET_DVR_ReleaseG722Encoder接口释放编码音频资源。 经过第二部的编码操作，我们可以每次得到固定大小的且经过编码后的数据，调用NET_DVR_VoiceComSendData接口发送这些数据给设备。 等所有的转发操作完成后，调用NET_DVR_StopVoiceCom接口结束与设备的语音转发连接。
  • Linux下目前只支持语音转发功能，暂不支持语音对讲。

示例代码

示例一：语音对讲

#include <stdio.h>
#include <iostream>
#include "Windows.h"
#include "HCNetSDK.h"
using namespace std;

void CALLBACK fVoiceDataCallBack(LONG lVoiceComHandle, char *pRecvDataBuffer, DWORD dwBufSize, BYTE byAudioFlag, void* pUser)
{
    printf("receive voice data, %d\n", dwBufSize);
}

void main() {

    //---------------------------------------
    // 初始化
    NET_DVR_Init();
    //设置连接时间与重连时间
    NET_DVR_SetConnectTime(2000, 1);
    NET_DVR_SetReconnect(10000, true);

    //---------------------------------------
    // 注册设备
    LONG lUserID;
    NET_DVR_DEVICEINFO_V30 struDeviceInfo;
    lUserID = NET_DVR_Login_V30("192.0.0.64", 8000, "admin", "12345", &struDeviceInfo);
    if (lUserID < 0)
    {
         printf("Login error, %d\n", NET_DVR_GetLastError());
         NET_DVR_Cleanup();
         return;
    }

    //语音对讲
    LONG lVoiceHanle;
    lVoiceHanle = NET_DVR_StartVoiceCom_V30(lUserID, 1,0, fVoiceDataCallBack, NULL);
    if (lVoiceHanle < 0)
    {
        printf("NET_DVR_StartVoiceCom_V30 error, %d!\n", NET_DVR_GetLastError());
        NET_DVR_Logout(lUserID);
        NET_DVR_Cleanup();
        return;
    }

    Sleep(5000);  //millisecond
    //关闭语音对讲
    if (!NET_DVR_StopVoiceCom(lVoiceHanle))
    {
        printf("NET_DVR_StopVoiceCom error, %d!\n", NET_DVR_GetLastError());
        NET_DVR_Logout(lUserID);
        NET_DVR_Cleanup();
        return;
    }

    //注销用户
    NET_DVR_Logout(lUserID);
    //释放SDK资源
    NET_DVR_Cleanup();
    return;
}

示例二：语音转发

#include <stdio.h>
#include <iostream>
#include "Windows.h"
#include "HCNetSDK.h"
using namespace std;
void CALLBACK fVoiceDataCallBack(LONG lVoiceComHandle, char *pRecvDataBuffer, DWORD dwBufSize, BYTE byAudioFlag, void* pUser)
{
    //此处的音频数据是由设备发送的编码后数据，也可以是本地采集并编码后的数据
    NET_DVR_VoiceComSendData(lVoiceComHandle, pRecvDataBuffer, 80);
}

void main() {

    //---------------------------------------
    // 初始化
    NET_DVR_Init();
    //设置连接时间与重连时间
    NET_DVR_SetConnectTime(2000, 1);
    NET_DVR_SetReconnect(10000, true);

    //---------------------------------------
    // 注册设备
    LONG lUserID;
    NET_DVR_DEVICEINFO_V30 struDeviceInfo;
    lUserID = NET_DVR_Login_V30("172.0.0.100", 8000, "admin", "12345", &struDeviceInfo);
    if (lUserID < 0)
    {
         printf("Login error, %d\n", NET_DVR_GetLastError());
         NET_DVR_Cleanup();
         return;
    }

    //语音转发
    LONG lVoiceHanle;
    lVoiceHanle = NET_DVR_StartVoiceCom_MR_V30(lUserID, 1, fVoiceDataCallBack, NULL);
    if (lVoiceHanle < 0)
    {
        printf("NET_DVR_StartVoiceCom_MR_V30 error, %d!\n", NET_DVR_GetLastError());
        NET_DVR_Logout(lUserID);
        NET_DVR_Cleanup();
        return;
    }

    Sleep(5000);  //millisecond
    //关闭语音转发
    if (!NET_DVR_StopVoiceCom(lVoiceHanle))
    {
        printf("NET_DVR_StopVoiceCom error, %d!\n", NET_DVR_GetLastError());
        NET_DVR_Logout(lUserID);
        NET_DVR_Cleanup();
        return;
    }

    //注销用户
    NET_DVR_Logout(lUserID);
    //释放SDK资源
    NET_DVR_Cleanup();
    return;
}


报警模块流程

报警可分为“布防”和“监听”两种方式。采用两种报警方式都可以接收到设备上传的移动侦测报警、视频信号丢失报警、遮挡报警和信号量报警等信息。

  • “布防”报警方式：是指SDK主动连接设备，并发起报警上传命令，设备发生报警立即发送给SDK。
    由“报警（布防）的流程图”中看出，“布防”方式需要先进行用户注册（NET_DVR_Login_V30）。虚线框部分是实现报警信息上传的必要条件，主要完成相关的报警条件和处理方法的配置，参数配置的接口为NET_DVR_GetDVRConfig和NET_DVR_SetDVRConfig。支持的报警类型有移动侦测、视频信号丢失、遮挡和信号量报警，其中前三种报警类型对应的报警条件和处理方法的配置结构体是NET_DVR_PICCFG_V30，而信号量报警的配置结构体是NET_DVR_ALARMINCFG_V30。这些参数如果已经配置完成，那么虚线框部分可以省略。接下来就是设置报警回调函数（NET_DVR_SetDVRMessageCallBack_V30等），调用成功后还需要设置布防（NET_DVR_SetupAlarmChan_V30）。整个报警上传过程结束后还需要调用撤防接口等操作。

  • “监听”报警方式：是指SDK不主动发起连接设备，只是在设定的端口上监听接收设备主动上传的报警信息。
    所以这个过程需要远程配置设备的报警主机地址（即PC机地址）和报警主机端口（即PC的监听端口），报警主机就在该端口上监听接收设备主动上传的报警信息。如果报警主机地址和报警主机端口已配置完成，那么“报警（监听）的流程图”中虚线框“用户注册”和“配置报警主机地址和端口”部分就可以省略，但事先没有配置，就必须调用参数配置接口（NET_DVR_GetDVRConfig和NET_DVR_SetDVRConfig）对设备的网络参数（NET_DVR_NETCFG_V30）进行配置。而虚线框“配置报警条件和处理方法”部分与“布防”中的一致。对以上需要配置的参数都设置完后，调用NET_DVR_StartListen_V30函数，开启SDK的监听端口，准备接收设备上传的报警信息。该方式适用于多个设备向一台客户端上传报警，而且不需要设备登录即可完成，设备重启后不影响报警上传；缺点是设备只支持一个报警主机地址和端口号的配置。

示例代码

示例一：布防报警

#include <stdio.h>
#include <iostream>
#include "Windows.h"
#include "HCNetSDK.h"
using namespace std;

void CALLBACK MessageCallback(LONG lCommand, NET_DVR_ALARMER *pAlarmer, char *pAlarmInfo, DWORD dwBufLen, void* pUser)
{
  int i;
  NET_DVR_ALARMINFO struAlarmInfo;
  memcpy(&struAlarmInfo, pAlarmInfo, sizeof(NET_DVR_ALARMINFO));
  switch(lCommand)
  {
  case COMM_ALARM:
      {
          switch (struAlarmInfo.dwAlarmType)
          {
          case 3: //移动侦测报警
               for (i=0; i<16; i++)   //#define MAX_CHANNUM   16  //最大通道数
               {
                   if (struAlarmInfo.dwChannel[i] == 1)
                   {
                       printf("发生移动侦测报警的通道号 %d\n", i+1);
                   }
               }
          break;
          default:
          break;
          }
       }
  break;
  default:
  break;
  }
}

void main() {

  //---------------------------------------
  // 初始化
  NET_DVR_Init();
  //设置连接时间与重连时间
  NET_DVR_SetConnectTime(2000, 1);
  NET_DVR_SetReconnect(10000, true);

  //---------------------------------------
  // 注册设备
  LONG lUserID;
  NET_DVR_DEVICEINFO_V30 struDeviceInfo;
  lUserID = NET_DVR_Login_V30("192.0.0.64", 8000, "admin", "12345", &struDeviceInfo);
  if (lUserID < 0)
  {
       printf("Login error, %d\n", NET_DVR_GetLastError());
       NET_DVR_Cleanup();
       return;
  }

  //设置报警回调函数
  NET_DVR_SetDVRMessageCallBack_V30(MessageCallback, NULL);

  //启用布防
  LONG lHandle;
  lHandle = NET_DVR_SetupAlarmChan_V30(lUserID);
  if (lHandle < 0)
  {
      printf("NET_DVR_SetupAlarmChan_V30 error, %d\n", NET_DVR_GetLastError());
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  Sleep(5000);
  //撤销布防上传通道
  if (!NET_DVR_CloseAlarmChan_V30(lHandle))
  {
      printf("NET_DVR_CloseAlarmChan_V30 error, %d\n", NET_DVR_GetLastError());
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  //注销用户
  NET_DVR_Logout(lUserID);
  //释放SDK资源
  NET_DVR_Cleanup();
  return;
}

示例二：监听报警

#include <stdio.h>
#include <iostream>
#include "Windows.h"
#include "HCNetSDK.h"
using namespace std;

void CALLBACK MessageCallback(LONG lCommand, NET_DVR_ALARMER *pAlarmer, char *pAlarmInfo, DWORD dwBufLen, void* pUser)
{
  int i;
  NET_DVR_ALARMINFO struAlarmInfo;
  memcpy(&struAlarmInfo, pAlarmInfo, sizeof(NET_DVR_ALARMINFO));
  switch(lCommand)
  {
  case COMM_ALARM:
      {
          switch (struAlarmInfo.dwAlarmType)
          {
          case 3: //移动侦测报警
               for (i=0; i<16; i++)   //#define MAX_CHANNUM   16  //最大通道数
               {
                   if (struAlarmInfo.dwChannel[i] == 1)
                   {
                       printf("发生移动侦测报警的通道号 %d\n", i+1);
                   }
               }
          break;
          default:
          break;
          }
       }
  break;
  default:
  break;
  }
}

void main() {

  //---------------------------------------
  // 初始化
  NET_DVR_Init();
  //设置连接时间与重连时间
  NET_DVR_SetConnectTime(2000, 1);
  NET_DVR_SetReconnect(10000, true);

  //---------------------------------------
  // 注册设备
  LONG lUserID;
  NET_DVR_DEVICEINFO_V30 struDeviceInfo;
  lUserID = NET_DVR_Login_V30("172.0.0.100", 8000, "admin", "12345", &struDeviceInfo);
  if (lUserID < 0)
  {
       printf("Login error, %d\n", NET_DVR_GetLastError());
       NET_DVR_Cleanup();
       return;
  }

  //设置报警回调函数
  NET_DVR_SetDVRMessageCallBack_V30(MessageCallback, NULL);

  //启用监听
  LONG lHandle;
  lHandle = NET_DVR_StartListen_V30(NULL,7200, MessageCallback, NULL);
  if (lHandle < 0)
  {
      printf("NET_DVR_SetupAlarmChan_V30 error, %d\n", NET_DVR_GetLastError());
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  Sleep(5000);
  //停止监听
  if (!NET_DVR_StopListen_V30(lHandle))
  {
      printf("NET_DVR_StopListen_V30 error, %d\n", NET_DVR_GetLastError());
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  //注销用户
  NET_DVR_Logout(lUserID);
  //释放SDK资源
  NET_DVR_Cleanup();
  return;
}


透明通道模块流程

  • SDK提供将485和232串口作为透明通道，要将232串口作为透明通道使用，首先必须在232串口的配置信息中将工作模式选为透明通道，具体方法是调用接口NET_DVR_GetDVRConfig和NET_DVR_SetDVRConfig获取和设置参数NET_DVR_RS232CFG中的dwWorkMode值为透明通道。如果是485串口作为透明通道，这个步骤可以省略，调用NET_DVR_SerialStart建立透明通道和NET_DVR_SerialSend发送数据。整个过程结束还需要断开透明通道（NET_DVR_SerialStop）等操作。

示例代码

以232串口建立透明通道为例

#include <stdio.h>
#include <iostream>
#include "Windows.h"
#include "HCNetSDK.h"
using namespace std;

//回调透传数据函数的外部实现
void CALLBACK g_fSerialDataCallBack(LONG lSerialHandle, char *pRecvDataBuffer, DWORD dwBufSize, DWORD dwUser)
{
    //…… 处理接收到的透传数据，pRecvDataBuffer中存放接收到的数据
}

void main() {

    //---------------------------------------
    // 初始化
    NET_DVR_Init();
    //设置连接时间与重连时间
    NET_DVR_SetConnectTime(2000, 1);
    NET_DVR_SetReconnect(10000, true);

    //---------------------------------------
    // 注册设备
    LONG lUserID;
    NET_DVR_DEVICEINFO_V30 struDeviceInfo;
    lUserID = NET_DVR_Login_V30("192.0.0.64", 8000, "admin", "12345", &struDeviceInfo);
    if (lUserID < 0)
    {
         printf("Login error, %d\n", NET_DVR_GetLastError());
         NET_DVR_Cleanup();
         return;
    }

    //设置232为透明通道模式（使用232透明通道时调用，485不需要）
    DWORD dwReturned = 0;
    NET_DVR_RS232CFG_V30 struRS232Cfg;
    memset(&struRS232Cfg, 0, sizeof(NET_DVR_RS232CFG_V30));
    if (!NET_DVR_GetDVRConfig(lUserID, NET_DVR_GET_RS232CFG_V30, 0, &struRS232Cfg, sizeof(NET_DVR_RS232CFG_V30), &dwReturned))
    {
        printf("NET_DVR_GET_RS232CFG_V30 error, %d\n", NET_DVR_GetLastError());
        NET_DVR_Logout(lUserID);
        NET_DVR_Cleanup();
        return;
    }

    struRS232Cfg.struRs232.dwWorkMode = 2;   //设置232为透明通道模式；0：窄带传输，1：控制台，2：透明通道
    if (!NET_DVR_SetDVRConfig(lUserID, NET_DVR_SET_RS232CFG_V30, 0, &(struRS232Cfg), sizeof(NET_DVR_RS232CFG)))
    {
        printf("NET_DVR_SET_RS232CFG_V30 error, %d\n", NET_DVR_GetLastError());
        NET_DVR_Logout(lUserID);
        NET_DVR_Cleanup();
        return;
    }

    //建立透明通道
    LONG lTranHandle;
    int iSelSerialIndex = 1; //1:232串口；2:485串口
    lTranHandle = NET_DVR_SerialStart(lUserID, iSelSerialIndex, g_fSerialDataCallBack, lUserID);//设置回调函数获取透传数据
    if (lTranHandle < 0)
    {
        printf("NET_DVR_SerialStart error, %d\n", NET_DVR_GetLastError());
        NET_DVR_Logout(lUserID);
        NET_DVR_Cleanup();
        return;
    }

    //通过透明通道发送数据
    LONG lSerialChan = 0;//使用485时该值有效，从1开始；232时设置为0
    char szSendBuf[1016] = {0};
    if (!NET_DVR_SerialSend(lTranHandle, lSerialChan, szSendBuf, sizeof(szSendBuf))) //szSendBuf为发送数据的缓冲区
    {
        printf("NET_DVR_SerialSend error, %d\n", NET_DVR_GetLastError());
        NET_DVR_SerialStop(lTranHandle);
        NET_DVR_Logout(lUserID);
        NET_DVR_Cleanup();
        return;
    }

    //断开透明通道
    NET_DVR_SerialStop(lTranHandle);
    //注销用户
    NET_DVR_Logout(lUserID);
    //释放SDK资源
    NET_DVR_Cleanup();
    return;
}


混合型DVR资源配置

  • 混合型DVR设备如果要实现IPC接入功能则需调用IP接入配置参数来进行资源的获取和重新分配。
  • 客户端通过注册设备（NET_DVR_Login_V30）时获取的设备信息NET_DVR_DEVICEINFO_V30的模拟通道数（byChanNum）和数字通道数（byIPChanNum）得知该设备支持的最大模拟和数字通道数。
  • 混合型DVR的数字报警输入和报警输出的通道是在数字音视频通道资源分配好后，由设备自动分配的，如果要对数字报警参数进行配置，首先要调用IP报警输入资源NET_DVR_IPALARMINCFG和IP报警输出资源NET_DVR_IPALARMOUTCFG中的配置结构来获取资源，然后在报警输入配置参数NET_DVR_ALARMINCFG_V30和报警输出配置参数NET_DVR_ALARMOUTCFG_V30中进行关联通道的配置。
  • 模拟音视频通道对应的通道相关参数的通道号从起始通道号（通过登录NET_DVR_Login_V30时设备返回的NET_DVR_DEVICEINFO_V30 可以得知）到MAX_ANALOG_CHANNUM为止，IP资源对应的设备参数配置的通道号为MAX_ANALOG_CHANNUM+起始通道号到MAX_CHANNUM_V30+起始通道号。模拟报警输入的通道号是从0到MAX_ANALOG_ALARMIN-1，IP报警输入的通道号是从MAX_ANALOG_ALARMIN到MAX_ALARMIN_V30，报警输出和报警出入的相似。
  • 设备音视频通道资源最大数是由当前设备的DSP处理能力决定的(详见DS-90xx设备相关说明)：16路模拟视音频输入 + 8路普通IPC。
    24路是最大的总通道数，这是一个总资源的概念；模拟视音频通道可以‘启用’或‘禁用’，‘禁用’一个模拟通道可以多增加一个普通IPC通道，但是最多只能增加16个普通IPC通道；一个720P的高清IPC通道占用2个普通IPC通道的资源。

    常见的通道配置举例（以DS-9016型号为例）：
    做DVR使用
    ——16路模拟通道

    做NVR使用
    ——16路普通IPC通道

    ——8路720P高清IPC通道

    ——8路普通IPC通道 + 4路720P高清IPC通道

    做HybridDVR使用
    ——16路模拟通道 + 8路普通IPC通道

    ——16路模拟通道 + 4路720P高清IPC通道

    ——16路模拟通道 + 4路普通IPC通达 + 2路720P高清IPC通道

    ——8路模拟通道 + 16路普通IPC通道

    ——8路模拟通道 + 8路720P高清IPC通道

    ——8路模拟通道 + 8路普通IPC通道 + 4路720P高清IPC通道

示例代码

以混合型DVR的数字报警输入和通道图像参数的配置为例

//初始化SDK
NET_DVR_Init();

//注册设备
NET_DVR_DEVICEINFO_V30 struDeviceInfo;
memset(&struDeviceInfo, 0, sizeof(NET_DVR_DEVICEINFO_V30));//存放设备参数的结构体
LONG lUserID = NET_DVR_Login_V30("172.0.0.100", 8000, "admin", "12345", &struDeviceInfo);
if (lUserID < 0)
{
    if (NET_DVR_GetLastError() == NET_DVR_PASSWORD_ERROR)//用户名密码错误
    {
        …… //处理错误信息
    }
    else if(NET_DVR_GetLastError() == NET_DVR_OVER_MAXLINK)//连接到DVR的客户端达到最大
    {
        …… //处理错误信息
    }
    …… //处理其他类型错误信息
}

//获取IP报警资源
DWORD dwReturned = 0;
NET_DVR_IPALARMINCFG struIPAlarmInCfg;
memeset(&struIPAlarmInCfg, 0, sizeof(NET_DVR_IPALARMINCFG));
bIPRet = NET_DVR_GetDVRConfig(lUserID, NET_DVR_GET_IPALARMINCFG, -1, &struIPAlarmInCfg, sizeof(NET_DVR_IPALARMINCFG), &dwReturned);

//获取、设置报警输入信息
NET_DVR_ALARMINCFG_V30  m_struAlarmInCfg[MAX_ALARMIN_V30];//存放报警输入信息的结构体，MAX_ALARMIN_V30 为最大模拟报警输入数加最大数字报警输入数
for (i=0; i < MAX_ALARMIN_V30; i++)
{
    if ((i>=MAX_ANALOG_ALARMIN && struIPAlarmInCfg.struIPAlarmInInfo[i-MAX_ANALOG_ALARMIN].byIPID > 0)
    //IP报警资源的下标索引加上MAX_ANALOG_ALARMIN对应的是报警输入配置结构的下标索引值
    {
       if (!NET_DVR_GetDVRConfig(lUserID, NET_DVR_GET_ALARMINCFG_V30, i,\
        &m_struAlarmInCfg[i], sizeof(NET_DVR_ALARMINCFG_V30), &dwReturned))
       {
           ……   //获取报警输入信息失败
       }
       else
       {
          //获取报警输入信息成功，此处i>=MAX_ANALOG_ALARMIN时即为IP报警输入信息,i对应IP数字报警通道的通道号
           m_struAlarmInCfg[i].byAlarmType = 0;//报警类型：0-常开，1-常闭
           m_struAlarmInCfg[i].byAlarmInHandle = 1；//是否处理：0-不处理，1-处理
           …… //其他报警参数的设置
           NET_DVR_SetDVRConfig(lUserID, NET_DVR_SET_ALARMINCFG_V30, i, &(m_struAlarmInCfg[i]),\
                        sizeof(NET_DVR_ALARMINCFG_V30))；//设置报警输入信息
       }
    }
}

//IP报警输出的配置过程和报警输入的配置过程相同

//获取IP通道参数信息
DWORD dwReturned = 0;
NET_DVR_IPPARACFG IPAccessCfg;
memset(&IPAccessCfg, 0, sizeof(NET_DVR_IPPARACFG));
NET_DVR_GetDVRConfig(lUserID, NET_DVR_GET_IPPARACFG, -1, &IPAccessCfg, sizeof(NET_DVR_IPPARACFG), &dwReturned);

//设置IP通道配置信息
DWORD iIPChanIndex = 1; //IP资源的通道号，从0到MAX_IP_CHANNEL -1，加上MAX_ANALOG_CHANNUM对应的是通道相关参数的下标索引值
BYTE dwID = 2; //IP通道有效状态及对应IP设备资源；1- MAX_IP_DEVICE表示该通道被添加，0表示该通道被删除
IPAccessCfg.struIPChanInfo[iIPChanIndex].byEnable = FALSE;
IPAccessCfg.struIPChanInfo[iIPChanIndex].byIPID = (BYTE)dwID;
……//设置其他通道参数
NET_DVR_SetDVRConfig(lUserID, NET_DVR_SET_IPPARACFG, -1, &IPAccessCfg, sizeof(NET_DVR_IPPARACFG));

//获取IP通道相关参数(以获取IP通道图像参数为例)
DWORD dwReturned = 0;
DWORD dwChanShow = iIPChanIndex + MAX_ANALOG_ALARMIN; //IP通道下标索引加MAX_ANALOG_ALARMIN为相对应的通道相关参数的下标索引
NET_DVR_PICCFG_V30 m_struPicCfg; //存放通道图像参数的结构体
memset(&m_struPicCfg, 0, sizeof(NET_DVR_PICCFG_V30));
NET_DVR_GetDVRConfig(lUserID, NET_DVR_GET_PICCFG_V30, dwChanShow, &m_struPicCfg, sizeof(NET_DVR_PICCFG_V30), &dwReturned);

//设置IP通道图像参数
m_struPicCfg.dwVideoFormat = 1; // 视频制式：1-NTSC，2-PAL
m_struPicCfg.dwShowChanName = 1; //预览的图象上是否显示通道名称：0-不显示，1-显示（区域大小704*576）
……//其他图像参数的设置
NET_DVR_SetDVRConfig(lUserID, NET_DVR_SET_PICCFG_V30, dwChanShow, &m_struPicCfg,sizeof(NET_DVR_PICCFG_V30));


多路解码器模块流程

多路解码器的功能模块包括显示通道控制、参数配置、主动解码、被动解码、透明通道配置、获取设备状态信息和获取设备能力集模块。该模块的所有功能都需要先进行用户注册，NET_DVR_Login_V30接口返回的用户ID号作为其他功能接口的参数。

  • 显示通道控制模块：显示通道各项参数的配置；音频开启关闭控制和子窗口缩放控制等。详细接口可见下文的接口定义中的“多路解码器”的“显示通道配置和控制”部分。
  • 参数配置模块：主要完成对多路解码器的基本参数的配置功能，调用的接口为NET_DVR_GetDVRConfig和NET_DVR_SetDVRConfig，其中可配置的参数可见下文的接口定义中的“多路解码器”的“参数配置”部分。
  • 主动解码模块：配置和获取多路解码器主动解码参数，对主动解码进行各种控制，包括起停动态解码；起停轮巡解码；按文件及按时间回放的控制；以及主动解码状态的获取、主动解码起停的总体控制；上传LOGO等功能。详细接口可见下文的接口定义中的“多路解码器”的“主动解码”部分。
  • 被动解码模块：被动解码通道的启动解码、发送数据和停止解码。详细接口可见下文的接口定义中的“多路解码器”的“被动解码”部分。
  • 透明通道配置模块：配置透明通道的相关参数。详细接口可见下文的接口定义中的“多路解码器”的“透明通道配置”部分。
  • 获取设备状态信息：通过NET_DVR_MatrixGetDeviceStatus接口获取设备通道的解码、报警输入、报警输出和语音对讲等状态信息。
  • 获取设备能力集：通过NET_DVR_GetDeviceAbility接口获取设备的显示和解码能力等信息。

示例代码

//初始化SDK
NET_DVR_Init();

//注册设备
NET_DVR_DEVICEINFO_V30 struDeviceInfo;
memset(&struDeviceInfo, 0, sizeof(NET_DVR_DEVICEINFO_V30));//存放设备参数的结构体
LONG lUserID = NET_DVR_Login_V30("172.0.0.100", 8000, "admin", "12345", &struDeviceInfo);
if (lUserID < 0)
{
    if (NET_DVR_GetLastError() == NET_DVR_PASSWORD_ERROR)//用户名密码错误
    {
        …… //处理错误信息
    }
    else if(NET_DVR_GetLastError() == NET_DVR_OVER_MAXLINK)//连接到DVR的客户端达到最大
    {
        …… //处理错误信息
    }
    …… //处理其他类型错误信息
}

//配置多路解码器
  //获取多路解码器配置参数
  DWORD dwReturned = 0;
  NET_DVR_NETCFG_OTHER m_NetCFGOther;
  if(!NET_DVR_GetDVRConfig(lUserID, NET_DVR_GET_NETCFG_OTHER, 0,&m_NetCFGOther, sizeof(NET_DVR_NETCFG_OTHER), &dwReturned)))
  {
    if (NET_DVR_GetLastError() == NET_DVR_NOINIT)//未初始化
    {
        …… //处理错误信息
    }
    …… //处理其他类型错误信息
   }
  //设置多路解码器参数(以设置主DNS为例)
  char m_FirstDns[] = "192.168.0.2";
  memcpy(m_NetCFGOther.sFirstDNSIP, m_FirstDns.GetBuffer(0), 16);
  if(!NET_DVR_SetDVRConfig(lUserID, NET_DVR_SET_NETCFG_OTHER, 0,&m_NetCFGOther, sizeof(NET_DVR_NETCFG_OTHER)))
  {
      if (NET_DVR_GetLastError() == NET_DVR_PARAMETER_ERROR)//参数错误
    {
        …… //处理错误信息
    }
    …… //处理其他类型错误信息
  }

//主动解码(包括动态解码和轮循解码)
  //配置、获取解码器主动解码参数
int DecChanNum = 1;//解码通道号，此处假设通道号为1
NET_DVR_MATRIX_DEC_CHAN_STATUS m_DecChanStatus;
memset(&m_DecChanStatus, 0, sizeof(NET_DVR_MATRIX_DEC_CHAN_STATUS));
if(!NET_DVR_MatrixGetDecChanStatus(lUserID, DecChanNum, &m_DecChanStatus)) //获取解码通道状态
{
    …… //出错处理
}
NET_DVR_MATRIX_DEC_CHAN_INFO m_DecChanInfo;
memset(&m_DecChanInfo, 0, sizeof(NET_DVR_MATRIX_DEC_CHAN_INFO));
if(!NET_DVR_MatrixGetDecChanInfo(lUserID, DecChanNum, &m_DecChanInfo[index])) //获取解码通道信息
{
    …… //出错处理
}
DWORD dec = 0;
if(!NET_DVR_MatrixGetDecChanEnable(lUserID, DecChanNum, &dec)) //获取解码通道开关
{
    …… //出错处理
}
dec = 1; //设置解码通道为开；0表示关闭，1表示打开
if(!NET_DVR_MatrixSetDecChanEnable(lUserID, DecChanNum, dwEnable)) //设置解码通道开关，如果设置为关，通道将停止解码
{
    …… //出错处理
}

  //动态解码
NET_DVR_PU_STREAM_CFG dt;
dt.struDevChanInfo.byChannel = "172.0.0.100";//设备IP地址
dt.struStreamMediaSvrCfg.byValid = 0; //是否启用流媒体服务器取流：0-不启用，非0-启用
…… //设置其他动态解码参数
if(!NET_DVR_MatrixStartDynamic_V30(lUserID, DecChanNum, &dt))  //启动动态解码
{
    CString tmp;
    tmp.Format("Error: NET_DVR_MatrixStartDynamic = %d\n", NET_DVR_GetLastError());//获取错误码
    AfxMessageBox(tmp);
 }
if(!NET_DVR_MatrixStopDynamic(lUserID, DecChanNum)) //停止动态解码
{
    CString tmp;
    tmp.Format("Error: NET_DVR_MatrixStartDynamic = %d\n", NET_DVR_GetLastError());//获取错误码
    AfxMessageBox(tmp);
}

  //轮巡解码
NET_DVR_MATRIX_LOOP_DECINFO m_MatLoopDec;
memset(&m_MatLoopDec, 0, sizeof(NET_DVR_MATRIX_LOOP_DECINFO));
NET_DVR_MatrixGetLoopDecChanInfo(lUserID, DecChanNum, &m_MatLoopDec); //获取轮巡解码通道参数

CString m_DVRIP = "172.0.0.100";
sprintf(m_MatLoopDec.struchanConInfo.struDecChanInfo.sDVRIP, "%s", m_DVRIP);//轮巡解码设备IP地址
…… //其他轮巡解码参数的设置
NET_DVR_MatrixSetLoopDecChanInfo(lUserID, DecChanNum, &m_MatLoopDec); //设置轮巡解码通道参数

DWORD chanNum = 0；
NET_DVR_MatrixGetLoopDecChanEnable(lUserID, DecChanNum, &chanNum); //获取当前通道解码开关,返回值chanNum为0表示关闭，1表示打开

chanNum = 1; //设置解码开关为开
NET_DVR_MatrixSetLoopDecChanEnable(lUserID, DecChanNum, chanNum); //当把当前正在轮循的解码通道轮巡开关设置为关时，该解码通道停止循环，转为动态解码

NET_DVR_MatrixGetLoopDecEnable(lUserID, &chanNum); //获取所有通道的解码开关，按位表示,0表示关闭，1表示打开

//解码设备远程回放文件
NET_DVR_MATRIX_DEC_REMOTE_PLAY m_struPlay;
m_struPlay.wDVRPort = m_PlayBackPort;
m_struPlay.byChannel = (BYTE)m_PlayBackChan;
…… //远程回放文件参数
NET_DVR_MatrixSetRemotePlay(lUserID, DecChanNum, &m_struPlay); //设置解码器远程回放文件配置
NET_DVR_MatrixSetRemotePlayControl(lUserID, DecChanNum, NET_DVR_PLAYSTART, 0, NULL); //开始解码器回放远程文件
NET_DVR_MatrixSetRemotePlayControl(lUserID, DecChanNum, NET_DVR_PLAYSTARTAUDIO, 0, NULL);//打开声音
NET_DVR_MatrixSetRemotePlayControl(lUserID, DecChanNum, …, 0, NULL);//其他回放控制
NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS m_struState;
NET_DVR_MatrixGetRemotePlayStatus(lUserID, DecChanNum, &m_struState); //获取回放状态

//被动解码
DWORD m_PassivePort = 8000;
LONG lPassiveModeHandle = -1; //被动解码句柄
NET_DVR_MATRIX_PASSIVEMODE m_PassiveMode;
m_PassiveMode.wPassivePort = m_PassivePort;//UDP时的端口号，TCP时默认为8000
…… //被动解码参数
lPassiveModeHandle = NET_DVR_MatrixStartPassiveDecode(lUserID, DecChanNum, &m_PassiveMode); //启动多路解码器被动解码
NET_DVR_MatrixSendData(lPassiveModeHandle, pSendBuf, dwBufSize);//向解码器发送数据,pSendBuf为发送数据缓冲区，dwBufSize为数据大小
NET_DVR_MatrixStopPassiveDecode(lPassiveModeHandle); //停止多路解码器被动解码

//获取多路解码器解码显示能力
NET_DVR_MATRIX_ABILITY m_matrixability;
NET_DVR_GetDeviceAbility(lUserID, MATRIXDECODER_ABILITY, NULL, 0, (char*)&m_matrixability, sizeof(NET_DVR_MATRIX_ABILITY));


智能设备功能模块流程

智能设备功能模块包括参数配置、智能信息DSP叠加配置、重启智能库、智能结果报警和获取设备能力集等功能。该模块的所有功能都需要先进行用户注册，NET_DVR_Login_V30接口返回的用户ID号作为其他功能接口的参数。

  • 参数配置：主要完成对智能的基本参数的配置功能，调用的接口为NET_DVR_GetDVRConfig和NET_DVR_SetDVRConfig，其中可配置的参数可见下文的接口定义中的“智能设备功能”部分。
  • 智能信息DSP叠加配置：编码或者抓图时是否叠加智能信息的参数配置，调用接口为NET_DVR_GetVCADrawMode和NET_DVR_SetVCADrawMode。
  • 重启智能库：在切换场景的情况需要重启智能库，如转动镜头，详见接口NET_VCA_RestartLib。
  • 智能结果报警：通过“布防”或者“监听”报警的方式上传智能分析结果。详见下文的接口定义中的“布防、撤防”和“监听报警”部分。
  • 获取设备能力集：通过NET_DVR_GetDeviceAbility接口获取智能设备能力信息。
  • 标定校验：通过NET_DVR_VerifyCalibration接口标定校验。

示例代码

以行为分析参数(NET_DVR_VerifyCalibration)的配置为例

//初始化SDK
NET_DVR_Init();

//注册设备
NET_DVR_DEVICEINFO_V30 struDeviceInfo;
memset(&struDeviceInfo, 0, sizeof(NET_DVR_DEVICEINFO_V30));//存放设备参数的结构体
LONG lUserID = NET_DVR_Login_V30("172.0.0.100", 8000, "admin", "12345", &struDeviceInfo);
if (lUserID < 0)
{
    if (NET_DVR_GetLastError() == NET_DVR_PASSWORD_ERROR)//用户名密码错误
    {
        …… //处理错误信息
    }
    else if(NET_DVR_GetLastError() == NET_DVR_OVER_MAXLINK)//连接到DVR的客户端达到最大
    {
        …… //处理错误信息
    }
        …… //处理其他类型错误信息
}

//获取行为分析配置参数
LONG  m_iVcaChannel = 1;// 智能通道号
NET_VCA_RULECFG m_struRuleCfg; //存放智能信息结构体
memset(&m_struRuleCfg, 0, sizeof(NET_VCA_RULECFG));
DWORD dwReturned = 0;
if(!NET_DVR_GetDVRConfig(lUserID, NET_DVR_GET_RULECFG, m_iVcaChannel, &m_struRuleCfg, sizeof(NET_VCA_RULECFG), &dwReturned))
{
    if (NET_DVR_GetLastError() == NET_DVR_NOINIT)//未初始化
    {
        …… //处理错误信息
    }
        …… //处理其他类型错误信息
}

//设置行为分析具体参数(需要修改)
m_struRuleCfg.byPicProType = 1; //报警时图片处理方式：0-不处理；非0-处理
m_struRuleCfg.struPictureParam.wPicSize = 0；//图片尺寸：0-CIF，1-QCIF，2-D1，3-UXGA，4-SVGA，5-HD720p，6-VGA，7-XVGA，8-HD900p
m_struRuleCfg.struPictureParam.wPicQuality = 0；//图片质量系数：0-最好，1-较好，2-一般
…… //其他行为分析参数设置
if(!NET_DVR_SetDVRConfig(lUserID, NET_DVR_SET_RULECFG, m_iVcaChannel, &m_struRuleCfg, sizeof(NET_VCA_RULECFG)))
{
    if (NET_DVR_GetLastError() == NET_DVR_PARAMETER_ERROR)//参数错误
    {
        …… //处理错误信息
    }
        …… //处理其他类型错误信息
}

//获取智能信息DSP叠加参数
NET_VCA_DRAW_MODE m_struVCADrawMode;
memset(&m_struVCADrawMode, 0 ,sizeof(NET_VCA_DRAW_MODE));
NET_DVR_GetVCADrawMode(lUserID,  m_iVcaChannel, &m_struVCADrawMode);

//设置智能信息DSP叠加参数
m_struVCADrawMode.byDspAddRule = 0; //编码是否叠加规则：0-不叠加，非0-叠加
m_struVCADrawMode.byDspAddTarget = 0; //编码是否叠加目标：0-不叠加，非0-叠加
m_struVCADrawMode.byDspPicAddRule = 0; //抓图是否叠加目标：0-不叠加，非0-叠加
m_struVCADrawMode.byDspPicAddTarget = 0; //抓图是否叠加规则：0-不叠加，非0-叠加
NET_DVR_SetVCADrawMode(m_lServerID,  m_iVcaChannel, &m_struVCADrawMode);

//重启智能库
NET_VCA_RestartLib(lUserID, m_iVcaChannel);

//获取智能设备的能力
NET_VCA_DEV_ABILITY  m_struVcaDevAbility;
if(!NET_DVR_GetDeviceAbility(lUserID,  VCA_DEV_ABILITY, NULL, 0, (char*)&m_struVcaDevAbility, sizeof(NET_VCA_DEV_ABILITY)))
{
    if (NET_DVR_GetLastError() == NET_DVR_NOSUPPORT)//设备不支持
    {
        …… //处理错误信息
    }
    …… //处理其他类型错误信息
}

//获取智能通道的能力
NET_VCA_CHAN_IN_PARAM struVcaChanInpara;
struVcaChanInparam.byVCAType = VCA_BEHAVIOR_BASE; //VCA_BEHAVIOR_BASE：基本版，VCA_BEHAVIOR_ADVANCE：高级版，VCA_BEHAVIOR_FULL：完整版
NET_VCA_BEHAVIOR_ABILITY m_struBehaviorAbility;
memset(&m_struBehaviorAbility, 0, sizeof(NET_VCA_BEHAVIOR_ABILITY));
NET_DVR_GetDeviceAbility(lUserID,  VCA_CHAN_ABILITY, (char*)&struVcaChanInpara, \
        sizeof(NET_VCA_CHAN_IN_PARAM), (char*)&m_struBehaviorAbility, sizeof(NET_VCA_BEHAVIOR_ABILITY));


智能高清IPC功能模块流程

智能高清IPC功能模块包括参数配置、抓拍结果报警和获取设备能力集等功能。该模块的所有功能都需要先进行用户注册，NET_DVR_Login_V30接口返回的用户ID号作为其他功能接口的参数。

  • 参数配置：主要完成对智能高清IPC的基本参数的配置功能，调用的接口为NET_DVR_GetDVRConfig和NET_DVR_SetDVRConfig。
  • 手动触发报警：主要实现手动触发报警功能，调用的接口为NET_DVR_ManualSnap。
  • 抓拍结果报警：通过“布防”报警的方式上传结果。详见下文的接口定义中的“布防、撤防”部分。
  • 获取设备能力集：通过NET_DVR_GetDeviceAbility接口获取智能高清IPC能力信息。

示例代码

//初始化SDK
NET_DVR_Init();

//注册设备
NET_DVR_DEVICEINFO_V30 struDeviceInfo;
memset(&struDeviceInfo, 0, sizeof(NET_DVR_DEVICEINFO_V30));//存放设备参数的结构体
LONG lUserID = NET_DVR_Login_V30("172.0.0.100", 8000, "admin", "12345", &struDeviceInfo);
if (lUserID < 0)
{
    if (NET_DVR_GetLastError() == NET_DVR_PASSWORD_ERROR)//用户名密码错误
    {
        …… //处理错误信息
    }
    else if(NET_DVR_GetLastError() == NET_DVR_OVER_MAXLINK)//连接到DVR的客户端达到最大
    {
        …… //处理错误信息
    }
        …… //处理其他类型错误信息
}

//获取智能高清IPC参数
LONG  m_iChannel = 1;// 通道号
NET_DVR_CAMERAPARAMCFG m_struCfg; //参数结构体
memset(&m_struCfg, 0, sizeof(NET_DVR_CAMERAPARAMCFG));
DWORD dwReturned = 0;
if(!NET_DVR_GetDVRConfig(lUserID, NET_DVR_GET_CCDPARAMCFG, m_iChannel, &m_struCfg, sizeof(NET_DVR_CAMERAPARAMCFG), &dwReturned))
{
    if (NET_DVR_GetLastError() == NET_DVR_NOINIT)//未初始化
    {
        …… //处理错误信息
    }
        …… //处理其他类型错误信息
}

//设置参数(需要修改)
m_struCfg.byIrisMode  = 1; //0 自动光圈;1 手动光圈
m_struCfg.byCoderOutputMode = 0；//编码器fpga输出模式：0-直通；3-像素搬家
…… //其他参数设置
if(!NET_DVR_SetDVRConfig(lUserID, NET_DVR_SET_CCDPARAMCFG, m_iChannel, &m_struCfg, sizeof(NET_DVR_CAMERAPARAMCFG)))
{
    if (NET_DVR_GetLastError() == NET_DVR_PARAMETER_ERROR)//参数错误
    {
        …… //处理错误信息
    }
        …… //处理其他类型错误信息
}

//获取智能高清IPC能力
NET_DVR_SNAP_ABILITY  m_struDevAbility;
if(!NET_DVR_GetDeviceAbility(lUserID, SNAPCAMERA_ABILITY, NULL, 0, (char*)&m_struDevAbility, sizeof(NET_DVR_SNAP_ABILITY)))
{
    if (NET_DVR_GetLastError() == NET_DVR_NOSUPPORT)//设备不支持
    {
        …… //处理错误信息
    }
    …… //处理其他类型错误信息
}

//手动触发报警
NET_DVR_MANUALSNAP m_struManualSnap;
NET_DVR_PLATE_RESULT m_struResult;
memset(&m_struManualSnap, 0, sizeof(NET_DVR_MANUALSNAP));
memset(&m_struResult, 0, sizeof(NET_DVR_PLATE_RESULT));
m_struResult.pBuffer1 = new BYTE[2 * 1024 * 1024];
memset(m_struResult.pBuffer1, 0, 2 * 1024 * 1024);
m_struResult.pBuffer2 = new BYTE[1024 * 1024];
memset(m_struResult.pBuffer2, 0, 1024 * 1024);

if (!NET_DVR_ManualSnap(m_lServerID, &m_struManualSnap, &m_struResult))
{
    if (NET_DVR_GetLastError() == NET_DVR_NOSUPPORT)//设备不支持
    {
        …… //处理错误信息
    }
    …… //处理其他类型错误信息
}


审讯机模块流程

审讯机功能模块包括参数配置、审讯文件查找和删除、审讯文件刻录、审讯文件上传、审讯中刻录和获取刻录状态等功能。该模块的所有功能都需要先进行用户注册，NET_DVR_Login_V30接口返回的用户ID号作为其他功能接口的参数。

  • 参数配置模块：审讯机的基本参数的配置功能，调用的接口有NET_DVR_InquestGetCDRWScheme、NET_DVR_InquestSetCDRWScheme、NET_DVR_InquestGetPIPStatus、NET_DVR_InquestSetPIPStatus、NET_DVR_InquestCheckSecretKey、NET_DVR_InquestSetSecretKey、NET_DVR_InquestGetEncryptState、NET_DVR_InquestStreamEncrypt，其中可配置的参数可见下文的接口定义中的“审讯机功能接口”的“参数配置”部分。
  • 审讯文件的查找和删除：调用的接口有NET_DVR_InquestFindFile、NET_DVR_InquestFindNextFile、NET_DVR_InquestFindClose、NET_DVR_InquestDeleteFile。
  • 审讯文件刻录，调用的接口有NET_DVR_InquestCDWByFile、NET_DVR_BackupByTime、NET_DVR_GetBackupProgress、NET_DVR_StopBackup。
  • 审讯文件上传，调用的接口有NET_DVR_InquestUploadFile、NET_DVR_InquestGetUploadState、NET_DVR_InquestUploadClose。
  • 审讯中刻录，调用的接口有NET_DVR_InquestStartCDW、NET_DVR_InquestStopCDW。
  • 获取刻录状态：通过NET_DVR_InquestGetCDWState接口获取状态信息。


推模式SDK应用架构

在应用开发中，推模式SDK有两个角色功能：（1）作为注册服务器使用，简称CMS；（2）作为客户端使用（具体为预览、回放、对讲、报警等功能模块），简称CU。设备端模块简称PU。

当SDK作为CMS使用时，由SDK模块担当Server角色，由设备端模块担当Client角色。设备端启动后，会主动注册SDK，建立连接后，SDK与设备之间通过该连接维护心跳，SDK通过该连接对设备进行配置和操作。

当SDK作为CU使用时，由设备端担当Server角色，由SDK模块担当Client角色。SDK设置预览、回放、对讲或者报警请求回应回调函数，接收从设备端发过来的相关数据。

在上图的软件模块关系中，标注了软件各模块之间的关系及数据流。以预览命令为例：

    ① 客户端发送预览命令给服务器
    ② 服务器将该命令转发给设备
    ③ 设备响应该命令
    ④ 服务器将该响应转发给客户端
    ⑤ 设备与客户端建立连接并发送视频传输请求
    ⑥ 客户端响应该请求
    ⑦ 设备正式开始传输码流
    ⑧ 维持码流心跳

注：①和④属于CU和CMS之间的交互，由客户自行开发实现，SDK不集成CU和CMS之间的交互接口。


推模式注册模块流程

这里描述的是SDK作为CMS使用时的注册管理功能及请求功能。其中参数配置功能、远程设备维护功能、透明通道功能、云台控制功能、文件日志查找功能等，在设备主动注册上来后，接口调用方式和客户端主动注册设备应用模式保持一致。

其中虚线框的流程是可选部分，不会影响其他流程和模块的功能使用。

  • 当注册回调函数收到“离线”消息时，SDK内部不会删除设备信息，需上层调用NET_DVR_Logout_V30接口删除用户信息。
  • 对于主动注册上来的设备的校验，由上层完成，如果校验通过，则回调函数返回0，否则不通过。
  • 当心跳状态变化时，SDK才会发送消息通知上层。如从“正常”->“异常”，SDK内部发送“异常”消息；从“异常”->“正常”，SDK内部发送“恢复”消息。
  • 请求函数：预览请求(NET_DVR_PreviewRequest)，回放请求(NET_DVR_PlaybackRequest)，对讲请求(NET_DVR_VoiceRequest)，布防请求(NET_DVR_AlarmSetupRequest)


推模式预览模块流程

SDK作为CMS时的流程见注册模块，主要说明SDK作为CU使用时和设备之间的交互。

调用NET_DVR_SetPreviewResponseCallBack设置预览推码流回应回调函数，启动服务器（NET_DVR_StartServer），然后设置实时数据捕获函数（NET_DVR_SetRealDataCallBack）即可回调获取从设备主动推过来的码流数据。

  • 推流时，SDK内部只取流，不播放，播放及播放控制上层可直接使用公司播放库(PlayCtrl.dll)进行播放控制。
  • 预览播放请求统一由CMS进行控制（NET_DVR_PreviewRequest），可以选择是否启用QOS。
  • 云台控制模块主要是在开启预览的前提下实现对云台控制的操作功能，包括云台预置点、巡航、轨迹和透明云台等。相关接口有：NET_DVR_PTZControl、NET_DVR_PTZPreset、NET_DVR_PTZCruise、NET_DVR_PTZTrack、NET_DVR_TransPTZ。


推模式回放模块流程

回放分为按时间回放和按文件回放。文件查找在CMS进行，流程如下：

按文件回放或下载需要在CMS端通过查找录像文件功能先获取文件信息（相关接口NET_DVR_FindFile_V30、NET_DVR_FindNextFile_V30、NET_DVR_FindClose_V30），然后根据获取得到的信息发送回放请求（NET_DVR_PlaybackRequest）。

按时间回放或下载文件时，用户无需调用查找录像文件的相关接口，只需直接发送回放请求（NET_DVR_PlaybackRequest）。

SDK作为的CU端，回放流程中SDK与设备之间的交互如下图所示。

回放实现：

  • 设置回放码流回应回调函数（NET_DVR_SetPlaybackResponseCallBack），启动服务器（NET_DVR_StartServer）后，设置回放码流数据回调函数（NET_DVR_SetPlayDataCallBack）即可捕获设备端推过来的回放数据。
  • 回放推流时，SDK内部只取流，不播放，播放及播放控制上层可直接使用公司播放库(PlayCtrl.dll)进行播放控制。

  • 回放正常开始，必须调用控制接口（NET_DVR_PlayBackControl）的开始播放命令（NET_DVR_PLAYSTART）。


推模式对讲模块流程

设备端要开启进行对讲，需要SDK作为CMS进行对讲请求（NET_DVR_VoiceRequest），具体流程见注册模块，

SDK作为CU使用时和设备之间的对讲交互如下图所示。

设置对讲回应回调函数（NET_DVR_SetVoiceResponseCallBack），启动服务器（NET_DVR_StartServer）即启动对讲。

  • 每个客户端同时只支持一路对讲。


推模式报警模块流程

SDK作为CMS时的流程见注册模块，SDK作为CU使用时和设备之间的交互如下图所示。

  • 报警布防方式：设置报警布防回应回调函数（NET_DVR_SetAlarmSetupResponseCallBack），设置报警信息回调（NET_DVR_SetDVRMessageCallBack_V30），启动服务器（NET_DVR_StartServer），在报警信息回调中可以获取设备上传的报警信息。
  • “监听”报警方式：是指SDK不主动发起回应，只是在设定的端口上监听接收设备主动上传的报警信息。

  • 推模式中，设备图片上传走的是监听流程。


宏定义

宏定义 | 宏定义值 | 含义
MAX_NAMELEN | 16 | 设备本地登录名长度
MAX_RIGHT | 32 | 设备支持的权限（1-21表示本地权限，13-32表示远程权限）
NAME_LEN | 32 | 用户名长度
PASSWD_LEN | 16 | 密码长度
SERIALNO_LEN | 48 | 序列号长度
MACADDR_LEN | 6 | MAC地址长度
MAX_ETHERNET | 2 | 设备可配以太网络
MAX_NETWORK_CARD | 4 | 设备可配最大网卡数目
MAX_BOND_NUM | 2 | 设备可配BONDING网卡数
PATHNAME_LEN | 128 | 路径长度
MAX_TIMESEGMENT_V30 | 8 | V3.0以上版本支持的设备的最大时间段数
MAX_TIMESEGMENT | 4 | V3.0以下版本支持的设备的最大时间段数
MAX_SHELTERNUM | 4 | V3.0以下版本支持的设备的最大遮挡区域数
MAX_DAYS | 7 | 每周的天数
PHONENUMBER_LEN | 32 | PPPoE拨号号码最大长度
MAX_DISKNUM_V30 | 33 | V3.0以上版本支持的设备的最大硬盘数，最多33个硬盘(包括16个内置SATA硬盘、1个eSATA硬盘和16个NFS盘)
MAX_DISKNUM | 16 | V3.0以下版本支持的设备的最大硬盘数
MAX_DISKNUM_V10 | 8 | 1.2版本之前版本
MAX_WINDOW_V30 | 32 | V3.0以上版本支持的设备的本地显示最大播放窗口数
MAX_WINDOW | 16 | V3.0以下版本支持的设备的本地显示最大播放窗口数
MAX_VGA_V30 | 4 | V3.0以上版本支持的设备的最大可接VGA数
MAX_VGA | 1 | V3.0以下版本支持的设备的最大可接VGA数
MAX_USERNUM_V30 | 32 | V3.0以上版本支持的设备的最大用户数
MAX_USERNUM | 16 | V3.0以下版本支持的设备的最大用户数
MAX_EXCEPTIONNUM_V30 | 32 | V3.0以上版本支持的设备的最大异常处理数
MAX_EXCEPTIONNUM | 16 | V3.0以下版本支持的设备的最大异常处理数
MAX_LINK | 6 | V3.0以下版本支持的设备的单通道最大视频流连接数
MAX_LINK_V30 | 128 | V3.0以上版本支持的设备的单通道最大视频流连接数
MAX_DECPOOLNUM | 4 | 单路解码器每个解码通道最大可循环解码数
MAX_DECNUM | 4 | 单路解码器的最大解码通道数（实际只有一个，其他三个保留）
MAX_TRANSPARENTNUM | 2 | 单路解码器可配置最大透明通道数
MAX_CYCLE_CHAN | 16 | 单路解码器最大轮巡通道数
MAX_CYCLE_CHAN_V30 | 64 | 最大轮巡通道数（扩展）
MAX_DIRNAME_LENGTH | 80 | 最大目录长度
MAX_WINDOWS | 16 | 最大窗口数
MAX_WINDOWS_V41 | 16 | 最大窗口数(v4.1版本SDK)
MAX_STRINGNUM_V30 | 8 | V3.0以上版本支持的设备的最大OSD字符行数
MAX_STRINGNUM | 4 | V3.0以下版本支持的设备的最大OSD字符行数
MAX_AUXOUT | 4 | V3.0以下版本支持的设备的最大辅助输出数
MAX_HD_GROUP | 16 | V3.0以上版本支持的设备的最大硬盘组数
MAX_NFS_DISK | 8 | V3.0以下版本支持的设备的最大NFS硬盘数
IW_ESSID_MAX_SIZE | 32 | WIFI的SSID号长度
IW_ENCODING_TOKEN_MAX | 32 | WIFI密钥最大字节数
MAX_SERIAL_NUM | 64 | 最多支持的透明通道路数
MAX_DDNS_NUMS | 10 | V3.0以上版本支持的设备最大可配DDNS数
MAX_DOMAIN_NAME | 64 | 最大域名长度
MAXPROGRESS | 100 | 回放时的最大百分率
MAX_SERIALNUM | 2 | 设备支持的串口数：1-232，2-485
CARDNUM_LEN | 20 | 卡号长度
MAX_VIDEOOUT_V30 | 4 | V3.0以上版本支持的设备的视频输出数
MAX_VIDEOOUT | 2 | V3.0以下版本支持的设备的视频输出数
MAX_EMAIL_ADDR_LEN | 48 | 最大EMAIL地址长度
MAX_EMAIL_PWD_LEN | 32 | 最大EMAIL密码长度
MAX_PRESET_V30 | 256 | V3.0以上版本支持的设备支持的云台预置点数
MAX_TRACK_V30 | 256 | V3.0以上版本支持的设备支持的云台轨迹数
MAX_CRUISE_V30 | 256 | V3.0以上版本支持的设备支持的云台巡航数
MAX_PRESET | 128 | V3.0以下版本支持的设备支持的云台预置点数
MAX_TRACK | 128 | V3.0以下版本支持的设备支持的云台轨迹数
MAX_CRUISE | 128 | V3.0以下版本支持的设备支持的云台巡航数
CRUISE_MAX_PRESET_NUMS | 32 | 一条巡航最多的巡航点
MAX_SERIAL_PORT | 8 | V3.0以上版本支持的设备支持232串口数
MAX_PREVIEW_MODE | 8 | 设备支持最大预览模式数目 1画面,4画面,9画面,16画面....
MAX_MATRIXOUT | 16 | 最大模拟矩阵输出个数
LOG_INFO_LEN | 11840 | 日志附加信息长度
DESC_LEN | 16 | 云台描述字符串长度
DESC_LEN_64 | 64 | 描述字符串长度
PTZ_PROTOCOL_NUM | 200 | V3.0以上版本支持的设备最大支持的云台协议数
MAX_AUDIO | 1 | V3.0以下版本支持的设备的语音对讲通道数
MAX_AUDIO_V30 | 2 | V3.0以上版本支持的设备的语音对讲通道数
MAX_CHANNUM | 16 | V3.0以下版本支持的设备的最大通道数
MAX_ALARMIN | 16 | V3.0以下版本支持的设备的最大报警输入数
MAX_ALARMOUT | 4 | V3.0以下版本支持的设备的最大报警输出数
MAX_ANALOG_CHANNUM | 32 | 最大32个模拟通道
MAX_ANALOG_ALARMOUT | 32 | 最大32路模拟报警输出
MAX_ANALOG_ALARMIN | 32 | 最大32路模拟报警输入
MAX_IP_DEVICE | 32 | 允许接入的最大IP设备数
MAX_IP_DEVICE_V40 | 64 | 允许接入的最大IP设备数
MAX_IP_CHANNEL | 32 | 允许加入的最多IP通道数
MAX_IP_ALARMIN | 128 | 允许加入的最多报警输入数
MAX_IP_ALARMOUT | 64 | 允许加入的最多报警输出数
MAX_CHANNUM_V30 | 64 | (MAX_ANALOG_CHANNUM + MAX_IP_CHANNEL)
MAX_ALARMOUT_V30 | 96 | (MAX_ANALOG_ALARMOUT + MAX_IP_ALARMOUT)
MAX_ALARMIN_V30 | 160 | (MAX_ANALOG_ALARMIN + MAX_IP_ALARMIN)
MAX_RULE_NUM | 8 | 最大规则条数
MAX_RULE_NUM_4 | 4 | 最大规则数
MAX_TIMESEGMENT_2 | 2 | 最大时间段数
VCA_MAX_POLYGON_POINT_NUM | 10 | 检测区域最多支持10个点的多边形
MAX_TARGET_NUM | 30 | 最大目标个数
MAX_VCA_CHAN | 16 | 最大智能通道数
IW_ESSID_MAX_SIZE | 32 | SSID的长度
WIFI_WEP_MAX_KEY_COUNT | 4 | 最大密钥个数
WIFI_WEP_MAX_KEY_LENGTH | 33 | 最大密钥长度
WIFI_WPA_PSK_MAX_KEY_LENGTH | 63 | 加密字符的最大长度
WIFI_WPA_PSK_MIN_KEY_LENGTH | 8 | 加密字符的最小长度
WIFI_MAX_AP_COUNT | 20 | 无线AP的最大个数
NET_DVR_MAX_DISPREGION | 16 | 每个显示通道最多可以显示的窗口
MAX_DECODECHANNUM | 32 | 多路解码器最大解码通道数
MAX_DISPCHANNUM | 24 | 多路解码器最大显示通道数
MAX_NET_DISK | 16 | 最大网络硬盘数
MAX_ATM_PROTOCOL_NUM | 256 | ATM最大协议数
ATM_PROTOCOL_SORT | 4 | ATM协议段数
ATM_DESC_LEN | 32 | ATM描述字符串长度
MAX_ACTION_TYPE | 12 | ATM自定义协议叠加交易行为最大行为个数
SEARCH_EVENT_INFO_LEN | 300 | 事件信息长度
MAX_MASK_REGION_NUM | 4 | 最大屏蔽区域个数
MAX_CALIB_PT | 6 | 最大标定点个数
MAX_RECT_NUM | 6 | 最大矩形框个数
MAX_RESOLUTIONNUM | 64 | 支持的最大分辨率数目
MAX_LOOPPLANNUM | 16 | 最大计划切换组数
DECODE_TIMESEGMENT | 4 | 计划解码每天时间段数
MAX_RECORD_FILE_NUM | 20 | 一次操作文件( 备份、删除或刻录)的最大数目
DESC_LEN_32 | 32 | 描述字长度
MAX_NODE_NUM | 256 | 节点个数
MAX_ABILITYTYPE_NUM | 12 | 最大能力项
IPC_PROTOCOL_NUM | 50 | IPC协议最大个数
MAX_SADP_NUM | 256 | 搜索到设备最大数目
SOFTWARE_VERSION_LEN | 48 | 软件版本号长度
MAX_LANERECT_NUM | 5 | 最大车牌识别区域数
MAX_FORTIFY_NUM | 10 | 最大布防个数
MAX_INTERVAL_NUM | 4 | 最大时间间隔个数
MAX_CHJC_NUM | 3 | 最大车辆省份简称字符个数
MAX_VL_NUM | 5 | 最大虚拟线圈个数
MAX_IOSPEED_GROUP_NUM | 4 | IO测速组个数
MAX_IOOUT_NUM | 4 | 最大IO输出口个数
MAX_IOIN_NUM | 8 | 最大IO输入口个数
MAX_ITC_LANE_NUM | 6 | 最大车道个数
MAX_LANEAREA_NUM | 2 | 单车道最大区域个数
ITC_MAX_POLYGON_POINT_NUM | 20 | 检测区域最多支持20个点的多边形
MAX_ITC_SERIALCHECK_NUM | 8 | 串口校验类型个数
MAX_LINE_SEG_NUM | 8 | 最大样本线个数
MAX_SAMPLE_NUM | 5 | 最大样本个数
MAX_SIGNALLIGHT_NUM | 6 | 最大信号灯个数
SUPPORT_PD_NUM | 16 | 最大支持的物理磁盘个数
SUPPORT_ARRAY_NUM | 8 | 最大支持的阵列个数
SUPPORT_VD_NUM | 128 | 最大支持的虚拟磁盘个数
LABEL_NAME_LEN | 40 | 录像标签名称的长度
LABEL_IDENTIFY_LEN | 64 | 标签标识的长度
MAX_DEL_LABEL_IDENTIFY | 20 | 删除的最大标签标识个数
MAX_PIC_EVENT_NUM | 32 | 事件抓图的事件类型个数
MAX_ALARMIN_CAPTURE | 16 | 事件抓图报警输入个数
CARDNUM_LEN_V30 | 40 | 卡号的长度
PICTURE_NAME | 64 | 图片名称的长度
MAX_RECORD_PICTURE_NUM | 50 | 最大备份图片张数
CALIB_PT_NUM | 4 | 智能交通事件标定个数
MAX_REGION_NUM | 8 | 区域列表最大数目
MAX_LANE_NUM | 8 | 最大车道数目
MAX_AID_RULE | 8 | 最大事件规则数目
MAX_TPS_RULE | 8 | 最大参数规则数目
INQUEST_MESSAGE_LEN | 44 | 审讯重点标记信息长度
INQUEST_MAX_ROOM_NUM | 2 | 最大审讯室个数
MAX_RESUME_SEGMENT | 2 | 支持同时恢复的片段数目
MAX_ALARMHOST_SUBSYSTEM | 32 | 网络报警主机子系统个数
MAX_ALARMHOST_ALARMIN_NUM | 512 | 网络报警主机最大报警输入口数
MAX_ALARMHOST_ALARMOUT_NUM | 512 | 网络报警主机最大报警输出口数
ALARMHOST_MAX_AUDIOOUT_NUM | 32 | 网络报警主机最大语音输出数
ALARMHOST_MAX_ELECTROLOCK_NUM | 32 | 网络报警主机最大电锁数
ALARMHOST_MAX_MOBILEGATE_NUM | 32 | 网络报警主机最大移动门数
ALARMHOST_MAX_SIREN_NUM | 8 | 网络报警主机最大警号数目
MAX_DEVICE_PROTO_NUM | 256 | 网络报警主机协议类型个数
MAX_DEVICE_TYPE_NUM | 256 | 网络报警主机设备类型个数
MAX_CENTERNUM | 4 | 网络报警主机支持的最大中心个数
MAX_PHONE_NUM | 32 | 拨号号码长度
MAX_SUPPORT_RES | 32 | 最多支持的分辨率类型个数
MAX_DISPNUM_V41 | 32 | 最大显示通道个数
MAX_BIGSCREENNUM | 100 | 最多大屏拼接子屏数
MAX_WINDOWSMODE | 12 | 最多支持的画面分割类型个数
MAX_HUMAN_BIRTHDATE_LEN | 10 | 最大出生年月长度
MAX_HUMAN_PICTURE_NUM | 10 | 最大图片数
MAX_FACE_PIC_LEN | 6144 | 最大人脸图片数据长度
MAX_OSDCHAR_NUM | 256 | OSD字符数
STREAM_ID_LEN | 32 | 流ID标识长度
MAX_AUX_ALARM_NUM | 8 | 最大辅助报警个数
MAX_WIRELESS_ALARM_NUM | 8 | 最大无线报警个数


NET_DVR_Init

初始化SDK，调用其他SDK函数的前提。

BOOL NET_DVR_Init(
);

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_GETLOCALIPANDMACFAIL | 53 | 获得本地PC的IP地址或物理地址失败。

See Also

NET_DVR_Cleanup


NET_DVR_Cleanup

释放SDK资源，在结束之前最后调用。

BOOL NET_DVR_Cleanup(
);

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。

See Also

NET_DVR_Init


NET_DVR_DrawAreaInit

初始化窗口，该接口为Linux下专有接口。

BOOL NET_DVR_DrawAreaInit(
  INITINFO  InitInfo
);

Parameters

InitInfo
[in] 初始化信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_PLAYERFAILED | 51 | 调用播放库中某个函数失败。
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | 找不到Player Sdk中某个函数入口。

Remarks

当在Linux下预览前需要先调用此接口进行STL窗口的初始化。

See Also

INITINFO NET_DVR_DrawAreaRelease


NET_DVR_DrawAreaRelease

释放窗口资源，该接口为Linux下专用接口。

BOOL NET_DVR_DrawAreaRelease(
);

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PLAYERFAILED | 51 | 调用播放库中某个函数失败。

See Also

NET_DVR_DrawAreaInit


NET_DVR_SetConnectTime

设置网络连接超时时间和连接尝试次数。

BOOL NET_DVR_SetConnectTime(
  DWORD   dwWaitTime,
  DWORD   dwTryTimes
);

Parameters

dwWaitTime
[in] 超时时间，单位毫秒，取值范围[300,75000]，实际最大超时时间因系统的connect超时时间而不同。
dwTryTimes
[in] 连接尝试次数（保留）

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。

Remarks

SDK默认建立连接的超时时间为3秒。SDK4.0及以后版本中当设置的超时时间超过或低于限制的值时接口不返回失败，将取最接近的上下限限制值作为实际的超时时间。


NET_DVR_SetReconnect

设置重连功能。

BOOL NET_DVR_SetReconnect(
  DWORD   dwInterval,
  BOOL    bEnableRecon
);

Parameters

dwInterval
[in] 重连间隔，单位:毫秒
bEnableRecon
[in] 是否重连，0-不重连，1-重连，参数默认值为1

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。

Remarks

该接口可以同时控制预览、透明通道和布防的重连功能。不调用该接口时，SDK默认启动预览、透明通道和布防的重连功能，重连时间间隔为5秒。


NET_DVR_GetDVRIPByResolveSvr_EX

通过解析服务器，获取设备的动态IP地址和端口号。

BOOL NET_DVR_GetDVRIPByResolveSvr_EX(
  char     *sServerIP,
  WORD     wServerPort,
  BYTE     *sDVRName,
  WORD     wDVRNameLen,
  BYTE     *sDVRSerialNumber,
  WORD     wDVRSerialLen,
  char     *sGetIP,
  DWORD    *dwPort
);

Parameters

sServerIP
[in] 解析服务器的IP地址
wServerPort
[in] 解析服务器的端口号，我们提供的解析服务器端口号为7071
sDVRName
[in] 设备名称
wDVRNameLen
[in] 设备名称的长度
sDVRSerialNumber
[in] 设备的序列号
wDVRSerialLen
[in] 设备序列号的长度
sGetIP
[out] 获取到的设备IP地址指针
dwPort
[out] 获取到的设备端口号指针

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

该接口中的设备名称和设备序列号不能同时为空。
IPServer是我公司提供的一款域名解析服务器软件。

Reference Interface

该接口扩展源于

NET_DVR_GetDVRIPByResolveSvr


NET_DVR_SetDVRMessage

注册接收异常、重连等消息的窗口句柄，Linux下无此接口。

BOOL NET_DVR_SetDVRMessage(
  UINT     nMessage,
  HWND     hWnd
);

Parameters

nMessage
[in] 消息
hWnd
[in] 接收异常信息消息的窗口句柄

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

SDK中检测到异常信息通过消息的方式上传，以下是异常消息的定义。
宏定义 | 宏定义值 | 含义
EXCEPTION_EXCHANGE | 0x8000 | 用户交互时异常（注册心跳超时，心跳间隔为2分钟）
EXCEPTION_AUDIOEXCHANGE | 0x8001 | 语音对讲异常
EXCEPTION_ALARM | 0x8002 | 报警异常
EXCEPTION_PREVIEW | 0x8003 | 网络预览异常
EXCEPTION_SERIAL | 0x8004 | 透明通道异常
EXCEPTION_RECONNECT | 0x8005 | 预览时重连
EXCEPTION_ALARMRECONNECT | 0x8006 | 报警时重连
EXCEPTION_SERIALRECONNECT | 0x8007 | 透明通道重连
SERIAL_RECONNECTSUCCESS | 0x8008 | 透明通道重连成功
EXCEPTION_PLAYBACK | 0x8010 | 回放异常
EXCEPTION_DISKFMT | 0x8011 | 硬盘格式化
EXCEPTION_PASSIVEDECODE | 0x8012 | 被动解码异常
EXCEPTION_EMAILTEST | 0x8013 | 邮件测试异常
EXCEPTION_BACKUP | 0x8014 | 备份异常
PREVIEW_RECONNECTSUCCESS | 0x8015 | 预览时重连成功
ALARM_RECONNECTSUCCESS | 0x8016 | 报警时重连成功

应用程序中的消息处理函数实现如下，该函数中的参数wParam表示异常消息类型；lParam表示发生异常的相关索引值。

    void OnMyCommand(WPARAM wParam, LPARAM lParam)
    {
    char tempbuf[256];
    DWORD dwType = wParam;	    //异常消息
    LONG lIndex = lParam;		//出现异常消息的当前操作句柄
    ZeroMemory(tempbuf,256);
    switch(dwType)
    {
    case EXCEPTION_AUDIOEXCHANGE:		//语音对讲时网络异常
      sprintf(tempbuf,"语音对讲时网络异常!!!");
        TRACE("%s",tempbuf);
        //TODO: 关闭语音对讲
        break;
    case EXCEPTION_ALARM:			//报警上传时网络异常
        sprintf(tempbuf,"报警上传时网络异常!!!");
        TRACE("%s",tempbuf);
        //TODO: 关闭报警上传
        break;
    case EXCEPTION_PREVIEW:			//网络预览时异常
        sprintf(tempbuf,"网络预览时网络异常!!!");
        TRACE("%s",tempbuf);
        //TODO: 关闭网络预览
        break;
    case EXCEPTION_SERIAL:			//透明通道传输时异常
        sprintf(tempbuf,"透明通道传输时网络异常!!!");
        TRACE("%s",tempbuf);
        //TODO: 关闭透明通道
        break;
    case EXCEPTION_RECONNECT:			//预览时重连
        break;
    default:
        break;
    }
    };


NET_DVR_SetExceptionCallBack_V30

注册接收异常、重连等消息的窗口句柄或回调函数。

Windows下该接口定义如下：

BOOL NET_DVR_SetExceptionCallBack_V30(
  UINT                   nMessage,
  HWND                   hWnd,
  fExceptionCallBack     cbExceptionCallBack,
  void                   *pUser
);

Linux下该接口定义如下：

BOOL NET_DVR_SetExceptionCallBack_V30(
  UINT                   nMessage,
  void*                  hWnd,
  fExceptionCallBack     cbExceptionCallBack,
  void                   *pUser
);

Parameters

nMessage
[in] 消息，Linux下该参数保留
hWnd
[in] 接收异常信息消息的窗口句柄，Linux下该参数保留
cbExceptionCallBack
[in] 接收异常消息的回调函数，回调当前异常的相关信息
pUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *fExceptionCallBack)(
  DWORD    dwType,
  LONG     lUserID,
  LONG     lHandle,
  void     *pUser
);

Callback Function Parameters

dwType
[out] 异常或重连等消息的类型，见下文的异常消息宏定义表：
lUserID
[out] 登录ID
lHandle
[out] 出现异常的相应类型的句柄
pUser
[out] 用户数据

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

Windows下该函数的hWnd和cbExceptionCallBack不能同时为NULL，Linux下cbExceptionCallBack不能设置为NULL，否则将接收不到异常消息。

异常消息宏定义见下表：
宏定义 | 宏定义值 | 含义
EXCEPTION_EXCHANGE | 0x8000 | 用户交互时异常（注册心跳超时，心跳间隔为2分钟）
EXCEPTION_AUDIOEXCHANGE | 0x8001 | 语音对讲异常
EXCEPTION_ALARM | 0x8002 | 报警异常
EXCEPTION_PREVIEW | 0x8003 | 网络预览异常
EXCEPTION_SERIAL | 0x8004 | 透明通道异常
EXCEPTION_RECONNECT | 0x8005 | 预览时重连
EXCEPTION_ALARMRECONNECT | 0x8006 | 报警时重连
EXCEPTION_SERIALRECONNECT | 0x8007 | 透明通道重连
SERIAL_RECONNECTSUCCESS | 0x8008 | 透明通道重连成功
EXCEPTION_PLAYBACK | 0x8010 | 回放异常
EXCEPTION_DISKFMT | 0x8011 | 硬盘格式化
EXCEPTION_PASSIVEDECODE | 0x8012 | 被动解码异常
EXCEPTION_EMAILTEST | 0x8013 | 邮件测试异常
EXCEPTION_BACKUP | 0x8014 | 备份异常
PREVIEW_RECONNECTSUCCESS | 0x8015 | 预览时重连成功
ALARM_RECONNECTSUCCESS | 0x8016 | 报警时重连成功

如果此结构是以回调方式反馈异常消息，那么应用程序中的异常回调函数实现如下，该函数中的参数dwType表示异常消息类型（见上表）；lHandle表示发生异常的相应类型的句柄。

//注册接收异常消息的回调函数
NET_DVR_SetExceptionCallBack_V30(WM_NULL, NULL, g_ExceptionCallBack, NULL);

//接收异常消息的回调函数的外部实现
    void CALLBACK g_ExceptionCallBack(DWORD dwType, LONG lUserID, LONG lHandle, void *pUser)
   {
    char tempbuf[256];
    ZeroMemory(tempbuf,256);
    switch(dwType)
    {
    case EXCEPTION_AUDIOEXCHANGE:		//语音对讲时网络异常
      sprintf(tempbuf,"语音对讲时网络异常!!!");
        TRACE("%s",tempbuf);
        //TODO: 关闭语音对讲
        break;
    case EXCEPTION_ALARM:			//报警上传时网络异常
        sprintf(tempbuf,"报警上传时网络异常!!!");
        TRACE("%s",tempbuf);
        //TODO: 关闭报警上传
        break;
    case EXCEPTION_PREVIEW:			//网络预览时异常
        sprintf(tempbuf,"网络预览时网络异常!!!");
        TRACE("%s",tempbuf);
        //TODO: 关闭网络预览
        break;
    case EXCEPTION_SERIAL:			//透明通道传输时异常
        sprintf(tempbuf,"透明通道传输时网络异常!!!");
        TRACE("%s",tempbuf);
        //TODO: 关闭透明通道
        break;
    case EXCEPTION_RECONNECT:			//预览时重连
        break;
    default:
        break;
    }
   };


NET_DVR_GetSDKVersion

获取SDK的版本信息。

DWORD NET_DVR_GetSDKVersion(
);

Return Values

SDK版本信息，2个高字节表示主版本，2个低字节表示次版本。如0x00030000：表示版本为3.0。


NET_DVR_GetSDKBuildVersion

获取SDK的版本号和build信息。

DWORD NET_DVR_GetSDKBuildVersion(
);

Return Values

SDK的版本号和build信息。2个高字节表示版本号 ：25~32位表示主版本号，17~24位表示次版本号；2个低字节表示build信息。 如0x03000101：表示版本号为3.0，build 号是0101。


NET_DVR_GetSDKState

获取当前SDK的状态信息。

BOOL NET_DVR_GetSDKState(
  LPNET_DVR_SDKSTATE   pSDKState
);

Parameters

pSDKState
[out] 状态信息结构

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError


NET_DVR_GetSDKAbility

获取当前SDK的功能信息。

BOOL NET_DVR_GetSDKAbility(
  LPNET_DVR_SDKABL     pSDKAbl
);

Parameters

pSDKState
[out] 功能信息结构

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError


NET_DVR_SetLogToFile

启用写日志文件。

BOOL NET_DVR_SetLogToFile(
  DWORD    bLogEnable,
  char     *strLogDir,
  BOOL     bAutoDel
);

Parameters

bLogEnable
[in] 日志的等级（默认为0）：0-表示关闭日志，1-表示只输出ERROR错误日志，2-输出ERROR错误信息和DEBUG调试信息，3-输出ERROR错误信息、DEBUG调试信息和INFO普通信息等所有信息
strLogDir
[in] 日志文件的路径，windows默认值为"C:\\SdkLog\\"；linux默认值"/home/sdklog/"
bAutoDel
[in] 是否删除超出的文件数，默认值为TRUE

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

日志文件路径必须是绝对路径，且以"\\"结尾，例如"C:\\SdkLog\\"，建议用户先手动创建文件。若未指定文件路径，则采用默认路径"C:\\SdkLog\\"。 可多次调用该接口创建新的日志文件，同时最多支持创建10个文件，当设置了删除超出的文件时（即bAutoDel为TRUE），那么将会自动删除超出的文件。更改目录时到下一次写文件时才会使用新的目录写文件。


NET_DVR_GetLastError

返回最后操作的错误码。

DWORD NET_DVR_GetLastError(
);

Return Values

返回值为错误码。错误码主要分为网络通讯库错误码、RTSP通讯库错误码和软硬解库错误码，详见下表。

网络通讯库错误码

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_PASSWORD_ERROR | 1 | 用户名密码错误。注册时输入的用户名或者密码错误。
NET_DVR_NOENOUGHPRI | 2 | 权限不足。该注册用户没有权限执行当前对设备的操作，可以与远程用户参数配置做对比。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_CHANNEL_ERROR | 4 | 通道号错误。设备没有对应的通道号。
NET_DVR_OVER_MAXLINK | 5 | 设备总的连接数超过最大。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_NETWORK_ERRORDATA | 11 | 传送的数据有误。发送给设备或者从设备接收到的数据错误，如远程参数配置时输入设备不支持的值。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_OPERNOPERMIT | 13 | 无此权限。
NET_DVR_COMMANDTIMEOUT | 14 | 设备命令执行超时。
NET_DVR_ERRORSERIALPORT | 15 | 串口号错误。指定的设备串口号不存在。
NET_DVR_ERRORALARMPORT | 16 | 报警端口错误。指定的设备报警输出端口不存在。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空，或者参数格式或值不符合要求。
NET_DVR_CHAN_EXCEPTION | 18 | 设备通道处于错误状态
NET_DVR_NODISK | 19 | 设备无硬盘。当设备无硬盘时，对设备的录像文件、硬盘配置等操作失败。
NET_DVR_ERRORDISKNUM | 20 | 硬盘号错误。当对设备进行硬盘管理操作时，指定的硬盘号不存在时返回该错误。
NET_DVR_DISK_FULL | 21 | 设备硬盘满。
NET_DVR_DISK_ERROR | 22 | 设备硬盘出错
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_BUSY | 24 | 设备忙。
NET_DVR_MODIFY_FAIL | 25 | 设备修改不成功。
NET_DVR_PASSWORD_FORMAT_ERROR | 26 | 密码输入格式不正确
NET_DVR_DISK_FORMATING | 27 | 硬盘正在格式化，不能启动操作。
NET_DVR_DVRNORESOURCE | 28 | 设备资源不足。
NET_DVR_DVROPRATEFAILED | 29 | 设备操作失败。
NET_DVR_OPENHOSTSOUND_FAIL | 30 | 语音对讲、语音广播操作中采集本地音频或打开音频输出失败。
NET_DVR_DVRVOICEOPENED | 31 | 设备语音对讲被占用。
NET_DVR_TIMEINPUTERROR | 32 | 时间输入不正确。
NET_DVR_NOSPECFILE | 33 | 回放时设备没有指定的文件。
NET_DVR_CREATEFILE_ERROR | 34 | 创建文件出错。本地录像、保存图片、获取配置文件和远程下载录像时创建文件失败。
NET_DVR_FILEOPENFAIL | 35 | 打开文件出错。设置配置文件、设备升级、上传审讯文件时打开文件失败。
NET_DVR_OPERNOTFINISH | 36 | 上次的操作还没有完成。
NET_DVR_GETPLAYTIMEFAIL | 37 | 获取当前播放的时间出错。
NET_DVR_PLAYFAIL | 38 | 播放出错。
NET_DVR_FILEFORMAT_ERROR | 39 | 文件格式不正确。
NET_DVR_DIR_ERROR | 40 | 路径错误
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_AUDIO_MODE_ERROR | 42 | 声卡模式错误。当前打开声音播放模式与实际设置的模式不符出错。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_SETSOCKET_ERROR | 45 | 设置SOCKET出错。
NET_DVR_MAX_NUM | 46 | 个数达到最大。分配的注册连接数、预览连接数超过SDK支持的最大数。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_WRITEFLASHERROR | 48 | 写FLASH出错。设备升级时写FLASH失败。
NET_DVR_UPGRADEFAIL | 49 | 设备升级失败。网络或升级文件语言不匹配等原因升级失败。
NET_DVR_CARDHAVEINIT | 50 | 解码卡已经初始化过。
NET_DVR_PLAYERFAILED | 51 | 调用播放库中某个函数失败。
NET_DVR_MAX_USERNUM | 52 | 登录设备的用户数达到最大。
NET_DVR_GETLOCALIPANDMACFAIL | 53 | 获得本地PC的IP地址或物理地址失败。
NET_DVR_NOENCODEING | 54 | 设备该通道没有启动编码。
NET_DVR_IPMISMATCH | 55 | IP地址不匹配。
NET_DVR_MACMISMATCH | 56 | MAC地址不匹配。
NET_DVR_UPGRADELANGMISMATCH | 57 | 升级文件语言不匹配。
NET_DVR_MAX_PLAYERPORT | 58 | 播放器路数达到最大。
NET_DVR_NOSPACEBACKUP | 59 | 备份设备中没有足够空间进行备份。
NET_DVR_NODEVICEBACKUP | 60 | 没有找到指定的备份设备。
NET_DVR_PICTURE_BITS_ERROR | 61 | 图像素位数不符，限24色。
NET_DVR_PICTURE_DIMENSION_ERROR | 62 | 图片高*宽超限，限128*256。
NET_DVR_PICTURE_SIZ_ERROR | 63 | 图片大小超限，限100K。
NET_DVR_LOADPLAYERSDKFAILED | 64 | 载入当前目录下Player Sdk出错。
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | 找不到Player Sdk中某个函数入口。
NET_DVR_LOADDSSDKFAILED | 66 | 载入当前目录下DSsdk出错。
NET_DVR_LOADDSSDKPROC_ERROR | 67 | 找不到DsSdk中某个函数入口。
NET_DVR_DSSDK_ERROR | 68 | 调用硬解码库DsSdk中某个函数失败。
NET_DVR_VOICEMONOPOLIZE | 69 | 声卡被独占。
NET_DVR_JOINMULTICASTFAILED | 70 | 加入多播组失败。
NET_DVR_CREATEDIR_ERROR | 71 | 建立日志文件目录失败。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_USERID_ISUSING | 74 | 注销时用户ID正在进行某操作。
NET_DVR_SOCKETLISTEN_ERROR | 75 | 监听失败。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。
NET_DVR_WRITEFILE_FAILED | 77 | 写文件失败。本地录像、远程下载录像、下载图片等操作时写文件失败。
NET_DVR_FORMAT_READONLY | 78 | 禁止格式化只读硬盘。
NET_DVR_WITHSAMEUSERNAME | 79 | 远程用户配置结构中存在相同的用户名。
NET_DVR_DEVICETYPE_ERROR | 80 | 导入参数时设备型号不匹配。
NET_DVR_LANGUAGE_ERROR | 81 | 导入参数时语言不匹配。
NET_DVR_PARAVERSION_ERROR | 82 | 导入参数时软件版本不匹配。
NET_DVR_IPCHAN_NOTALIVE | 83 | 预览时外接IP通道不在线。
NET_DVR_RTSP_SDK_ERROR | 84 | 加载标准协议通讯库StreamTransClient失败。
NET_DVR_CONVERT_SDK_ERROR | 85 | 加载转封装库失败。
NET_DVR_IPC_COUNT_OVERFLOW | 86 | 超出最大的IP接入通道数。
NET_DVR_MAX_ADD_NUM | 87 | 添加录像标签或者其他操作超出最多支持的个数。
NET_DVR_PARAMMODE_ERROR | 88 | 图像增强仪，参数模式错误（用于硬件设置时，客户端进行软件设置时错误值）。
NET_DVR_CODESPITTER_OFFLINE | 89 | 码分器不在线。
NET_DVR_BACKUP_COPYING | 90 | 设备正在备份。
NET_DVR_CHAN_NOTSUPPORT | 91 | 通道不支持该操作。
NET_DVR_CALLINEINVALID | 92 | 高度线位置太集中或长度线不够倾斜。
NET_DVR_CALCANCELCONFLICT | 93 | 取消标定冲突，如果设置了规则及全局的实际大小尺寸过滤。
NET_DVR_CALPOINTOUTRANGE | 94 | 标定点超出范围。
NET_DVR_FILTERRECTINVALID | 95 | 尺寸过滤器不符合要求。
NET_DVR_DDNS_DEVOFFLINE | 96 | 设备没有注册到ddns上。
NET_DVR_DDNS_INTER_ERROR | 97 | DDNS 服务器内部错误。
NET_DVR_ALIAS_DUPLICATE | 150 | 别名重复（EasyDDNS的配置）
NET_DVR_DEV_NET_OVERFLOW | 800 | 网络流量超过设备能力上限
NET_DVR_STATUS_RECORDFILE_WRITING_NOT_LOCK | 801 | 录像文件在录像，无法被锁定
NET_DVR_STATUS_CANT_FORMAT_LITTLE_DISK | 802 | 由于硬盘太小无法格式化
阵列错误码 |  |
NET_DVR_NAME_NOT_ONLY | 200 | 名称已存在。
NET_DVR_OVER_MAX_ARRAY | 201 | 阵列达到上限。
NET_DVR_OVER_MAX_VD | 202 | 虚拟磁盘达到上限。
NET_DVR_VD_SLOT_EXCEED | 203 | 虚拟磁盘槽位已满。
NET_DVR_PD_STATUS_INVALID | 204 | 重建阵列所需物理磁盘状态错误。
NET_DVR_PD_BE_DEDICATE_SPARE | 205 | 重建阵列所需物理磁盘为指定热备。
NET_DVR_PD_NOT_FREE | 206 | 重建阵列所需物理磁盘非空闲。
NET_DVR_CANNOT_MIG2NEWMODE | 207 | 不能从当前的阵列类型迁移到新的阵列类型。
NET_DVR_MIG_PAUSE | 208 | 迁移操作已暂停。
NET_DVR_MIG_CANCEL | 209 | 正在执行的迁移操作已取消。
NET_DVR_EXIST_VD | 210 | 阵列上存在虚拟磁盘，无法删除阵列。
NET_DVR_TARGET_IN_LD_FUNCTIONAL | 211 | 对象物理磁盘为虚拟磁盘组成部分且工作正常。
NET_DVR_HD_IS_ASSIGNED_ALREADY | 212 | 指定的物理磁盘被分配为虚拟磁盘。
NET_DVR_INVALID_HD_COUNT | 213 | 物理磁盘数量与指定的RAID等级不匹配。
NET_DVR_LD_IS_FUNCTIONAL | 214 | 阵列正常，无法重建。
NET_DVR_BGA_RUNNING | 215 | 存在正在执行的后台任务。
NET_DVR_LD_NO_ATAPI | 216 | 无法用ATAPI盘创建虚拟磁盘。
NET_DVR_MIGRATION_NOT_NEED | 217 | 阵列无需迁移。
NET_DVR_HD_TYPE_MISMATCH | 218 | 物理磁盘不属于同意类型。
NET_DVR_NO_LD_IN_DG | 219 | 无虚拟磁盘，无法进行此项操作。
NET_DVR_NO_ROOM_FOR_SPARE | 220 | 磁盘空间过小，无法被指定为热备盘。
NET_DVR_SPARE_IS_IN_MULTI_DG | 221 | 磁盘已被分配为某阵列热备盘。
NET_DVR_DG_HAS_MISSING_PD | 222 | 阵列缺少盘。
智能设备错误码 |  |
NET_DVR_ID_ERROR | 300 | 配置ID不合理。
NET_DVR_POLYGON_ERROR | 301 | 多边形不符合要求。
NET_DVR_RULE_PARAM_ERROR | 302 | 规则参数不合理。
NET_DVR_RULE_CFG_CONFLICT | 303 | 配置信息冲突。
NET_DVR_CALIBRATE_NOT_READY | 304 | 当前没有标定信息。
NET_DVR_CAMERA_DATA_ERROR | 305 | 摄像机参数不合理。
NET_DVR_CALIBRATE_DATA_UNFIT | 306 | 长度不够倾斜，不利于标定。
NET_DVR_CALIBRATE_DATA_CONFILICT | 307 | 标定出错，以为所有点共线或者位置太集中。
NET_DVR_CALIBRATE_CALC_FAIL | 308 | 摄像机标定参数值计算失败。
NET_DVR_CALIBRATE_LINE_OUT_RECT | 309 | 输入的样本标定线超出了样本外接矩形框。
NET_DVR_ENTER_RULE_NOT_READY | 310 | 没有设置进入区域
NET_DVR_AID_RULE_NO_INCLUDE_LANE | 311 | 交通事件规则中没有包括车道（特值拥堵和逆行）
NET_DVR_LANE_NOT_READY | 312 | 当前没有设置车道
NET_DVR_RULE_INCLUDE_TWO_WAY | 313 | 事件规则中包含2种不同方向
NET_DVR_LANE_TPS_RULE_CONFLICT | 314 | 车道和数据规则冲突
NET_DVR_NOT_SUPPORT_EVENT_TYPE | 315 | 不支持的事件类型
NET_DVR_LANE_NO_WAY | 316 | 车道没有方向
NET_DVR_SIZE_FILTER_ERROR | 317 | 尺寸过滤框不合理
NET_DVR_LIB_FFL_NO_FACE | 318 | 特征点定位时输入的图像没有人脸
NET_DVR_LIB_FFL_IMG_TOO_SMALL | 319 | 特征点定位时输入的图像太小
NET_DVR_LIB_FD_IMG_NO_FACE | 320 | 单张图像人脸检测时输入的图像没有人脸
NET_DVR_LIB_FACE_TOO_SMALL | 321 | 建模时人脸太小
NET_DVR_LIB_FACE_QUALITY_TOO_BAD | 322 | 建模时人脸图像质量太差
NET_DVR_KEY_PARAM_ERR | 323 | 高级参数设置错误
NET_DVR_CALIBRATE_DATA_ERR | 324 | 标定样本数目错误，或数据值错误，或样本点超出地平线
NET_DVR_CALIBRATE_DISABLE_FAIL | 325 | 所配置规则不允许取消标定

RTSP通讯库错误码

错误类型 | 错误值 | 错误信息
NET_DVR_RTSP_ERROR_NOENOUGHPRI | 401 | 无权限：服务器返回401时，转成这个错误码
NET_DVR_RTSP_ERROR_ALLOC_RESOURCE | 402 | 分配资源失败
NET_DVR_RTSP_ERROR_PARAMETER | 403 | 参数错误
NET_DVR_RTSP_ERROR_FORCE_STOP | 406 | 用户中途强行退出
NET_DVR_RTSP_GETPORTFAILED | 407 | 获取RTSP端口错误
NET_DVR_RTSP_DESCRIBERROR | 410 | RTSP DECRIBE交互错误
NET_DVR_RTSP_DESCRIBESENDTIMEOUT | 411 | RTSP DECRIBE发送超时
NET_DVR_RTSP_DESCRIBESENDERROR | 412 | RTSP DECRIBE发送失败
NET_DVR_RTSP_DESCRIBERECVTIMEOUT | 413 | RTSP DECRIBE接收超时
NET_DVR_RTSP_DESCRIBERECVDATALOST | 414 | RTSP DECRIBE接收数据错误
NET_DVR_RTSP_DESCRIBERECVERROR | 415 | RTSP DECRIBE接收失败
NET_DVR_RTSP_DESCRIBESERVERERR | 416 | RTSP DECRIBE服务器返回401,501等错误
NET_DVR_RTSP_SETUPSENDTIMEOUT | 421 | RTSP SETUP发送超时
NET_DVR_RTSP_SETUPSENDERROR | 422 | RTSP SETUP发送错误
NET_DVR_RTSP_SETUPRECVTIMEOUT | 423 | RTSP SETUP接收超时
NET_DVR_RTSP_SETUPRECVDATALOST | 424 | RTSP SETUP接收数据错误
NET_DVR_RTSP_SETUPRECVERROR | 425 | RTSP SETUP接收失败
NET_DVR_RTSP_OVER_MAX_CHAN | 426 | 设备超过最大连接数
NET_DVR_RTSP_PLAYSENDTIMEOUT | 431 | RTSP PLAY发送超时
NET_DVR_RTSP_PLAYSENDERROR | 432 | RTSP PLAY发送错误
NET_DVR_RTSP_PLAYRECVTIMEOUT | 433 | RTSP PLAT接收超时
NET_DVR_RTSP_PLAYRECVDATALOST | 434 | RTSP PLAY接收数据错误
NET_DVR_RTSP_PLAYRECVERROR | 435 | RTSP PLAY接收失败
NET_DVR_RTSP_PLAYSERVERERR | 436 | RTSP PLAY设备返回错误状态
NET_DVR_RTSP_TEARDOWNSENDTIMEOUT | 441 | RTSP TEARDOWN发送超时
NET_DVR_RTSP_TEARDOWNSENDERROR | 442 | RTSP TEARDOWN发送错误
NET_DVR_RTSP_TEARDOWNRECVTIMEOUT | 443 | RTSP TEARDOWN接收超时
NET_DVR_RTSP_TEARDOWNRECVDATALOST | 444 | RTSP TEARDOWN接收数据错误
NET_DVR_RTSP_TEARDOWNRECVERROR | 445 | RTSP TEARDOWN接收失败
NET_DVR_RTSP_TEARDOWNSERVERERR | 446 | RTSP TEARDOWN设备返回错误状态

软解码库错误码

错误类型 | 错误值 | 错误信息
NET_PLAYM4_NOERROR | 500 | 没有错误
NET_PLAYM4_PARA_OVER | 501 | 输入参数非法
NET_PLAYM4_ORDER_ERROR | 502 | 调用顺序不对
NET_PLAYM4_TIMER_ERROR | 503 | 多媒体时钟设置失败
NET_PLAYM4_DEC_VIDEO_ERROR | 504 | 视频解码失败
NET_PLAYM4_DEC_AUDIO_ERROR | 505 | 音频解码失败
NET_PLAYM4_ALLOC_MEMORY_ERROR | 506 | 分配内存失败
NET_PLAYM4_OPEN_FILE_ERROR | 507 | 文件操作失败
NET_PLAYM4_CREATE_OBJ_ERROR | 508 | 创建线程事件等失败
NET_PLAYM4_CREATE_DDRAW_ERROR | 509 | 创建directDraw失败
NET_PLAYM4_CREATE_OFFSCREEN_ERROR | 510 | 创建后端缓存失败
NET_PLAYM4_BUF_OVER | 511 | 缓冲区满，输入流失败
NET_PLAYM4_CREATE_SOUND_ERROR | 512 | 创建音频设备失败
NET_PLAYM4_SET_VOLUME_ERROR | 513 | 设置音量失败
NET_PLAYM4_SUPPORT_FILE_ONLY | 514 | 只能在播放文件时才能使用此接口
NET_PLAYM4_SUPPORT_STREAM_ONLY | 515 | 只能在播放流时才能使用此接口
NET_PLAYM4_SYS_NOT_SUPPORT | 516 | 系统不支持，解码器只能工作在Pentium 3以上
NET_PLAYM4_FILEHEADER_UNKNOWN | 517 | 没有文件头
NET_PLAYM4_VERSION_INCORRECT | 518 | 解码器和编码器版本不对应
NET_PALYM4_INIT_DECODER_ERROR | 519 | 初始化解码器失败
NET_PLAYM4_CHECK_FILE_ERROR | 520 | 文件太短或码流无法识别
NET_PLAYM4_INIT_TIMER_ERROR | 521 | 初始化多媒体时钟失败
NET_PLAYM4_BLT_ERROR | 522 | 位拷贝失败
NET_PLAYM4_UPDATE_ERROR | 523 | 显示overlay失败
NET_PLAYM4_OPEN_FILE_ERROR_MULTI | 524 | 打开混合流文件失败
NET_PLAYM4_OPEN_FILE_ERROR_VIDEO | 525 | 打开视频流文件失败
NET_PLAYM4_JPEG_COMPRESS_ERROR | 526 | JPEG压缩错误
NET_PLAYM4_EXTRACT_NOT_SUPPORT | 527 | 不支持该文件版本.
NET_PLAYM4_EXTRACT_DATA_ERROR | 528 | 提取文件数据失败

Qos流控库错误码

错误类型 | 错误值 | 错误信息
NET_QOS_ERR_SCHEDPARAMS_BAD_MINIMUM_INTERVAL | 678 | 预设的最小间隔错误.
NET_QOS_ERR_SCHEDPARAMS_BAD_FRACTION | 679 | 预设分数错误
NET_QOS_ERR_SCHEDPARAMS_INVALID_BANDWIDTH | 680 | 预设的带宽值无效
NET_QOS_ERR_PACKET_TOO_BIG | 687 | 数据包太大
NET_QOS_ERR_PACKET_LENGTH | 688 | 数据包长度错误
NET_QOS_ERR_PACKET_VERSION | 689 | 数据包版本错误
NET_QOS_ERR_PACKET_UNKNOW | 690 | 未知数据包
NET_QOS_ERR_OUTOFMEM | 695 | 内存不足
NET_QOS_ERR_LIB_NOT_INITIALIZED | 696 | Lib库没有初始化
NET_QOS_ERR_SESSION_NOT_FOUND | 697 | 没有找到会话
NET_QOS_ERR_INVALID_ARGUMENTS | 698 | 参数无效
NET_QOS_ERROR | 699 | Qos 错误
NET_QOS_OK | 700 | 没有错误

Remarks

通过NET_DVR_GetErrorMsg函数还能获取错误号信息。

See Also

NET_DVR_GetErrorMsg


NET_DVR_GetErrorMsg

返回最后操作的错误码信息。

char* NET_DVR_GetErrorMsg(
  LONG   *pErrorNo
);

Parameters

pErrorNo
[out] 错误码数值的指针

Return Values

返回值为错误码信息的指针。错误码主要分为网络通讯库错误码、RTSP通讯库错误码和软硬解库错误码，详见下表。

网络通讯库错误码

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | No error.
NET_DVR_PASSWORD_ERROR | 1 | User name or password error.
NET_DVR_NOENOUGHPRI | 2 | Not authorized to do this operation.
NET_DVR_NOINIT | 3 | SDK is not initialized.
NET_DVR_CHANNEL_ERROR | 4 | Channel number error. There is no corresponding channel number on the device.
NET_DVR_OVER_MAXLINK | 5 | The number of connection with the device has exceeded the max limit.
NET_DVR_VERSIONNOMATCH | 6 | Version mismatch. SDK version is not matching with the device.
NET_DVR_NETWORK_FAIL_CONNECT | 7 | Failed to connect to the device. The device is off-line, or connection timeout caused by network.
NET_DVR_NETWORK_SEND_ERROR | 8 | Failed to send data to the device.
NET_DVR_NETWORK_RECV_ERROR | 9 | Failed to receive data from the device.
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | Timeout when receiving data from the device.
NET_DVR_NETWORK_ERRORDATA | 11 | The data sent to the device is illegal, or the data received from the device error. E.g. The input data is not supported by the device for remote configuration.
NET_DVR_ORDER_ERROR | 12 | API calling order error.
NET_DVR_OPERNOPERMIT | 13 | Not authorized for this operation.
NET_DVR_COMMANDTIMEOUT | 14 | Executing command on the device is timeout.
NET_DVR_ERRORSERIALPORT | 15 | Serial port number error. The assigned serial port does not exist on the device.
NET_DVR_ERRORALARMPORT | 16 | Alarm port number error.
NET_DVR_PARAMETER_ERROR | 17 | Parameter error. Input or output parameters in the SDK API is NULL, or the value or format of the parameters does not match with the requirement.
NET_DVR_CHAN_EXCEPTION | 18 | Device channel is in exception status.
NET_DVR_NODISK | 19 | No hard disk on the device, and the operation of recording and hard disk configuration will fail.
NET_DVR_ERRORDISKNUM | 20 | Hard disk number error. The assigned hard disk number does not exist during hard disk management.
NET_DVR_DISK_FULL | 21 | Device hark disk is full.
NET_DVR_DISK_ERROR | 22 | Device hard disk error.
NET_DVR_NOSUPPORT | 23 | Device does not support this function.
NET_DVR_BUSY | 24 | Device is busy.
NET_DVR_MODIFY_FAIL | 25 | Failed to modify device parameters.
NET_DVR_PASSWORD_FORMAT_ERROR | 26 | The inputting password format is not correct.
NET_DVR_DISK_FORMATING | 27 | Hard disk is formatting, and the operation cannot be done.
NET_DVR_DVRNORESOURCE | 28 | Not enough resource on the device.
NET_DVR_DVROPRATEFAILED | 29 | Device operation failed.
NET_DVR_OPENHOSTSOUND_FAIL | 30 | Failed to collect local audio data or to open audio output during voice talk / broadcasting.
NET_DVR_DVRVOICEOPENED | 31 | Voice talk channel on the device has been occupied.
NET_DVR_TIMEINPUTERROR | 32 | Time input is not correct.
NET_DVR_NOSPECFILE | 33 | There is no selected file for playback.
NET_DVR_CREATEFILE_ERROR | 34 | Failed to create a file, during local recording, saving picture, getting configuration file or downloading record file.
NET_DVR_FILEOPENFAIL | 35 | Failed to open a file, when importing configuration file, upgrading device or uploading inquest file.
NET_DVR_OPERNOTFINISH | 36 | The last operation has not been completed.
NET_DVR_GETPLAYTIMEFAIL | 37 | Failed to get the current played time.
NET_DVR_PLAYFAIL | 38 | Failed to start playback.
NET_DVR_FILEFORMAT_ERROR | 39 | The file format is not correct.
NET_DVR_DIR_ERROR | 40 | File directory error.
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | Resource allocation error.
NET_DVR_AUDIO_MODE_ERROR | 42 | Sound adapter mode error. Currently opened sound playing mode does not match with the set mode.
NET_DVR_NOENOUGH_BUF | 43 | Buffer is not enough.
NET_DVR_CREATESOCKET_ERROR | 44 | Create SOCKET error.
NET_DVR_SETSOCKET_ERROR | 45 | Set SOCKET error
NET_DVR_MAX_NUM | 46 | The number of login or preview connections has exceeded the SDK limitation.
NET_DVR_USERNOTEXIST | 47 | User doest not exist. The user ID has been logged out or unavailable.
NET_DVR_WRITEFLASHERROR | 48 | Writing FLASH error. Failed to write FLASH during device upgrade.
NET_DVR_UPGRADEFAIL | 49 | Failed to upgrade device. It is caused by network problem or the language mismatch between the device and the upgrade file.
NET_DVR_CARDHAVEINIT | 50 | The decode card has alreadly been initialed.
NET_DVR_PLAYERFAILED | 51 | Failed to call API of player SDK.
NET_DVR_MAX_USERNUM | 52 | The number of login user has reached the maximum limit.
NET_DVR_GETLOCALIPANDMACFAIL | 53 | Failed to get the IP address or physical address of local PC.
NET_DVR_NOENCODEING | 54 | This channel hasn't started encoding.
NET_DVR_IPMISMATCH | 55 | IP address not match
NET_DVR_MACMISMATCH | 56 | MAC address not match
NET_DVR_UPGRADELANGMISMATCH | 57 | The language of upgrading file does not match the language of the device.
NET_DVR_MAX_PLAYERPORT | 58 | The number of player ports has reached the maximum limit.
NET_DVR_NOSPACEBACKUP | 59 | No enough space to backup file in backup device.
NET_DVR_NODEVICEBACKUP | 60 | No backup device.
NET_DVR_PICTURE_BITS_ERROR | 61 | The color quality seeting of the picture does not match the requirement, and it should be limited to 24.
NET_DVR_PICTURE_DIMENSION_ERROR | 62 | The dimension is over 128x256.
NET_DVR_PICTURE_SIZ_ERROR | 63 | The size of picture is over 100K
NET_DVR_LOADPLAYERSDKFAILED | 64 | Failed to load player SDK.
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | Can not find the function in player SDK.
NET_DVR_LOADDSSDKFAILED | 66 | Failed to load the library file-"DsSdk".
NET_DVR_LOADDSSDKPROC_ERROR | 67 | Can not find the API in "DsSdk".
NET_DVR_DSSDK_ERROR | 68 | Failed to call the API in "DsSdk".
NET_DVR_VOICEMONOPOLIZE | 69 | Sound adapter has been monopolized.
NET_DVR_JOINMULTICASTFAILED | 70 | Failed to join to multicast group.
NET_DVR_CREATEDIR_ERROR | 71 | Failed to create log file directory.
NET_DVR_BINDSOCKET_ERROR | 72 | Failed to bind socket.
NET_DVR_SOCKETCLOSE_ERROR | 73 | Socket disconnected. It is caused by network disconnection or destination unreachable.
NET_DVR_USERID_ISUSING | 74 | The user ID is operating when logout.
NET_DVR_SOCKETLISTEN_ERROR | 75 | Failed to listen
NET_DVR_PROGRAM_EXCEPTION | 76 | Sdk program exception
NET_DVR_WRITEFILE_FAILED | 77 | Failed to write file, during local recording, saving picture or downloading record file.
NET_DVR_FORMAT_READONLY | 78 | Failed to format read-only HD
NET_DVR_WITHSAMEUSERNAME | 79 | This user name already exists in the user configuration structure.
NET_DVR_DEVICETYPE_ERROR | 80 | Device type does not match when import configuration.
NET_DVR_LANGUAGE_ERROR | 81 | Language does not match when import configuration.
NET_DVR_PARAVERSION_ERROR | 82 | Software version does not match when import configuration.
NET_DVR_IPCHAN_NOTALIVE | 83 | IP channel is not on-line when previewing.
NET_DVR_RTSP_SDK_ERROR | 84 | Load StreamTransClient.dll failed
NET_DVR_CONVERT_SDK_ERROR | 85 | Load SystemTransform.dll failed
NET_DVR_IPC_COUNT_OVERFLOW | 86 | over maximun ipc count
NET_DVR_MAX_ADD_NUM | 87 | add label or other operation reach the maximum number
NET_DVR_PARAMMODE_ERROR | 88 | Image intensifier, parameter mode error. This error may occur when client sets software or hardware parameters.
NET_DVR_CODESPITTER_OFFLINE | 89 | Code splitter is offline.
NET_DVR_BACKUP_COPYING | 90 | Device is backing up.
NET_DVR_CHAN_NOTSUPPORT | 91 | Channel not support
NET_DVR_CALLINEINVALID | 92 | The height line location is too concentrated, or the length line is not inclined enough.
NET_DVR_CALCANCELCONFLICT | 93 | Cancel calibration conflict, if the rule and overall actual size filter have been set.
NET_DVR_CALPOINTOUTRANGE | 94 | Calibration point exceeds the range.
NET_DVR_FILTERRECTINVALID | 95 | The size filter does not meet the requirement.
NET_DVR_DDNS_DEVOFFLINE | 96 | Device has not registered to DDNS.
NET_DVR_DDNS_INTER_ERROR | 97 | DDNS inner error.
NET_DVR_ALIAS_DUPLICATE | 150 | Alias is duplicate (for EasyDDNS)
NET_DVR_DEV_NET_OVERFLOW | 800 | Network traffic is over device ability limit.
NET_DVR_STATUS_RECORDFILE_WRITING_NOT_LOCK | 801 | The video file is recording and can't be locked.
NET_DVR_STATUS_CANT_FORMAT_LITTLE_DISK | 802 | The hard disk capacity is too small and can not be formatted.
阵列错误码 |  |
NET_DVR_NAME_NOT_ONLY | 200 | Existing name.
NET_DVR_OVER_MAX_ARRAY | 201 | Number of arrays has reached its limit.
NET_DVR_OVER_MAX_VD | 202 | Number of virtual disks has reached its limit.
NET_DVR_VD_SLOT_EXCEED | 203 | Virtual disk slot is full.
NET_DVR_PD_STATUS_INVALID | 204 | Physical disk for rebuilding array is with error status.
NET_DVR_PD_BE_DEDICATE_SPARE | 205 | Physical disk for rebuilding array is specified as spare drive.
NET_DVR_PD_NOT_FREE | 206 | Physical disk for rebuilding array is not idle.
NET_DVR_CANNOT_MIG2NEWMODE | 207 | Unable to migrate from the current array type to the new array type.
NET_DVR_MIG_PAUSE | 208 | The migration operation has been paused.
NET_DVR_MIG_CANCEL | 209 | The migration operation has been cancelled.
NET_DVR_EXIST_VD | 210 | Operation failed! Please delete the virtual disk existed in the array first.
NET_DVR_TARGET_IN_LD_FUNCTIONAL | 211 | Target physical disk is part of the virtual disk and is functional.
NET_DVR_HD_IS_ASSIGNED_ALREADY | 212 | Specified physical disk is assigned to a virtual disk
NET_DVR_INVALID_HD_COUNT | 213 | Number of physical disks doesn't fit the specified RAID level.
NET_DVR_LD_IS_FUNCTIONAL | 214 | Specified virtual disk is functional.
NET_DVR_BGA_RUNNING | 215 | BGA is running.
NET_DVR_LD_NO_ATAPI | 216 | Can not create virtual disk with ATAPI drive.
NET_DVR_MIGRATION_NOT_NEED | 217 | Migration is not necessary.
NET_DVR_HD_TYPE_MISMATCH | 218 | Physical disks are not of the same type.
NET_DVR_NO_LD_IN_DG | 219 | No virtual disk exist on the specified array.
NET_DVR_NO_ROOM_FOR_SPARE | 220 | Disk space is too small to be assigned as spare drive.
NET_DVR_SPARE_IS_IN_MULTI_DG | 221 | Disk is already assigned as a spare drive for an array.
NET_DVR_DG_HAS_MISSING_PD | 222 | Disk is missing from an array.
智能设备错误值 |  |
NET_DVR_ID_ERROR | 300 | Configuration ID is illegal.
NET_DVR_POLYGON_ERROR | 301 | Polygon does not match requirement.
NET_DVR_RULE_PARAM_ERROR | 302 | Rule parameter is illegal.
NET_DVR_RULE_CFG_CONFLICT | 303 | Configuration conflict.
NET_DVR_CALIBRATE_NOT_READY | 304 | Calibration not ready.
NET_DVR_CAMERA_DATA_ERROR | 305 | Camera parameter is illegal.
NET_DVR_CALIBRATE_DATA_UNFIT | 306 | Not tilt enough, not fit to calibrate.
NET_DVR_CALIBRATE_DATA_CONFILICT | 307 | Calibration error.
NET_DVR_CALIBRATE_CALC_FAIL | 308 | Failed to calculate camera calibration parameter.
NET_DVR_CALIBRATE_LINE_OUT_RECT | 309 | The input calibrating line exceeds the external rectangle sample.
NET_DVR_ENTER_RULE_NOT_READY | 310 | Enter rule not ready.
NET_DVR_AID_RULE_NO_INCLUDE_LANE | 311 | It does not include lane in the traffic event rule (especial for traffic jam or driving against the traffic).
NET_DVR_LANE_NOT_READY | 312 | Lane not ready.
NET_DVR_RULE_INCLUDE_TWO_WAY | 313 | There are two different directions in event rule.
NET_DVR_LANE_TPS_RULE_CONFLICT | 314 | The lane conflicts with the data rule.
NET_DVR_NOT_SUPPORT_EVENT_TYPE | 315 | The event type is not supported by the device.
NET_DVR_LANE_NO_WAY | 316 | The lane has no direction.
NET_DVR_SIZE_FILTER_ERROR | 317 | The size of filter is illegal.
NET_DVR_LIB_FFL_NO_FACE | 318 | There is no face when feature point positioning.
NET_DVR_LIB_FFL_IMG_TOO_SMALL | 319 | The input image is too small when feature point positioning.
NET_DVR_LIB_FD_IMG_NO_FACE | 320 | The input image has no face when detecting face in single image.
NET_DVR_LIB_FACE_TOO_SMALL | 321 | Face is too small when building model.
NET_DVR_LIB_FACE_QUALITY_TOO_BAD | 322 | Face image is of poor quality when building model.
NET_DVR_KEY_PARAM_ERR | 323 | Advanced parameter setting error.
NET_DVR_CALIBRATE_DATA_ERR | 324 | Calibration sample size error, or data value error, or sample points beyond the horizon
NET_DVR_CALIBRATE_DISABLE_FAIL | 325 | The configured rules do not allow to cancel calibration.

RTSP通讯库错误码

错误类型 | 错误值 | 错误信息
NET_DVR_RTSP_ERROR_NOENOUGHPRI | 401 | No permission: if server returns 401, it will change to this error code
NET_DVR_RTSP_ERROR_ALLOC_RESOURCE | 402 | Failed to allocate the resource
NET_DVR_RTSP_ERROR_PARAMETER | 403 | Parameter error
NET_DVR_RTSP_ERROR_FORCE_STOP | 406 | The user forces to exit midway
NET_DVR_RTSP_GETPORTFAILED | 407 | RTSP port getting error.
NET_DVR_RTSP_DESCRIBERROR | 410 | RTSP DECRIBE communicate error
NET_DVR_RTSP_DESCRIBESENDTIMEOUT | 411 | Sending RTSP DECRIBE is timeout.
NET_DVR_RTSP_DESCRIBESENDERROR | 412 | Failed to send RTSP DECRIBE.
NET_DVR_RTSP_DESCRIBERECVTIMEOUT | 413 | Receiving RTSP DECRIBE is timeout.
NET_DVR_RTSP_DESCRIBERECVDATALOST | 414 | Receiving data of RTSP DECRIBE error.
NET_DVR_RTSP_DESCRIBERECVERROR | 415 | Failed to receive RTSP DECRIBE.
NET_DVR_RTSP_DESCRIBESERVERERR | 416 | RTSP DECRIBE device returns the error that values 401 or 501.
NET_DVR_RTSP_SETUPSENDTIMEOUT | 421 | Sending RTSP SETUP is timeout.
NET_DVR_RTSP_SETUPSENDERROR | 422 | Sending RTSP SETUP error.
NET_DVR_RTSP_SETUPRECVTIMEOUT | 423 | Receiving RTSP SETUP is timeout.
NET_DVR_RTSP_SETUPRECVDATALOST | 424 | Receiving data of RTSP SETUP error.
NET_DVR_RTSP_SETUPRECVERROR | 425 | Failed to receive RTSP SETUP.
NET_DVR_RTSP_OVER_MAX_CHAN | 426 | RTSP SETUP device returns the error that values 401 or 501. It exceeds the max connection number.
NET_DVR_RTSP_PLAYSENDTIMEOUT | 431 | Sending RTSP PLAY is timeout.
NET_DVR_RTSP_PLAYSENDERROR | 432 | Sending RTSP PLAY error.
NET_DVR_RTSP_PLAYRECVTIMEOUT | 433 | Receiving RTSP PLAY is timeout.
NET_DVR_RTSP_PLAYRECVDATALOST | 434 | Receiving data of RTSP PLAY error.
NET_DVR_RTSP_PLAYRECVERROR | 435 | Failed to receive RTSP PLAY.
NET_DVR_RTSP_PLAYSERVERERR | 436 | RTSP PLAY device returns the error that values 401 or 501.
NET_DVR_RTSP_TEARDOWNSENDTIMEOUT | 441 | Sending RTSP TEARDOWN is timeout.
NET_DVR_RTSP_TEARDOWNSENDERROR | 442 | Sending RTSP TEARDOWN error.
NET_DVR_RTSP_TEARDOWNRECVTIMEOUT | 443 | Receiving RTSP TEARDOWN is timeout.
NET_DVR_RTSP_TEARDOWNRECVDATALOST | 444 | Receiving data of RTSP TEARDOWN error.
NET_DVR_RTSP_TEARDOWNRECVERROR | 445 | Failed to receive RTSP TEARDOWN.
NET_DVR_RTSP_TEARDOWNSERVERERR | 446 | RTSP TEARDOWN device returns the error that values 401 or 501.

软解码库错误码

错误类型 | 错误值 | 错误信息
NET_PLAYM4_NOERROR | 500 | no error
NET_PLAYM4_PARA_OVER | 501 | input parameter is invalid
NET_PLAYM4_ORDER_ERROR | 502 | The order of the function to be called is error
NET_PLAYM4_TIMER_ERROR | 503 | Create multimedia clock failed
NET_PLAYM4_DEC_VIDEO_ERROR | 504 | Decode video data failed
NET_PLAYM4_DEC_AUDIO_ERROR | 505 | Decode audio data failed
NET_PLAYM4_ALLOC_MEMORY_ERROR | 506 | Allocate memory failed
NET_PLAYM4_OPEN_FILE_ERROR | 507 | Open the file failed
NET_PLAYM4_CREATE_OBJ_ERROR | 508 | Create thread or event failed
NET_PLAYM4_CREATE_DDRAW_ERROR | 509 | Create DirectDraw object failed
NET_PLAYM4_CREATE_OFFSCREEN_ERROR | 510 | failed when creating off-screen surface
NET_PLAYM4_BUF_OVER | 511 | buffer is overflow
NET_PLAYM4_CREATE_SOUND_ERROR | 512 | failed when creating audio device
NET_PLAYM4_SET_VOLUME_ERROR | 513 | Set volume failed
NET_PLAYM4_SUPPORT_FILE_ONLY | 514 | The function only support play file
NET_PLAYM4_SUPPORT_STREAM_ONLY | 515 | The function only support play stream
NET_PLAYM4_SYS_NOT_SUPPORT | 516 | System not support
NET_PLAYM4_FILEHEADER_UNKNOWN | 517 | No file header
NET_PLAYM4_VERSION_INCORRECT | 518 | The version of decoder and encoder is not adapted
NET_PALYM4_INIT_DECODER_ERROR | 519 | nitialize decoder failed
NET_PLAYM4_CHECK_FILE_ERROR | 520 | The file data is unknown
NET_PLAYM4_INIT_TIMER_ERROR | 521 | Initialize decoder failed
NET_PLAYM4_BLT_ERROR | 522 | Blt failed
NET_PLAYM4_UPDATE_ERROR | 523 | Update failed
NET_PLAYM4_OPEN_FILE_ERROR_MULTI | 524 | openfile error, streamtype is multi
NET_PLAYM4_OPEN_FILE_ERROR_VIDEO | 525 | openfile error, streamtype is video
NET_PLAYM4_JPEG_COMPRESS_ERROR | 526 | JPEG compress error
NET_PLAYM4_EXTRACT_NOT_SUPPORT | 527 | Don't support the version of this file.
NET_PLAYM4_EXTRACT_DATA_ERROR | 528 | Extract video data failed.

Qos流控库错误码

错误类型 | 错误值 | 错误信息
NET_QOS_ERR_SCHEDPARAMS_BAD_MINIMUM_INTERVAL | 678 | Scheduled parameter of minimum interval is bad .
NET_QOS_ERR_SCHEDPARAMS_BAD_FRACTION | 679 | Scheduled parameter of fraction is bad.
NET_QOS_ERR_SCHEDPARAMS_INVALID_BANDWIDTH | 680 | Scheduled parameter of bandwidth is not invalid.
NET_QOS_ERR_PACKET_TOO_BIG | 687 | Packet too big.
NET_QOS_ERR_PACKET_LENGTH | 688 | Packet length error.
NET_QOS_ERR_PACKET_VERSION | 689 | Packet version error.
NET_QOS_ERR_PACKET_UNKNOW | 690 | Packet unknow.
NET_QOS_ERR_OUTOFMEM | 695 | Out of memory.
NET_QOS_ERR_LIB_NOT_INITIALIZED | 696 | Lib not initialized.
NET_QOS_ERR_SESSION_NOT_FOUND | 697 | Session not found.
NET_QOS_ERR_INVALID_ARGUMENTS | 698 | Invalid arguments.
NET_QOS_ERROR | 699 | Qos error.
NET_QOS_OK | 700 | No error.

Remarks

通过NET_DVR_GetLastError函数可获取错误号值。

See Also

NET_DVR_GetLastError


NET_DVR_Login_V30

用户注册设备。

LONG NET_DVR_Login_V30(
  char                       *sDVRIP,
  WORD                       wDVRPort,
  char                       *sUserName,
  char                       *sPassword,
  LPNET_DVR_DEVICEINFO_V30   lpDeviceInfo
);

Parameters

sDVRIP
[in] 设备IP地址
wServerPort
[in] 设备端口号
sUserName
[in] 登录的用户名
sPassword
[in] 用户密码
lpDeviceInfo
[out] 设备信息

Return Values

-1表示失败，其他值表示返回的用户ID值。该用户ID具有唯一性，后续对设备的操作都需要通过此ID实现。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_PASSWORD_ERROR | 1 | 用户名密码错误。注册时输入的用户名或者密码错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_COMMANDTIMEOUT | 14 | 设备命令执行超时。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_MAX_NUM | 46 | 个数达到最大。分配的注册连接数、预览连接数超过SDK支持的最大数。
NET_DVR_MAX_USERNUM | 52 | 登录设备的用户数达到最大。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

如DS-7116、DS-81xx、DS-90xx、DS-91xx等系列设备允许有32个注册用户名，且同时最多允许128个用户注册；如DS-80xx等设备允许有16个注册用户名，且同时最多允许128个用户注册。

SDK支持512个注册，返回UserID逐一递增，从0到511之后又返回0，注销以及NET_DVR_Cleanup均没有初始化为0。

客户端发生异常离线时，设备端保留用户ID的有效时间是5分钟。

See Also

NET_DVR_Logout_V30

Reference Interface

该接口扩展源于
NET_DVR_Login


NET_DVR_Logout

用户注销。

BOOL NET_DVR_Logout(
  LONG    lUserID
);

Parameters

lUserID
[in] 用户ID号，NET_DVR_Login或NET_DVR_Login_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_COMMANDTIMEOUT | 14 | 设备命令执行超时。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

建议使用此接口实现注销功能。

See Also

NET_DVR_Login

Reference Interface

扩展接口可见
NET_DVR_Logout_V30


NET_DVR_SetShowMode

设置播放显示模式。

BOOL NET_DVR_SetShowMode(
  DWORD        dwShowType,
  COLORREF     colorKey
);

Parameters

dwShowType
[in] 显示模式
enum{
  NORMALMODE = 0,
  OVERLAYMODE
}
colorKey
[in] 用户设置的透明色，在OVERLAY模式下需要设置，colorKey是一个32位的值0x00bbggrr，最高字节为0，后三个字节分别表示b、g、r的值

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

设置播放器显示模式，需在预览之前设置。NORMALMODE模式可以同时显示多窗口，但是对显卡有一定的要求；OVERLAYMODE模式只能同时显示一个窗口，但是对显卡基本没有要求。
透明色相当于一层透视膜，显示的画面只能穿过这种颜色，而其他的颜色将挡住显示的画面，用户应该在显示窗口中涂上这种颜色才能看到显示画面，一般应该使用一种不常用的颜色作为透明色，colorKey是一个32位的值0x00bbggrr，最高字节为0，后三个字节分别表示b、g、r的值。
播放器有两种显示模式：普通模式和OVERLAY方式，使用OVERLAY模式的优点是：大部分显卡都支持OVERLAY，在一些不支持BLT硬件缩放和颜色转换的显卡上(如SIS系列显卡)使用OVERLAY模式，可以大大降低CPU利用率并提高画面质量(相对于软件实现缩放、颜色转换)。缺点是：同时只能播放一路图象，不能实现大规模集中监控。
在一块显卡中同一时刻只能有一个OVERLAY表面处于活动状态，如果此时系统中已经有程序使用了OVERLAY，那么播放器就不能再创建OVERLAY表面，它将自动改成普通的模式，并不返回FALSE，一些常用的播放器，例如我们卡的预览都可能使用了OVERLAY表面，同样，如果我们的SDK中使用了OVERALY表面，那么其他的程序将不能再使用OVERLAY表面。


NET_DVR_MakeKeyFrame

主码流动态产生一个关键帧。

BOOL NET_DVR_MakeKeyFrame(
  LONG     lUserID,
  DWORD    lChannel
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

此接口用于重置I帧，根据设置的预览参数(NET_DVR_CLIENTINFO)为主码流或者子码流分别调用NET_DVR_MakeKeyFrame或者NET_DVR_MakeKeyFrameSub实现重置I帧。

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_MakeKeyFrameSub


NET_DVR_MakeKeyFrameSub

子码流动态产生一个关键帧。

BOOL NET_DVR_MakeKeyFrameSub(
  LONG     lUserID,
  DWORD    lChannel
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

此接口用于重置I帧，根据设置的预览参数(NET_DVR_CLIENTINFO)为主码流或者子码流分别调用NET_DVR_MakeKeyFrame或者NET_DVR_MakeKeyFrameSub实现重置I帧。

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_MakeKeyFrame


NET_DVR_RealPlay_V30

实时预览。

LONG NET_DVR_RealPlay_V30(
  LONG                     lUserID,
  LPNET_DVR_CLIENTINFO     lpClientInfo,
  fRealDataCallBack_V30    cbRealDataCallBack,
  void                     *pUser,
  BOOL                     bBlocked
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpClientInfo
[in] 预览参数
cbRealDataCallBack
[in] 码流数据回调函数
pUser
[in] 用户数据
bBlocked
[in] 请求码流过程是否阻塞：0－否；1－是

Callback Function

typedef void(CALLBACK *fRealDataCallBack_V30)(
  LONG      lRealHandle,
  DWORD     dwDataType,
  BYTE      *pBuffer,
  DWORD     dwBufSize,
  void      *pUser
);

Callback Function Parameters

lRealHandle
[out] 当前的预览句柄
dwDataType
[out] 数据类型
宏定义 | 宏定义值 | 含义
NET_DVR_SYSHEAD | 1 | 系统头数据
NET_DVR_STREAMDATA | 2 | 流数据（包括复合流或音视频分开的视频流数据）
NET_DVR_AUDIOSTREAMDATA | 3 | 音频数据
pBuffer
[out] 存放数据的缓冲区指针
dwBufSize
[out] 缓冲区大小
pUser
[out] 用户数据

Return Values

-1表示失败，其他值作为NET_DVR_StopRealPlay等函数的句柄参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_PASSWORD_ERROR | 1 | 用户名密码错误。注册时输入的用户名或者密码错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_OVER_MAXLINK | 5 | 连接到设备的用户个数超过最大。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_COMMANDTIMEOUT | 14 | 设备命令执行超时。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_LOADPLAYERSDKFAILED | 64 | 载入当前目录下Player Sdk出错。
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | 找不到Player Sdk中某个函数入口。
NET_DVR_LOADDSSDKFAILED | 66 | 载入当前目录下DSsdk出错。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_IPCHAN_NOTALIVE | 83 | 预览时外接IP通道不在线。
NET_DVR_RTSP_SDK_ERROR | 84 | 加载标准协议通讯库StreamTransClient失败。
NET_DVR_CONVERT_SDK_ERROR | 85 | 加载转封装库失败。

Remarks

该接口中可以设置当前预览操作是否阻塞（通过bBlocked参数设置）。若设为不阻塞，表示发起与设备的连接就认为连接成功，如果发生码流接收失败、播放失败等情况以预览异常的方式通知上层。在循环播放的时候可以减短停顿的时间，与NET_DVR_RealPlay处理一致。 若设为阻塞，表示直到播放操作完成才返回成功与否。
该接口中的回调函数可以置为空，这样该函数将不回调码流数据给用户，不过用户仍可以通过接口NET_DVR_SetRealDataCallBack或NET_DVR_SetStandardDataCallBack注册捕获码流数据的回调函数以捕获码流数据。

客户端异常离线时，设备端对取流连接的保持时间为10秒。

See Also

NET_DVR_StopRealPlay NET_DVR_GetRealPlayerIndex NET_DVR_ClientSetVideoEffect
NET_DVR_ClientGetVideoEffect NET_DVR_RigisterDrawFun NET_DVR_SetPlayerBufNumber
NET_DVR_ThrowBFrame NET_DVR_OpenSound NET_DVR_OpenSoundShare
NET_DVR_CloseSoundShare NET_DVR_Volume NET_DVR_SetRealDataCallBack
NET_DVR_SetStandardDataCallBack NET_DVR_SaveRealData NET_DVR_StopSaveRealData

Reference Interface

该接口扩展源于
NET_DVR_RealPlay


NET_DVR_StopRealPlay

停止预览。

BOOL NET_DVR_StopRealPlay(
  LONG    lRealHandle
);

Parameters

lRealHandle
[in] 预览句柄，NET_DVR_RealPlay或者NET_DVR_RealPlay_V30的返回值
推模式：预览句柄lStreamHandle，由NET_DVR_SetPreviewResponseCallBack注册的回调函数返回。

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_LOADDSSDKPROC_ERROR | 67 | 找不到DsSdk中某个函数入口。
NET_DVR_DSSDK_ERROR | 68 | 调用硬解码库DsSdk中某个函数失败。
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | 找不到Player Sdk中某个函数入口。

See Also

NET_DVR_RealPlay_V30

NET_DVR_SetPreviewResponseCallBack


NET_DVR_GetRealPlayerIndex

获取预览时用来解码和显示的播放器句柄。

int NET_DVR_GetRealPlayerIndex(
  LONG    lRealHandle
);

Parameters

lRealHandle
[in] 预览句柄，NET_DVR_RealPlay或者NET_DVR_RealPlay_V30的返回值

Return Values

－1表示失败，其他值表示播放句柄，获取错误码调用NET_DVR_GetLastError

Remarks

用户可以通过返回的句柄自行实现播放库SDK提供的其他功能，详见本公司提供的软解码库函数说明《播放器SDK编程指南》。
例如使用PlayM4_GetBMP(LONG nPort,……)、PlayM4_GetJPEG(LONG nPort,……)这两个接口时，即可实现将当前预览图像以BMP或JPEG格式抓图保存到内存中：

PlayM4_GetBMP(NET_DVR_GetRealPlayerIndex(),……)
PlayM4_GetJPEG(NET_DVR_GetRealPlayerIndex(),……)

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_ClientGetVideoEffect

获取预览视频显示参数。

BOOL NET_DVR_ClientGetVideoEffect(
  LONG      lRealHandle,
  DWORD     *pBrightValue,
  DWORD     *pContrastValue,
  DWORD     *pSaturationValue,
  DWORD     *pHueValue
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或者NET_DVR_RealPlay_V30的返回值
pBrightValue
[out] 亮度指针，取值范围[1,10]
pContrastValue
[out] 对比度指针，取值范围[1,10]
pSaturationValue
[out] 饱和度指针，取值范围[1,10]
pHueValue
[out] 色度指针，取值范围[1,10]

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_NETWORK_ERRORDATA | 11 | 传送的数据有误。发送给设备或者从设备接收到的数据错误，如远程参数配置时输入设备不支持的值。
NET_DVR_NOSUPPORT | 23 | 设备不支持。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_ClientSetVideoEffect

设置预览视频显示参数。

BOOL NET_DVR_ClientSetVideoEffect(
  LONG      lRealHandle,
  DWORD     dwBrightValue,
  DWORD     dwContrastValue,
  DWORD     dwSaturationValue,
  DWORD     dwHueValue
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或者NET_DVR_RealPlay_V30的返回值
dwBrightValue
[in] 亮度，取值范围[1,10]
dwContrastValue
[in] 对比度，取值范围[1,10]
dwSaturationValue
[in] 饱和度，取值范围[1,10]
dwHueValue
[in] 色度，取值范围[1,10]

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_NETWORK_ERRORDATA | 11 | 传送的数据有误。发送给设备或者从设备接收到的数据错误，如远程参数配置时输入设备不支持的值。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。

Remarks

SDK4.0及以后版本中，当设置的亮度、对比度等的值超过或低于限制值时接口不返回失败，将取最接近的上下限限制值作为实际的参数值。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_GetVideoEffect

获取预览视频显示参数。

BOOL NET_DVR_GetVideoEffect(
  LONG      lUserID,
  LONG      lChannel,
  DWORD     *pBrightValue,
  DWORD     *pContrastValue,
  DWORD     *pSaturationValue,
  DWORD     *pHueValue
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号，起始通道号为1
pBrightValue
[out] 亮度指针，取值范围[1,10]
pContrastValue
[out] 对比度指针，取值范围[1,10]
pSaturationValue
[out] 饱和度指针，取值范围[1,10]
pHueValue
[out] 色度指针，取值范围[1,10]

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_SetVideoEffect

设置预览视频显示参数。

BOOL NET_DVR_SetVideoEffect(
  LONG      lUserID,
  LONG      lChannel,
  DWORD     dwBrightValue,
  DWORD     dwContrastValue,
  DWORD     dwSaturationValue,
  DWORD     dwHueValue
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号，起始通道号为1
dwBrightValue
[in] 亮度，取值范围[1,10]
dwContrastValue
[in] 对比度，取值范围[1,10]
dwSaturationValue
[in] 饱和度，取值范围[1,10]
dwHueValue
[in] 色度，取值范围[1,10]

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_RigisterDrawFun

预览画面叠加字符和图像，Linux下无此接口。

BOOL NET_DVR_RigisterDrawFun(
  LONG        lRealHandle,
  fDrawFun    cbDrawFun,
  DWORD       dwUser
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
cbDrawFun
[in] 画图回调函数
dwUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *fDrawFun)(
  LONG      lRealHandle,
  HDC       hDc,
  DWORD     dwUser
);

Callback Function Parameters

lRealHandle
[out] 当前的预览句柄
hDc
[out] 画图DC
dwUser
[out] 用户数据

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

该接口主要完成注册回调函数，获得当前表面的device context。用户可以在这个DC上画图或写字，就好像在窗口的客户区DC上绘图，但这个DC不是窗口客户区的DC，而是播放器DirectDraw里的Off-Screen表面的DC。

如果调用接口NET_DVR_RealPlay_V30进行预览，参数bBlocked必须置1（TRUE），否则该接口调用会失败，获取错误号为12（调用次序错误）。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_SetPlayerBufNumber

设置播放库的帧缓冲区个数。

BOOL NET_DVR_SetPlayerBufNumber(
  LONG      lRealHandle,
  DWORD     dwBufNum
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
dwBufNum
[in] 所要设置的单视频播放时缓冲区最大的帧数，取值范围[1,50]，SDK默认的帧缓冲区大小为15

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

设置网络延时和播放流畅度可以通过此接口来进行调节。dwBufNum值越大，播放的流畅性越好，相对延时就大；dwBufNum 值越小，播放的延时就小，但是当网络不太顺畅的时候，会有丢帧现象，影响播放的流畅性。若当前为混合流时，为保证音视频同步效果建议设置缓冲帧数大于等于6帧。此函数必须紧跟在NET_DVR_RealPlay后使用，在图像播放之后设置则不起作用。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_ThrowBFrame

设置解码时丢弃B帧的个数。

BOOL NET_DVR_ThrowBFrame(
  LONG      lRealHandle,
  DWORD     dwNum
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
dwNum
[in] 丢弃B帧的个数：0－不丢；1－丢1个B帧；2－丢2个B帧

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

在多路播放时，丢B帧可以降低CPU的利用率。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_SetAudioMode

设置声音播放模式。

BOOL NET_DVR_SetAudioMode(
  DWORD    dwMode
);

Parameters

dwMode
[in] 声音播放模式：1－独占声卡，单路音频模式；2－共享声卡，多路音频模式

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

不调用该接口设置声音播放模式，默认为独占播放。


NET_DVR_OpenSound

独占声卡模式下开启声音。

BOOL NET_DVR_OpenSound(
  LONG    lRealHandle
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

如果当前是共享模式播放，调用该接口将返回失败。以独占方式只能打开一路通道播放，即依次打开多个通道时仅打开最后一路。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30 NET_DVR_CloseSound


NET_DVR_CloseSound

独占声卡模式下关闭声音。

BOOL NET_DVR_CloseSound(
);

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_AUDIO_MODE_ERROR | 42 | 声卡模式错误。当前打开声音播放模式与实际设置的模式不符出错。
NET_DVR_PLAYERFAILED | 51 | 调用播放库中某个函数失败。

See Also

NET_DVR_OpenSound


NET_DVR_OpenSoundShare

共享声卡模式下开启声音。

BOOL NET_DVR_OpenSoundShare(
  LONG    lRealHandle
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30 NET_DVR_CloseSoundShare


NET_DVR_CloseSoundShare

共享声卡模式下关闭声音。

BOOL NET_DVR_CloseSoundShare(
  LONG   lRealHandle
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_AUDIO_MODE_ERROR | 42 | 声卡模式错误。当前打开声音播放模式与实际设置的模式不符出错。
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | 找不到Player Sdk中某个函数入口。

Remarks

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30 NET_DVR_OpenSoundShare


NET_DVR_Volume

调节播放音量。

BOOL NET_DVR_Volume(
  LONG    lRealHandle,
  WORD    wVolume
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
wVolume
[in] 音量，取值范围[0,0xffff]

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_InitDDrawDevice

初始化系统中的显示设备。

BOOL NET_DVR_InitDDrawDevice(
);

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

当播放库PlayCtrl.dll的版本为6.1以上时该接口失效。

See Also

NET_DVR_ReleaseDDrawDevice


NET_DVR_ReleaseDDrawDevice

释放显示设备占用的资源。

BOOL NET_DVR_ReleaseDDrawDevice(
);

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

当播放库PlayCtrl.dll的版本为6.1以上时该接口失效。

See Also

NET_DVR_InitDDrawDevice


NET_DVR_GetDDrawDeviceTotalNums

获取系统的显示设备的数量。

LONG NET_DVR_GetDDrawDeviceTotalNums(
);

Return Values

-1表示失败，如果返回0，则表示系统中只有主显示设备。如果返回1，则表示系统中安装了多块显卡，但只有一块显卡与Windows桌面绑定。返回其他值，则表示系统中与桌面绑定的显卡数目。获取错误码调用NET_DVR_GetLastError

Remarks

当播放库PlayCtrl.dll的版本为6.1以上时该接口失效。


NET_DVR_SetDDrawDevice

设置播放窗口所使用的显卡。

BOOL NET_DVR_SetDDrawDevice(
  LONG     lPlayPort,
  DWORD    nDeviceNum
);

Parameters

lPlayPort
[in] 播放库的句柄，该值由NET_DVR_GetRealPlayerIndex或NET_DVR_GetPlayBackPlayerIndex函数获得
nDeviceNum
[in] 显示设备的序号，从0开始（0表示主屏）

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

当播放库PlayCtrl.dll的版本为6.1以上时该接口失效。

See Also

NET_DVR_GetRealPlayerIndex NET_DVR_GetPlayBackPlayerIndex


NET_DVR_SetRealDataCallBack

注册回调函数，捕获实时码流数据。

BOOL NET_DVR_SetRealDataCallBack(
  LONG                 lRealHandle,
  fRealDataCallBack    cbRealDataCallBack,
  DWORD                dwUser
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
推模式：预览句柄lStreamHandle，由NET_DVR_SetPreviewResponseCallBack注册的回调函数返回。
cbRealDataCallBack
[in] 码流数据回调函数
dwUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *fRealDataCallBack)(
  LONG      lRealHandle,
  DWORD     dwDataType,
  BYTE      *pBuffer,
  DWORD     dwBufSize,
  DWORD     dwUser
);

Callback Function Parameters

lRealHandle
[out] 当前的预览句柄
dwDataType
[out] 数据类型
宏定义 | 宏定义值 | 含义
NET_DVR_SYSHEAD | 1 | 系统头数据
NET_DVR_STREAMDATA | 2 | 流数据（包括复合流或音视频分开的视频流数据）
pBuffer
[out] 存放数据的缓冲区指针
dwBufSize
[out] 缓冲区大小
dwUser
[out] 用户数据

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

此函数包括开始和停止用户处理SDK捕获的数据，当回调函数cbRealDataCallBack设为非NULL值时，表示回调和处理数据；当设为NULL时表示停止回调和处理数据。回调的第一个包是40个字节的文件头，供后续解码使用，之后回调的是压缩的码流。回调数据最大为256K字节。

Example

由用户自行处理回调得到的码流数据，此处以软解显示为例，代码中带有PlayM4_的函数参见软解码库说明文档《播放器SDK编程指南》

#include <stdio.h>
#include <iostream>
#include <time.h>
#include "plaympeg4.h"
using namespace std;

LONG lPort; //全局的播放库port号

void CALLBACK g_RealDataCallBack_V30(LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer,DWORD dwBufSize,DWORD dwUser)
{
    HWND hWnd = GetConsoleWindow();

    switch (dwDataType)
    {
    case NET_DVR_SYSHEAD: //系统头

        if (!PlayM4_GetPort(&lPort))  //获取播放库未使用的通道号
        {
            break;
        }
        //m_iPort = lPort; //第一次回调的是系统头，将获取的播放库port号赋值给全局port，下次回调数据时即使用此port号播放
        if (dwBufSize > 0)
        {
            if (!PlayM4_SetStreamOpenMode(lPort, STREAME_REALTIME))  //设置实时流播放模式
            {
                break;
            }

            if (!PlayM4_OpenStream(lPort, pBuffer, dwBufSize, 1024*1024)) //打开流接口
            {
                break;
            }

            if (!PlayM4_Play(lPort, hWnd)) //播放开始
            {
                break;
            }
        }
    case NET_DVR_STREAMDATA:   //码流数据
        if (dwBufSize > 0 && lPort != -1)
        {
            if (!PlayM4_InputData(lPort, pBuffer, dwBufSize))
            {
                break;
            }
        }
    }
}

void CALLBACK g_ExceptionCallBack(DWORD dwType, LONG lUserID, LONG lHandle, void *pUser)
{
    char tempbuf[256] = {0};
    switch(dwType)
    {
    case EXCEPTION_RECONNECT:    //预览时重连
    printf("----------reconnect--------%d\n", time(NULL));
    break;
    default:
    break;
    }
}

void main() {

  //---------------------------------------
  // 初始化
  NET_DVR_Init();

  //---------------------------------------
  // 注册设备
  LONG lUserID;
  NET_DVR_DEVICEINFO_V30 struDeviceInfo;
  lUserID = NET_DVR_Login_V30("172.0.0.100", 8000, "admin", "12345", &struDeviceInfo);
  if (lUserID < 0)
  {
       printf("Login error, %d\n", NET_DVR_GetLastError());
       NET_DVR_Cleanup();
       return;
  }

  //---------------------------------------
  //设置异常消息回调函数
  NET_DVR_SetExceptionCallBack_V30(0, NULL,g_ExceptionCallBack, NULL);

  //---------------------------------------
  //启动预览并设置回调数据流
  LONG lRealPlayHandle;
  NET_DVR_CLIENTINFO ClientInfo = {0};
  ClientInfo.hPlayWnd = NULL;         //需要SDK解码时句柄设为有效值，仅取流不解码时可设为空
  ClientInfo.lChannel     = 1;       //预览通道号
  ClientInfo.lLinkMode    = 0;       //最高位(31)为0表示主码流，为1表示子码流0～30位表示连接方式：0－TCP方式；1－UDP方式；2－多播方式；3－RTP方式;
  ClientInfo.sMultiCastIP = NULL;   //多播地址，需要多播预览时配置

  BOOL bPreviewBlock = false;       //请求码流过程是否阻塞，0：否，1：是
  lRealPlayHandle = NET_DVR_RealPlay_V30(lUserID, &ClientInfo, NULL, NULL, 0);

  if (lRealPlayHandle < 0)
  {
      printf("NET_DVR_RealPlay_V30 error\n");
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  if (!NET_DVR_SetRealDataCallBack(lRealPlayHandle, g_RealDataCallBack_V30, 0))
  {
      printf("NET_DVR_SetRealDataCallBack error\n");
  }

  //---------------------------------------
  //关闭预览
  NET_DVR_StopRealPlay(lRealPlayHandle);
  //注销用户
  NET_DVR_Logout_V30(lUserID);
  NET_DVR_Cleanup();

  return;
}

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30

NET_DVR_SetPreviewResponseCallBack


NET_DVR_SetStandardDataCallBack

注册回调函数，捕获实时码流数据（标准码流）。

BOOL NET_DVR_SetStandardDataCallBack(
  LONG                 lRealHandle,
  fStdDataCallBack     cbStdDataCallBack,
  DWORD                dwUser
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
cbStdDataCallBack
[in] 标准码流回调函数
dwUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *fStdDataCallBack)(
  LONG      lRealHandle,
  DWORD     dwDataType,
  BYTE      *pBuffer,
  DWORD     dwBufSize,
  DWORD     dwUser
);

Callback Function Parameters

lRealHandle
[out] 当前的预览句柄
dwDataType
[out] 数据类型
宏定义 | 宏定义值 | 含义
NET_DVR_SYSHEAD | 1 | 系统头数据
NET_DVR_STD_VIDEODATA | 4 | 标准视频流数据
NET_DVR_STD_AUDIODATA | 5 | 标准音频流数据
NET_DVR_PRIVATE_DATA | 2或者112 | 私有数据，包括智能信息叠加等
pBuffer
[out] 存放数据的缓冲区指针
dwBufSize
[out] 缓冲区大小
dwUser
[out] 用户数据

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

此函数包括开始和停止用户处理SDK捕获的数据，当回调函数cbStdDataCallBack设为非NULL值时，表示回调和处理数据；当设为NULL时表示停止回调和处理数据。回调的第一个包是40个字节的文件头，供后续解码使用，之后回调的是标准码流（含12字节的RTP头）。
此函数目前仅支持对于支持RTSP协议取流的设备的标准码流回调。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_SaveRealData

捕获数据并存放到指定的文件中。

BOOL NET_DVR_SaveRealData(
  LONG    lRealHandle,
  char    *sFileName
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
sFileName
[in] 文件路径指针

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30 NET_DVR_StopSaveRealData


NET_DVR_StopSaveRealData

停止数据捕获。

BOOL NET_DVR_StopSaveRealData(
  LONG    lRealHandle
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30 NET_DVR_SaveRealData


NET_DVR_SetCapturePictureMode

设置抓图模式。

BOOL NET_DVR_SetCapturePictureMode(
  DWORD    dwCaptureMode
);

Parameters

dwCaptureMode
[in] 抓图模式
enum tagPDC_PARAM_KEY{
  BMP_MODE    = 0,
  JPEG_MODE   = 1
}CAPTURE_MODE
BMP_MODE
BMP模式
JPEG_MODE
JPEG模式

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError。

Remarks

调用该接口设置抓图模式后，NET_DVR_CapturePicture可抓取相应的图片。

See Also

NET_DVR_CapturePicture


NET_DVR_CapturePicture

预览时，单帧数据捕获并保存成图片。

BOOL NET_DVR_CapturePicture(
  LONG    lRealHandle,
  char    *sPicFileName
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
sPicFileName
[in] 保存图象的文件路径。路径长度和操作系统有关，sdk不做限制，windows默认路径长度小于等于256字节（包括文件名在内）。

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

Remarks

在调用该接口之前可以调用NET_DVR_SetCapturePictureMode设置抓图模式，默认为BMP模式。

如果抓图模式为BMP模式，抓取的是BMP图片，保存路径后缀应为.bmp；如果抓图模式为JPEG模式，抓取的是JPEG图片，保存路径后缀应为.jpg。

若设备的当前分辨率为2CIF，播放库做了相关处理，抓取的图像为4CIF。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30
NET_DVR_SetCapturePictureMode


NET_DVR_CaptureJPEGPicture

单帧数据捕获并保存成JPEG图。

BOOL NET_DVR_CaptureJPEGPicture(
  LONG                 lUserID,
  LONG                 lChannel,
  LPNET_DVR_JPEGPARA   lpJpegPara,
  char                 *sPicFileName
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpJpegPara
[in] JPEG图像参数
sPicFileName
[in] 保存JPEG图的文件路径

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_NETWORK_ERRORDATA | 11 | 传送的数据有误。发送给设备或者从设备接收到的数据错误，如远程参数配置时输入设备不支持的值。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_CREATEFILE_ERROR | 34 | 创建文件出错。本地录像、保存图片、获取配置文件和远程下载录像时创建文件失败。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_WRITEFILE_FAILED | 77 | 写文件失败。本地录像、远程下载录像、下载图片等操作时写文件失败。

Remarks

该接口用于设备的单帧数据捕获，并保存成JPEG图片。IPC设备支持当前视频分辨率的抓取。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_CaptureJPEGPicture_NEW

单帧数据捕获并保存成JPEG存放在指定的内存空间中。

BOOL NET_DVR_CaptureJPEGPicture_NEW(
  LONG                 lUserID,
  LONG                 lChannel,
  LPNET_DVR_JPEGPARA   lpJpegPara,
  char                 *sJpegPicBuffer,
  DWORD                dwPicSize,
  LPDWORD              lpSizeReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpJpegPara
[in] JPEG图像参数
sJpegPicBuffer
[in] 保存JPEG数据的缓冲区
dwPicSize
[in] 输入缓冲区大小
lpSizeReturned
[out] 返回图片数据的大小

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_NETWORK_ERRORDATA | 11 | 传送的数据有误。发送给设备或者从设备接收到的数据错误，如远程参数配置时输入设备不支持的值。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

Remarks

该接口用于设备的单帧数据捕获，并保存到内存中。IPC设备支持当前视频分辨率的抓取。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_ZEROCHANCFG | 获取零通道压缩参数 | 有效 | NET_DVR_ZEROCHANCFG | 1102
NET_DVR_GET_ZERO_PREVIEWCFG_V30 | 获取零通道本地预览参数 | 有效 | NET_DVR_PREVIEWCFG_V30 | 1104
NET_DVR_GET_ZERO_ZOOM | 获取零通道缩放参数 | 有效 | NET_DVR_ZERO_ZOOMCFG | 1107

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_ZEROCHANCFG | 设置零通道压缩参数 | 有效 | NET_DVR_ZEROCHANCFG | 1103
NET_DVR_SET_ZERO_PREVIEWCFG_V30 | 设置零通道本地预览参数 | 有效 | NET_DVR_PREVIEWCFG_V30 | 1105
NET_DVR_SET_ZERO_ZOOM | 设置零通道缩放参数 | 有效 | NET_DVR_ZERO_ZOOMCFG | 1106

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_ZeroStartPlay

开启零通道预览。

LONG NET_DVR_ZeroStartPlay(
  LONG                     lUserID,
  LPNET_DVR_CLIENTINFO     lpClientInfo,
  fRealDataCallBack_V30    cbRealDataCallBack,
  void                     *pUser,
  BOOL                     bBlocked
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpClientInfo
[in] 预览参数
cbRealDataCallBack
[in] 码流数据回调函数
pUser
[in] 用户数据
bBlocked
[in] 请求码流过程是否阻塞：0－否；1－是

Callback Function

typedef void(CALLBACK *fRealDataCallBack_V30)(
  LONG      lRealHandle,
  DWORD     dwDataType,
  BYTE      *pBuffer,
  DWORD     dwBufSize,
  void      *pUser
);

Callback Function Parameters

lRealHandle
[out] 当前的预览句柄
dwDataType
[out] 数据类型
宏定义 | 宏定义值 | 含义
NET_DVR_SYSHEAD | 1 | 系统头数据
NET_DVR_STREAMDATA | 2 | 流数据（包括复合流或音视频分开的视频流数据）
NET_DVR_AUDIOSTREAMDATA | 3 | 音频数据
pBuffer
[out] 存放数据的缓冲区指针
dwBufSize
[out] 缓冲区大小
pUser
[out] 用户数据

Return Values

-1表示失败，其他值作为NET_DVR_ZeroStopPlay等函数的句柄参数。获取错误码调用NET_DVR_GetLastError

Remarks

该接口中可以设置当前预览操作是否阻塞（通过bBlocked参数设置）。若设为不阻塞，表示发起与设备的连接就认为连接成功，如果发生码流接收失败、播放失败等情况以预览异常的方式通知上层。 若设为阻塞，表示直到播放操作完成才返回成功与否。
该接口中的回调函数可以置为空，此时该函数将不回调码流数据给用户，但用户仍可以通过接口NET_DVR_SetRealDataCallBack或NET_DVR_SetStandardDataCallBack注册捕获码流数据的回调函数以捕获码流数据。

See Also

NET_DVR_ZeroStopPlay
NET_DVR_GetRealPlayerIndex NET_DVR_RigisterDrawFun NET_DVR_SetPlayerBufNumber
NET_DVR_SetRealDataCallBack
NET_DVR_SaveRealData NET_DVR_StopSaveRealData


NET_DVR_ZeroStopPlay

停止预览。

BOOL NET_DVR_ZeroStopPlay(
  LONG    lPlayHandle
);

Parameters

lPlayHandle
[in] 预览句柄，NET_DVR_ZeroStartPlay的返回值

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_ZeroStartPlay


NET_DVR_ZeroMakeKeyFrame

零通道产生一个关键帧。

BOOL NET_DVR_ZeroMakeKeyFrame(
  LONG    lUserID,
  LONG    lZeroChan
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lZeroChan
[in] 零通道号，加上起始通道号（即从1开始）

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_ZeroTurnOver

零通道预览画面翻页。

BOOL NET_DVR_ZeroTurnOver(
  LONG     lUserID,
  DWORD    lChannel,
  BOOL     bNextPreview
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 零通道号，加上起始通道号（即从1开始）
bNextPreview
[in] 向下或向上翻页：TRUE-下一页；FALSE-上一页

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_FindFile_V30

根据文件类型、时间查找设备录像文件。

LONG NET_DVR_FindFile_V30(
  LONG                  lUserID,
  LPNET_DVR_FILECOND    pFindCond
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pFindCond
[in] 欲查找的文件信息结构

Return Values

-1表示失败，其他值作为NET_DVR_FindClose等函数的参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOENOUGHPRI | 2 | 权限不足。该注册用户没有权限执行当前对设备的操作，可以与远程用户参数配置做对比。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_CHANNEL_ERROR | 4 | 通道号错误。设备没有对应的通道号。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NODISK | 19 | 设备无硬盘。当设备无硬盘时，对设备的录像文件、硬盘配置等操作失败。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

该接口指定了要查找的录像文件的信息，调用成功后，就可以调用NET_DVR_FindNextFile接口来获取文件信息。

See Also

NET_DVR_FindNextFile_V30 NET_DVR_FindClose_V30

Reference Interface

该接口扩展源于
NET_DVR_FindFile


NET_DVR_FindNextFile_V30

逐个获取查找到的文件信息。

LONG NET_DVR_FindNextFile_V30(
  LONG                      lFindHandle,
  LPNET_DVR_FINDDATA_V30    lpFindData
);

Parameters

lFindHandle
[in] 文件查找句柄，NET_DVR_FindFile_V30的返回值
lpFindData
[out] 保存文件信息的指针

Return Values

-1表示失败，其他值表示当前的获取状态等信息，详见下表。获取错误码调用NET_DVR_GetLastError

宏定义 | 宏定义值 | 含义
NET_DVR_FILE_SUCCESS | 1000 | 获取文件信息成功
NET_DVR_FILE_NOFIND | 1001 | 未查找到文件
NET_DVR_ISFINDING | 1002 | 正在查找请等待
NET_DVR_NOMOREFILE | 1003 | 没有更多的文件，查找结束
NET_DVR_FILE_EXCEPTION | 1004 | 查找文件时异常

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

Remarks

在调用该接口获取查找文件之前，必须先调用NET_DVR_FindFile_V30得到当前的查找句柄。此接口用于获取一条已查找到的文件信息，若要获取全部的已查找到的文件信息，需要循环调用此接口。通过此接口可以同时获取到与当前录像文件相关的卡号信息和文件是否被锁定的信息。

每次可查询文件最大个数为4000。

See Also

NET_DVR_FindFile_V30

Reference Interface

该接口扩展源于
NET_DVR_FindNextFile


NET_DVR_FindClose_V30

关闭文件查找，释放资源。

BOOL NET_DVR_FindClose_V30(
  LONG   lFindHandle
);

Parameters

lFindHandle
[in] 文件查找句柄，NET_DVR_FindFile_V30或者NET_DVR_FindFileByEvent的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

See Also

NET_DVR_FindFile_V30

NET_DVR_FindFileByEvent


NET_DVR_FindFileByCard

根据文件类型、时间和卡号查找设备录像文件。

LONG NET_DVR_FindFileByCard(
  LONG               lUserID,
  LONG               lChannel,
  DWORD              dwFileType,
  int                nFindType,
  BYTE               *sCardNumber,
  LPNET_DVR_TIME     lpStartTime,
  LPNET_DVR_TIME     lpStopTime
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
dwFileType
[in] 要查找的文件类型：0xFF－全部；0－定时录像；1—移动侦测；2－接近报警；3－出钞报警；4－进钞报警；5—命令触发；6－手动录像；7－震动报警；8-环境报警；9-智能报警
nFindType
[in] 查找类型：0-表示不使用卡号
1-表示按卡号查询，sCardNumber为卡号信息
2-表示按交易类型查询，sCardNumber的第一个字节为下述值：
查询:0x31
取款:0x32
改密:0x33
转帐:0x34
存款:0x35
未知:0x36
3-表示按交易金额,sCardNumber中为交易金额
sCardNumber
[in] 卡号信息
lpStartTime
[in] 文件的开始时间
lpStopTime
[in] 文件的结束时间

Return Values

-1表示失败，其他值作为NET_DVR_FindClose等函数的参数。获取错误码调用NET_DVR_GetLastError

Remarks

该接口指定了要查找的录像文件的类型、查找时间范围和卡号，调用成功后，就可以调用NET_DVR_FindNextFile接口来获取文件信息。

See Also

NET_DVR_FindNextFile NET_DVR_FindClose


NET_DVR_FindFileByEvent

根据事件查找录像文件。

LONG NET_DVR_FindFileByEvent(
  LONG                            lUserID,
  LPNET_DVR_SEARCH_EVENT_PARAM    lpSearchEventParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpSearchEventParam
[in] 欲查找的文件信息结构

Return Values

-1表示失败，其他值作为NET_DVR_FindNextEvent等函数的参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOENOUGHPRI | 2 | 权限不足。该注册用户没有权限执行当前对设备的操作，可以与远程用户参数配置做对比。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_CHANNEL_ERROR | 4 | 通道号错误。设备没有对应的通道号。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NODISK | 19 | 设备无硬盘。当设备无硬盘时，对设备的录像文件、硬盘配置等操作失败。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

该接口指定了要查找的录像文件(按事件)的信息，调用成功后，就可以调用NET_DVR_FindNextEvent接口来获取文件信息。按事件查找出的录像文件针对开始时间和停止时间，因此只支持按时间回放NET_DVR_PlayBackByTime()。

See Also

NET_DVR_FindNextEvent NET_DVR_FindClose_V30


NET_DVR_FindNextEvent

逐个获取查找到的文件信息。

LONG NET_DVR_FindNextEvent(
  LONG                          lFindHandle,
  LPNET_DVR_SEARCH_EVENT_RET    lpSearchEventRet
);

Parameters

lFindHandle
[in] 文件查找句柄，NET_DVR_FindFileByEvent的返回值
lpSearchEventRet
[out] 保存文件信息的指针

Return Values

-1表示失败，其他值表示当前的获取状态等信息，详见下表。获取错误码调用NET_DVR_GetLastError

宏定义 | 宏定义值 | 含义
NET_DVR_FILE_SUCCESS | 1000 | 获取文件信息成功
NET_DVR_FILE_NOFIND | 1001 | 未查找到文件
NET_DVR_ISFINDING | 1002 | 正在查找请等待
NET_DVR_NOMOREFILE | 1003 | 没有更多的文件，查找结束
NET_DVR_FILE_EXCEPTION | 1004 | 查找文件时异常

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

Remarks

在调用该接口获取查找文件之前，必须先调用NET_DVR_FindFileByEvent得到当前的查找句柄。按事件查找出的录像文件针对开始时间和停止时间，因此只支持按时间回放NET_DVR_PlayBackByTime()。

See Also

NET_DVR_FindFileByEvent


NET_DVR_SmartSearch

开始智能搜索。

LONG NET_DVR_SmartSearch(
  LONG                            lUserID,
  LPNET_DVR_SMART_SEARCH_PARAM    lpSmartSearchParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpSmartSearchParam
[in] 智能搜索参数结构

Return Values

-1表示失败，其他值作为NET_DVR_SearchNextInfo、NET_DVR_StopSearch等函数的参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOENOUGHPRI | 2 | 权限不足。该注册用户没有权限执行当前对设备的操作，可以与远程用户参数配置做对比。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_CHANNEL_ERROR | 4 | 通道号错误。设备没有对应的通道号。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NODISK | 19 | 设备无硬盘。当设备无硬盘时，对设备的录像文件、硬盘配置等操作失败。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

该接口指定了要搜索条件信息，调用成功后，就可以调用NET_DVR_SearchNextInfo接口来获取搜索结果。搜索出的录像文件针对开始时间和停止时间，因此只支持按时间回放NET_DVR_PlayBackByTime()。

See Also

NET_DVR_SearchNextInfo NET_DVR_StopSearch
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_SearchNextInfo

获取区域内的下一个移动侦测信息。

LONG NET_DVR_SearchNextInfo(
  LONG                          lSearchHandle,
  LPNET_DVR_SMART_SEARCH_RET    lpSmartSearchRet
);

Parameters

lSearchHandle
[in] 搜索句柄，NET_DVR_SmartSearch的返回值
lpSmartSearchRet
[out] 保存搜索结果信息的指针

Return Values

-1表示失败，其他值表示当前的获取状态等信息，详见下表。获取错误码调用NET_DVR_GetLastError

宏定义 | 宏定义值 | 含义
NET_DVR_FILE_SUCCESS | 1000 | 获取文件信息成功
NET_DVR_FILE_NOFIND | 1001 | 未查找到文件
NET_DVR_ISFINDING | 1002 | 正在查找请等待
NET_DVR_NOMOREFILE | 1003 | 没有更多的文件，查找结束
NET_DVR_FILE_EXCEPTION | 1004 | 查找文件时异常

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

Remarks

在调用该接口前，必须先调用NET_DVR_SmartSearch得到当前的搜索句柄。按搜索出的录像文件针对开始时间和停止时间，因此只支持按时间回放NET_DVR_PlayBackByTime()。

See Also

NET_DVR_SmartSearch


NET_DVR_StopSearch

停止智能搜索。

BOOL NET_DVR_StopSearch(
  LONG   lSearchHandle
);

Parameters

lSearchHandle
[in] 搜索句柄，NET_DVR_SmartSearch的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

See Also

NET_DVR_SmartSearch


NET_DVR_PlayBackByName

按文件名回放录像文件。

LONG NET_DVR_PlayBackByName(
  LONG    lUserID,
  char    *sPlayBackFileName,
  HWND    hWnd
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
sPlayBackFileName
[in] 回放的文件名，长度不能超过100字节
hWnd
[in] 回放的窗口句柄，若置为空，SDK仍能收到码流数据，但不解码显示

Return Values

-1表示失败，其他值作为NET_DVR_StopPlayBack等函数的参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_PASSWORD_ERROR | 1 | 用户名密码错误。注册时输入的用户名或者密码错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_OVER_MAXLINK | 5 | 连接到设备的用户个数超过最大。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_COMMANDTIMEOUT | 14 | 设备命令执行超时。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSPECFILE | 33 | 回放时设备没有指定的文件。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_LOADPLAYERSDKFAILED | 64 | 载入当前目录下Player Sdk出错。
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | 找不到Player Sdk中某个函数入口。
NET_DVR_LOADDSSDKFAILED | 66 | 载入当前目录下DSsdk出错。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

该接口指定了当前要播放的录像文件，调用成功后，还必须调用NET_DVR_PlayBackControl接口的开始播放控制命令（NET_DVR_PLAYSTART）才能实现回放。
在调用该接口成功后，可以通过接口NET_DVR_SetPlayDataCallBack注册回调函数，捕获录像的码流数据并自行处理。
Linux下，HWND定义如下：

typedef struct __PLAYRECT
{
    int x;        //显示框左上角横坐标
    int y;        //显示框左上角纵坐标
    int uWidth;   //显示框宽度
    int uHeight;  //显示框高度
}PLAYRECT;
typedef PLAYRECT HWND;

See Also

NET_DVR_PlayBackControl NET_DVR_StopPlayBack NET_DVR_SetPlayDataCallBack
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_PlayBackByTime

按时间回放录像文件。

LONG NET_DVR_PlayBackByTime(
  LONG              lUserID,
  LONG              lChannel,
  LPNET_DVR_TIME    lpStartTime,
  LPNET_DVR_TIME    lpStopTime,
  HWND              hWnd
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpStartTime
[in] 文件的开始时间
lpStopTime
[in] 文件结束时间
hWnd
[in] 回放的窗口句柄，若置为空，SDK仍能收到码流数据，但不解码显示

Return Values

-1表示失败，其他值作为NET_DVR_StopPlayBack等函数的参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_PASSWORD_ERROR | 1 | 用户名密码错误。注册时输入的用户名或者密码错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_OVER_MAXLINK | 5 | 连接到设备的用户个数超过最大。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_COMMANDTIMEOUT | 14 | 设备命令执行超时。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSPECFILE | 33 | 回放时设备没有指定的文件。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_LOADPLAYERSDKFAILED | 64 | 载入当前目录下Player Sdk出错。
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | 找不到Player Sdk中某个函数入口。
NET_DVR_LOADDSSDKFAILED | 66 | 载入当前目录下DSsdk出错。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

该接口指定了当前要播放的录像文件，调用成功后，还必须调用NET_DVR_PlayBackControl接口的开始播放控制命令（NET_DVR_PLAYSTART）才能实现回放。
当回放的是按事件搜索出的录像文件时，由于每个文件都会有预录和延迟的部分，因此在设置本接口的开始和结束时间参数时可以适当提前开始时间和延长结束时间。 建议值：最多10分钟，最少5秒。
在调用该接口成功后，可以通过接口NET_DVR_SetPlayDataCallBack注册回调函数，捕获录像的码流数据并自行处理。
Linux下，HWND定义如下：

typedef struct __PLAYRECT
{
    int x;        //显示框左上角横坐标
    int y;        //显示框左上角纵坐标
    int uWidth;   //显示框宽度
    int uHeight;  //显示框高度
}PLAYRECT;
typedef PLAYRECT HWND;

See Also

NET_DVR_PlayBackControl NET_DVR_StopPlayBack NET_DVR_SetPlayDataCallBack
NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见

NET_DVR_PlayBackByTime_V40


NET_DVR_PlayBackByTime_V40

按流ID和时间回放录像文件。

LONG NET_DVR_PlayBackByTime_V40(
  LONG                  lUserID,
  LPNET_DVR_VOD_PARA    pVodPara
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pVodPara
[in] 查找条件

Return Values

-1表示失败，其他值作为NET_DVR_StopPlayBack等函数的参数。获取错误码调用NET_DVR_GetLastError。

Remarks

该接口指定了当前要播放的录像文件，调用成功后，还必须调用NET_DVR_PlayBackControl_V40接口的开始播放控制命令（NET_DVR_PLAYSTART）才能实现回放。
当回放的是按事件搜索出的录像文件时，由于每个文件都会有预录和延迟的部分，因此在设置本接口的开始和结束时间参数时可以适当提前开始时间和延长结束时间。 建议值：最多10分钟，最少5秒。
在调用该接口成功后，可以通过接口NET_DVR_SetPlayDataCallBack注册回调函数，捕获录像的码流数据并自行处理。

See Also

NET_DVR_PlayBackControl_V40 NET_DVR_StopPlayBack NET_DVR_SetPlayDataCallBack
NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于

NET_DVR_PlayBackByTime


NET_DVR_PlayBackControl_V40

控制录像回放的状态。

BOOL NET_DVR_PlayBackControl_V40(
  LONG     lPlayHandle,
  DWORD    dwControlCode,
  char     *lpInBuffer
  DWORD    dwInLen,
  char     *lpOutBuffer,
  DWORD    *lpOutLen
);

Parameters

lPlayHandle
[in] 播放句柄，NET_DVR_PlayBackByName或NET_DVR_PlayBackByTime的返回值
dwControlCode
[in] 控制录像回放状态命令，见下表
宏定义 | 宏定义值 | 含义
NET_DVR_PLAYSTART | 1 | 开始播放
NET_DVR_PLAYPAUSE | 3 | 暂停播放
NET_DVR_PLAYRESTART | 4 | 恢复播放
NET_DVR_PLAYFAST | 5 | 快放
NET_DVR_PLAYSLOW | 6 | 慢放
NET_DVR_PLAYNORMAL | 7 | 正常速度播放（在暂停后调用将恢复暂停前的速度播放）
NET_DVR_PLAYFRAME | 8 | 单帧放（恢复正常回放使用NET_DVR_PLAYNORMAL命令）
NET_DVR_PLAYSTARTAUDIO | 9 | 打开声音
NET_DVR_PLAYSTOPAUDIO | 10 | 关闭声音
NET_DVR_PLAYAUDIOVOLUME | 11 | 调节音量，取值范围[0,0xffff]
NET_DVR_PLAYSETPOS | 12 | 改变文件回放的进度
NET_DVR_PLAYGETPOS | 13 | 获取按文件或者按时间回放的进度
NET_DVR_PLAYGETTIME | 14 | 获取当前已经播放的时间(按文件回放的时候有效)
NET_DVR_PLAYGETFRAME | 15 | 获取当前已经播放的帧数(按文件回放的时候有效)
NET_DVR_GETTOTALFRAMES | 16 | 获取当前播放文件总的帧数(按文件回放的时候有效)
NET_DVR_GETTOTALTIME | 17 | 获取当前播放文件总的时间(按文件回放的时候有效)
NET_DVR_THROWBFRAME | 20 | 丢B帧
NET_DVR_SETSPEED | 24 | 设置码流速度
NET_DVR_KEEPALIVE | 25 | 保持与设备的心跳(如果回调阻塞，建议2秒发送一次)
NET_DVR_PLAYSETTIME | 26 | 按绝对时间定位
NET_DVR_PLAYGETTOTALLEN | 27 | 获取按时间回放对应时间段内的所有文件的总长度
lpInBuffer
[in] 指向输入参数的指针
dwInLen
[in] 输入参数的长度
lpOutBuffer
[out] 指向输出参数的指针
lpOutLen
[out] 输出参数的长度

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_PASSWORD_ERROR | 1 | 用户名密码错误。注册时输入的用户名或者密码错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_OVER_MAXLINK | 5 | 连接到设备的用户个数超过最大。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_COMMANDTIMEOUT | 14 | 设备命令执行超时。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_NOSPECFILE | 33 | 回放时设备没有指定的文件。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_LOADPLAYERSDKFAILED | 64 | 载入当前目录下Player Sdk出错。
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | 找不到Player Sdk中某个函数入口。
NET_DVR_LOADDSSDKFAILED | 66 | 载入当前目录下DSsdk出错。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

该接口中的第三个参数是否需要输入数值与控制命令有关，详见下表所示。特别指出，当控制命令是开始播放（即NET_DVR_PLAYSTART）时，第三个参数的值表示播放当前文件的偏移量，若该值为0表示从文件的起始位置播放，若该值不为0则表示断点续传的文件位置（Byte）。
该接口中的第五个参数表示当前控制命令操作所获取到的相应的参数，控制命令中的NET_DVR_PLAYGETPOS、NET_DVR_PLAYGETTIME、NET_DVR_PLAYGETFRAME、NET_DVR_GETTOTALFRAMES、NET_DVR_GETTOTALTIME、NET_DVR_PLAYSETTIME和NET_DVR_PLAYGETTOTALLEN都能通过该参数得到对应的值，详见下表所示。其中当命令值为NET_DVR_PLAYGETPOS时，获取文件回放或者下载进度时，0-100表示正常的进度值，大于100的值表示回放或者下载异常；获取按时间回放或下载进度时，除DS91xxHF-ST设备可以获取0至100区间的进度值和200（异常）外，其他设备只能获取的进度值是0、100（结束）、200（异常）。
状态命令宏定义 | 状态命令说明 | lpInBuf | lpOutBuf
NET_DVR_PLAYSTART | 开始播放 | 一个4字节整型的偏移量 | 无
NET_DVR_PLAYSETPOS | 改变回放的进度 | 一个4字节整型的进度值（0-100） | 无
NET_DVR_PLAYGETPOS | 获取回放的进度 | 无 | 一个4字节整型的进度值（0-100）
NET_DVR_PLAYGETTIME | 获取当前已播放的时间（按文件回放有效） | 无 | 一个4字节整型的时间值
NET_DVR_PLAYGETFRAME | 获取当前已播放的帧数（按文件回放有效） | 无 | 一个4字节整型的帧数值
NET_DVR_GETTOTALFRAMES | 获取当前播放文件总的帧数（按文件回放有效） | 无 | 一个4字节整型的帧数值
NET_DVR_GETTOTALTIME | 获取当前播放文件总的时间（按文件回放有效） | 无 | 一个4字节整型的时间值
NET_DVR_THROWBFRAME | 丢B帧 | 一个4字节整型的B帧个数 | 无
NET_DVR_SETSPEED | 设置码流速度 | 一个4字节整型的速度值 | 无
NET_DVR_PLAYSETTIME | 按绝对时间定位回放 | NET_DVR_TIME | 无
NET_DVR_PLAYGETTOTALLEN | 获取按时间回放对应时间段内的所有文件的总长度 | 无 | 一个8字节整型的长度值（单位字节）

See Also

NET_DVR_PlayBackByName NET_DVR_PlayBackByTime

Reference Interface

该接口扩展源于

NET_DVR_PlayBackControl


NET_DVR_StopPlayBack

停止回放录像文件。

BOOL NET_DVR_StopPlayBack(
  LONG    lPlayHandle
);

Parameters

lPlayHandle
[in] 回放句柄，NET_DVR_PlayBackByName或NET_DVR_PlayBackByTime的返回值
推模式：回放句柄lStreamHandle，由NET_DVR_SetPlaybackResponseCallBack注册的回调函数返回。

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_LOADDSSDKPROC_ERROR | 67 | 找不到DsSdk中某个函数入口。
NET_DVR_DSSDK_ERROR | 68 | 调用硬解码库DsSdk中某个函数失败。
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | 找不到Player Sdk中某个函数入口。

See Also

NET_DVR_PlayBackByName NET_DVR_PlayBackByTime

NET_DVR_SetPlaybackResponseCallBack


NET_DVR_PlayBackSaveData

捕获回放的录像数据，并保存成文件。

BOOL NET_DVR_PlayBackSaveData(
  LONG    lPlayHandle,
  char    *sFileName
);

Parameters

lPlayHandle
[in] 播放句柄，NET_DVR_PlayBackByName或NET_DVR_PlayBackByTime的返回值
sFileName
[in] 保存数据的文件路径

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_CREATEFILE_ERROR | 34 | 创建文件出错。本地录像、保存图片、获取配置文件和远程下载录像时创建文件失败。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。

See Also

NET_DVR_PlayBackByName NET_DVR_PlayBackByTime


NET_DVR_StopPlayBackSave

停止保存录象数据。

BOOL NET_DVR_StopPlayBackSave(
  LONG     lPlayHandle
);

Parameters

lPlayHandle
[in] 播放句柄，NET_DVR_PlayBackByName或NET_DVR_PlayBackByTime的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。

See Also

NET_DVR_PlayBackByName NET_DVR_PlayBackByTime


NET_DVR_SetPlayDataCallBack

注册回调函数，捕获录像数据。

BOOL NET_DVR_SetPlayDataCallBack(
  LONG                 lPlayHandle,
  fPlayDataCallBack    cbPlayDataCallBack,
  DWORD                dwUser
);

Parameters

lPlayHandle
[in] 播放句柄，NET_DVR_PlayBackByName或NET_DVR_PlayBackByTime的返回值
推模式：回放句柄lStreamHandle，由NET_DVR_SetPlaybackResponseCallBack注册的回调函数返回。
fPlayDataCallBack
[in] 录像数据回调函数
dwUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *fPlayDataCallBack)(
  LONG      lPlayHandle,
  DWORD     dwDataType,
  BYTE      *pBuffer,
  DWORD     dwBufSize,
  DWORD     dwUser
);

Callback Function Parameters

lPlayHandle
[out] 当前的录像播放句柄
dwDataType
[out] 数据类型
宏定义 | 宏定义值 | 含义
NET_DVR_SYSHEAD | 1 | 系统头数据
NET_DVR_STREAMDATA | 2 | 流数据（包括复合流或音视频分开的视频流数据）
pBuffer
[out] 存放数据的缓冲区指针
dwBufSize
[out] 缓冲区大小
dwUser
[out] 用户数据

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。

Remarks

此函数包括开始和停止用户处理SDK捕获的数据，当回调函数cbPlayDataCallBack设为非NULL值时，表示回调和处理数据；当设为NULL时表示停止回调和处理数据。回调的第一个包是40个字节的文件头，供后续解码使用，之后回调的是压缩的码流。

See Also

NET_DVR_PlayBackByName NET_DVR_PlayBackByTime

NET_DVR_SetPlaybackResponseCallBack


NET_DVR_GetPlayBackOsdTime

获取录像回放时显示的OSD时间。

BOOL NET_DVR_GetPlayBackOsdTime(
  LONG              lPlayHandle,
  LPNET_DVR_TIME    lpOsdTime
);

Parameters

lPlayHandle
[in] 播放句柄，NET_DVR_PlayBackByName或NET_DVR_PlayBackByTime的返回值
lpOsdTime
[out] 获取的OSD时间的指针

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | 找不到Player Sdk中某个函数入口。

See Also

NET_DVR_PlayBackByName NET_DVR_PlayBackByTime


NET_DVR_PlayBackCaptureFile

录像回放时抓图，并保存在文件中。

BOOL NET_DVR_PlayBackCaptureFile(
  LONG    lPlayHandle,
  char    *sFileName
);

Parameters

lPlayHandle
[in] 播放句柄，NET_DVR_PlayBackByName或NET_DVR_PlayBackByTime的返回值
sFileName
[in] 保存图片数据的文件路径

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | 找不到Player Sdk中某个函数入口。

Remarks

回放时抓下来的图片时间要比抓图时间延后，这是因为预览画面上的OSD时间是解码完成的显示时间，而解码缓冲区会有将近1M左右的数据还没有解出来，要抓取的图片数据是网络缓冲里面的。目前解码库没有直接从解码缓冲区中取出数据的接口。

See Also

NET_DVR_PlayBackByName NET_DVR_PlayBackByTime


NET_DVR_RefreshPlay

刷新显示回放窗口。

BOOL NET_DVR_RefreshPlay(
  LONG    lPlayHandle
);

Parameters

lPlayHandle
[in] 回放句柄，NET_DVR_PlayBackByName或NET_DVR_PlayBackByTime的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | 找不到Player Sdk中某个函数入口。

Remarks

当用户暂停或者单帧回放时，如果刷新了窗口，则窗口中的图像因为刷新而消失，此时调用这个接口可以重新显示最后一帧画面。此接口只在暂停和单帧播放时有效。

See Also

NET_DVR_PlayBackByName NET_DVR_PlayBackByTime


NET_DVR_GetPlayBackPlayerIndex

获取回放时用来解码显示的播放库句柄。

int NET_DVR_GetPlayBackPlayerIndex(
  LONG    lPlayHandle
);

Parameters

lPlayHandle
[in] 回放句柄，NET_DVR_PlayBackByName或NET_DVR_PlayBackByTime的返回值

Return Values

-1表示失败，其他值表示播放句柄。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

Remarks

用户可以通过返回的句柄自行实现播放库SDK提供的其他功能，详见本公司提供的软解码库函数说明《播放器SDK编程指南》。
例如使用PlayM4_GetBMP(LONG nPort,……)、PlayM4_GetJPEG(LONG nPort,……)这两个接口时，即可实现将当前预览图像以BMP或JPEG格式抓图保存到内存中：

PlayM4_GetBMP(NET_DVR_GetRealPlayerIndex(),……)
PlayM4_GetJPEG(NET_DVR_GetRealPlayerIndex(),……)

See Also

NET_DVR_PlayBackByName NET_DVR_PlayBackByTime


NET_DVR_RigisterPlayBackDrawFun

回放画面叠加字符和图像，Linux下无此接口。

BOOL NET_DVR_RigisterPlayBackDrawFun(
  LONG        lPlayHandle,
  fDrawFun    cbDrawFun,
  DWORD       dwUser
);

Parameters

lPlayHandle
[in] NET_DVR_PlayBackByName或者NET_DVR_PlayBackByTime的返回值
cbDrawFun
[in] 画图回调函数
dwUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *fDrawFun)(
  LONG      lPlayHandle,
  HDC       hDc,
  DWORD     dwUser
);

Callback Function Parameters

lRealHandle
[out] 当前的回放句柄
hDc
[out] 画图DC
dwUser
[out] 用户数据

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

Remarks

该接口主要完成注册回调函数，获得当前表面的device context。用户可以在这个DC上画图或写字，就好像在窗口的客户区DC上绘图，但这个DC不是窗口客户区的DC，而是播放器DirectDraw里的Off-Screen表面的DC。

See Also

NET_DVR_PlayBackByName NET_DVR_PlayBackByTime


NET_DVR_GetFileByName

按文件名下载录像文件。

LONG NET_DVR_GetFileByName(
  LONG    lUserID,
  char    *sDVRFileName,
  char    *sSavedFileName
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
sDVRFileName
[in] 要下载的录像文件名，文件名长度需小于100字节
sSavedFileName
[in] 下载后保存到PC机的文件路径，需为绝对路径

Return Values

-1表示失败，其他值作为NET_DVR_StopGetFile等函数的参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_PASSWORD_ERROR | 1 | 用户名密码错误。注册时输入的用户名或者密码错误。
NET_DVR_NOENOUGHPRI | 2 | 权限不足。该注册用户没有权限执行当前对设备的操作，可以与远程用户参数配置做对比。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_CHANNEL_ERROR | 4 | 通道号错误。设备没有对应的通道号。
NET_DVR_OVER_MAXLINK | 5 | 连接到设备的用户个数超过最大。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_COMMANDTIMEOUT | 14 | 设备命令执行超时。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_NOSPECFILE | 33 | 回放时设备没有指定的文件。
NET_DVR_CREATEFILE_ERROR | 34 | 创建文件出错。本地录像、保存图片、获取配置文件和远程下载录像时创建文件失败。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

在使用该接口下载录像文件前，可以先调用录像文件查找的接口获取文件名。该接口指定了当前要下载的录像文件，调用成功后，还需要调用NET_DVR_PlayBackControl接口的开始播放控制命令（NET_DVR_PLAYSTART）才能实现下载。

See Also

NET_DVR_PlayBackControl NET_DVR_StopGetFile
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetFileByTime

按时间下载录像文件。

LONG NET_DVR_GetFileByTime(
  LONG              lUserID,
  LONG              lChannel,
  LPNET_DVR_TIME    lpStartTime,
  LPNET_DVR_TIME    lpStopTime,
  char              *sSavedFileName
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpStartTime
[in] 开始时间
lpStopTime
[in] 结束时间
sSavedFileName
[in] 下载后保存到PC机的文件路径，需为绝对路径

Return Values

-1表示失败，其他值作为NET_DVR_StopGetFile等函数的参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_PASSWORD_ERROR | 1 | 用户名密码错误。注册时输入的用户名或者密码错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_OVER_MAXLINK | 5 | 连接到设备的用户个数超过最大。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_COMMANDTIMEOUT | 14 | 设备命令执行超时。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_CREATEFILE_ERROR | 34 | 创建文件出错。本地录像、保存图片、获取配置文件和远程下载录像时创建文件失败。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

该接口指定了当前要下载的录像文件，调用成功后，还需要调用NET_DVR_PlayBackControl接口的开始播放控制命令（NET_DVR_PLAYSTART）才能实现下载。

See Also

NET_DVR_PlayBackControl NET_DVR_StopGetFile
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_PlayBackControl

控制录像下载的状态。

BOOL NET_DVR_PlayBackControl(
  LONG     lPlayHandle,
  DWORD    dwControlCode,
  DWORD    dwInValue,
  DWORD    *lpOutValue
);

Parameters

lPlayHandle
[in] 播放句柄，NET_DVR_GetFileByName或NET_DVR_GetFileByTime的返回值
dwControlCode
[in] 控制录像下载状态命令，见下表
宏定义 | 宏定义值 | 含义
NET_DVR_PLAYSTART | 1 | 开始下载
NET_DVR_PLAYPAUSE | 3 | 暂停下载
NET_DVR_PLAYRESTART | 4 | 恢复下载
NET_DVR_PLAYSETPOS | 12 | 改变文件下载的进度（按文件下载时有效）
NET_DVR_PLAYGETPOS | 13 | 获取文件下载的进度（按文件下载时有效）
NET_DVR_GETTOTALFRAMES | 16 | 获取当前下载文件总的帧数(按文件下载时有效)
NET_DVR_GETTOTALTIME | 17 | 获取当前下载文件总的时间(按文件下载时有效)
NET_DVR_SET_DOWNLOAD_SPEED | 28 | 设置下载速度，流控范围：0~32Mbps
dwInValue
[in] 设置的参数，如设置文件下载的进度(命令值NET_DVR_PLAYSETPOS)时，此参数表示进度值；如开始下载(命令值NET_DVR_PLAYSTART)时，此参数表示断点续传的文件位置（Byte）
lpOutValue
[out] 获取的参数，如获取当前下载文件总的时间（命令值NET_DVR_GETTOTALTIME ），此参数就是得到的总时间

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

该接口中的第三个参数是否需要输入数值与控制命令有关，NET_DVR_PLAYSETPOS命令下此参数表示下载的进度；当控制命令是开始下载（即NET_DVR_PLAYSTART）时，第三个参数的值表示下载当前文件的偏移量，若该值为0表示从文件的起始位置下载，若该值不为0则表示断点续传的文件位置（Byte）(目前只有DS-90xx和DS-81xx硬盘录像机支持断点续传功能)。
该接口中的第四个参数表示当前控制命令操作所获取到的相应的参数，控制命令中的NET_DVR_PLAYGETPOS、NET_DVR_GETTOTALFRAMES和NET_DVR_GETTOTALTIME都能通过该参数得到对应的值。
进度值的取值范围为0-100，获取文件下载进度时，0-100表示正常的进度值，大于100的值表示回放或者下载异常。

See Also

NET_DVR_GetFileByName NET_DVR_GetFileByTime


NET_DVR_StopGetFile

停止下载录像文件。

BOOL NET_DVR_StopGetFile(
  LONG    lFileHandle
);

Parameters

lFileHandle
[in] 下载句柄，NET_DVR_GetFileByName或NET_DVR_GetFileByTime的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。

See Also

NET_DVR_GetFileByName NET_DVR_GetFileByTime


NET_DVR_GetDownloadPos

获取当前下载录像文件的进度。

int NET_DVR_GetDownloadPos(
  LONG    lFileHandle
);

Parameters

lFileHandle
[in] 下载句柄，NET_DVR_GetFileByName或NET_DVR_GetFileByTime的返回值

Return Values

-1表示失败；0～100表示下载的进度；100表示下载结束；正常范围0-100，如返回200表明出现网络异常。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

Remarks

该接口用于获取按文件名下载录像文件时的下载进度。

See Also

NET_DVR_GetFileByName NET_DVR_GetFileByTime


NET_DVR_LockFileByName

按文件名锁定录像文件。

BOOL NET_DVR_LockFileByName(
  LONG    lUserID,
  char    *sLockFileName
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
sLockFileName
[in] 要锁定的录像文件名，文件名长度需小于100字节

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

在使用该接口锁定录像文件前，可以先调用录像文件查找的接口获取文件名。当文件被锁定后，将不会被覆盖。

See Also

NET_DVR_UnlockFileByName NET_DVR_Login NET_DVR_Login_V30


NET_DVR_UnlockFileByName

按文件名解锁录像文件。

BOOL NET_DVR_UnlockFileByName(
  LONG    lUserID,
  char    *sUnlockFileName
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
sUnlockFileName
[in] 要解锁的录像文件名

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

在使用该接口锁定录像文件前，可以先调用录像文件查找的接口获取文件名。

See Also

NET_DVR_LockFileByName NET_DVR_Login NET_DVR_Login_V30


NET_DVR_LockFileByTime

对某一时间段录像文件进行加锁。

BOOL NET_DVR_LockFileByTime(
  LONG                     lUserID,
  LPNET_DVR_TIME_LOCK      lpLockPara,
  LPNET_DVR_LOCK_RETURN    lpLockReturn
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpLockPara
[in] 录像加锁参数
lpLockReturn
[out] 录像加锁结果

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_UnLockFileByTime


NET_DVR_UnLockFileByTime

对某一时间段录像文件进行解锁。

BOOL NET_DVR_UnLockFileByTime(
  LONG                     lUserID,
  LPNET_DVR_TIME_LOCK      lpLockPara,
  LPNET_DVR_LOCK_RETURN    lpLockReturn
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpLockPara
[in] 录像解锁参数
lpLockReturn
[out] 录像解锁结果

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_LockFileByTime


NET_DVR_LockStreamFileByTime

按流ID对某一时间段录像文件进行加锁。

BOOL NET_DVR_LockStreamFileByTime(
  LONG                            lUserID,
  LPNET_DVR_STREAM_TIME_LOCK      lpLockPara,
  LPNET_DVR_LOCK_RETURN           lpLockReturn
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpLockPara
[in] 录像加锁参数
lpLockReturn
[out] 录像加锁结果

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_UnlockStreamFileByTime


NET_DVR_UnlockStreamFileByTime

按流id对某一时间段录像文件进行解锁。

BOOL NET_DVR_UnlockStreamFileByTime(
  LONG                            lUserID,
  LPNET_DVR_STREAM_TIME_LOCK      lpLockPara,
  LPNET_DVR_LOCK_RETURN           lpLockReturn
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpLockPara
[in] 录像解锁参数
lpLockReturn
[out] 录像解锁结果

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_LockStreamFileByTime


NET_DVR_GetDiskList

获取设备磁盘列表。

BOOL NET_DVR_GetDiskList(
  LONG                          lUserID,
  LPNET_DVR_DISKABILITY_LIST    lpDiskList
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpDiskList
[out] 设备可用备份磁盘信息结构

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

该接口用于获取设备可用备份文件的磁盘资源信息，在备份文件功能接口的输入参数中需要用到。

See Also

NET_DVR_BackupByName NET_DVR_BackupByTime


NET_DVR_BackupByName

按文件名备份录像文件。

LONG NET_DVR_BackupByName(
  LONG                          lUserID,
  LPNET_DVR_BACKUP_NAME_PARAM   lpBackupByName
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpBackupByName
[in] 备份文件参数结构

Return Values

-1表示失败，其他值作为NET_DVR_GetBackupProgress，NET_DVR_StopBackup等函数的参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

Remarks

在调用该接口开始文件备份前必须调用接口NET_DVR_GetDiskList获取当前设备可用的磁盘列表信息，返回的磁盘描述字段用于指定此接口中lpBackupByName参数中的备份磁盘描述字段。

See Also

NET_DVR_GetBackupProgress NET_DVR_StopBackup NET_DVR_GetDiskList


NET_DVR_BackupByTime

按时间段备份录像文件。

LONG NET_DVR_BackupByTime(
  LONG                          lUserID,
  LPNET_DVR_BACKUP_TIME_PARAM   lpBackupByTime
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpBackupByName
[in] 备份文件参数结构

Return Values

-1表示失败，其他值作为NET_DVR_GetBackupProgress，NET_DVR_StopBackup等函数的参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_NETWORK_ERRORDATA | 11 | 传送的数据有误。发送给设备或者从设备接收到的数据错误，如远程参数配置时输入设备不支持的值。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

Remarks

在调用该接口开始文件备份前必须调用接口NET_DVR_GetDiskList获取当前设备可用的磁盘列表信息，返回的磁盘描述字段用于指定此接口中lpBackupByTime参数中的备份磁盘描述字段。

See Also

NET_DVR_GetBackupProgress NET_DVR_StopBackup NET_DVR_GetDiskList


NET_DVR_GetBackupProgress

获取备份的进度。

BOOL NET_DVR_GetBackupProgress(
  LONG    lHandle,
  DWORD   *pState
);

Parameters

lHandle
[in] NET_DVR_BackupByName或NET_DVR_BackupByTime的返回值
pState
[out] 当前备份的进度，进度值的取值范围为(0,100)，其他值的定义见下表
宏定义 | 宏定义值 | 含义
BACKUP_SUCCESS | 100 | 备份完成
BACKUP_CHANGE_DEVICE | 101 | 备份设备已满，更换设备继续备份
BACKUP_SEARCH_DEVICE | 300 | 正在搜索备份设备
BACKUP_SEARCH_FILE | 301 | 正在搜索录像文件或者图片
BACKUP_EXCEPTION | 400 | 备份异常
BACKUP_FAIL | 500 | 备份失败
BACKUP_TIME_SEG_NO_FILE | 501 | 时间段内无录像文件或者图片
BACKUP_NO_RESOURCE | 502 | 申请不到资源
BACKUP_DEVICE_LOW_SPACE | 503 | 备份设备容量不足
BACKUP_DISK_FINALIZED | 504 | 刻录光盘封盘
BACKUP_DISK_EXCEPTION | 505 | 刻录光盘异常
BACKUP_DEVICE_NOT_EXIST | 506 | 备份设备不存在
BACKUP_OTNER_BACKUP_WORK | 507 | 有其他备份操作在进行
BACKUP_USER_NO_RIGHT | 508 | 用户没有操作权限
BACKUP_OPERATE_FAIL | 509 | 操作失败

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

在进度为100或者备份出错时, 需调用NET_DVR_StopBackup()停止备份。

See Also

NET_DVR_BackupByName NET_DVR_BackupByTime NET_DVR_StopBackup


NET_DVR_StopBackup

停止备份。

BOOL NET_DVR_StopBackup(
  LONG   lHandle
);

Parameters

lHandle
[in] NET_DVR_BackupByName或NET_DVR_BackupByTime的返回值，或者NET_DVR_BackupPicture的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_BackupByName NET_DVR_BackupByTime
NET_DVR_BackupPicture


NET_DVR_InsertRecordLabel

添加录像标签。

BOOL NET_DVR_InsertRecordLabel(
  LONG                       lPlayHandle,
  NET_DVR_RECORD_LABEL       *lpRecordLabel,
  NET_DVR_LABEL_IDENTIFY     *lpLableIdentify
);

Parameters

lPlayHandle
[in] NET_DVR_PlayBackByName或NET_DVR_PlayBackByTime的返回值
lpRecordLabel
[in] 录像标签
lpLableIdentify
[out] 添加录像标签后的标识

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

录像标签功能可帮助用户在回放录像时记录下某一时间点的相关人员或现场等信息，以便后续随时根据标签信息，进行搜索和定位录像资料。

See Also

NET_DVR_PlayBackByName NET_DVR_PlayBackByTime


NET_DVR_ModifyRecordLabel

修改录像标签。

BOOL NET_DVR_ModifyRecordLabel(
  LONG                    lUserID,
  NET_DVR_MOD_LABEL_PARAM *lpModLabelParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpModLabelParam
[in] 标签修改结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks


NET_DVR_DelRecordLabel

删除录像标签。

BOOL NET_DVR_DelRecordLabel(
  LONG                    lUserID,
  NET_DVR_DEL_LABEL_PARAM *lpDelLabelParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpDelLabelParam
[in] 要删除的标签信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_FindRecordLabel

搜索录像标签。

LONG NET_DVR_FindRecordLabel(
  LONG                    lUserID,
  LPNET_DVR_FIND_LABEL    lpFindLabel
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpFindLabel
[in] 欲查找的标签信息结构

Return Values

-1表示失败，其他值作为NET_DVR_FindNextLabel等函数的参数。获取错误码调用NET_DVR_GetLastError

Remarks

回放时，可根据查找到的标签（时间）信息通过NET_DVR_PlayBackControl_V40实现定位操作。
每次最多搜索4000条标签条。

See Also

NET_DVR_FindNextLabel NET_DVR_StopFindLabel


NET_DVR_FindNextLabel

逐个获取搜索到的录像标签。

LONG NET_DVR_FindNextLabel(
  LONG                        lFindHandle,
  LPNET_DVR_FINDLABEL_DATA    lpFindData
);

Parameters

lFindHandle
[in] NET_DVR_FindRecordLabel的返回值
lpFindData
[in] 标签信息

Return Values

-1表示失败，其他值表示当前的获取状态等信息。获取错误码调用NET_DVR_GetLastError

宏定义 | 宏定义值 | 含义
NET_DVR_FILE_SUCCESS | 1000 | 获取标签信息成功
NET_DVR_FILE_NOFIND | 1001 | 未查找到标签
NET_DVR_ISFINDING | 1002 | 正在查找，请等待
NET_DVR_NOMOREFILE | 1003 | 没有更多的标签，查找结束
NET_DVR_FILE_EXCEPTION | 1004 | 查找标签时异常

Remarks

在调用该接口获取查找录像标签之前，必须先调用NET_DVR_FindRecordLabel得到当前的查找句柄。此接口用于获取一条已查找到的标签信息，若要获取全部的已查找到的标签信息，需要循环调用此接口。

See Also

NET_DVR_FindRecordLabel


NET_DVR_StopFindLabel

停止搜索录像标签。

BOOL NET_DVR_StopFindLabel(
  LONG                    lFindHandle,
);

Parameters

lFindHandle
[in] NET_DVR_FindRecordLabel的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_FindRecordLabel


NET_DVR_FindPicture

根据类型和时间查找图片。

LONG NET_DVR_FindPicture(
  LONG                             lUserID,
  LPNET_DVR_FIND_PICTURE_PARAM     pFindParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pFindParam
[in] 图片查找条件信息

Return Values

-1表示失败，其他值作为NET_DVR_CloseFindPicture等函数的参数。获取错误码调用NET_DVR_GetLastError.

Remarks

该接口指定了要查找的图片的类型和查找时间范围，调用成功后，就可以调用NET_DVR_FindNextPicture接口来获取图片信息。

注：该接口查找的是设备本地的图片，可通过NET_DVR_SetDVRConfig配置设备的抓图计划（NET_DVR_SCHED_CAPTURECFG）。

See Also

NET_DVR_FindNextPicture NET_DVR_CloseFindPicture


NET_DVR_FindNextPicture

逐个获取查找到的图片信息。

LONG NET_DVR_FindNextPicture(
  LONG                      lFindHandle,
  LPNET_DVR_FIND_PICTURE    lpFindData
);

Parameters

lFindHandle
[in] 图片查找句柄，NET_DVR_FindPicture的返回值
lpFindData
[out] 保存图片信息的指针

Return Values

-1表示失败，其他值表示当前的获取状态等信息。获取错误码调用NET_DVR_GetLastError。

Remarks

在调用该接口获取查找图片之前，必须先调用NET_DVR_FindPicture得到当前的查找句柄。此接口用于获取一条已查找到的图片信息，若要获取全部的已查找到的图片信息，需要循环调用此接口。

See Also

NET_DVR_FindPicture


NET_DVR_CloseFindPicture

关闭图片查找，释放资源。

BOOL NET_DVR_CloseFindPicture(
  LONG   lFindHandle
);

Parameters

lFindHandle
[in] 图片查找句柄，NET_DVR_FindPicture的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_FindPicture


NET_DVR_GetPicture_V30

图片回放。

BOOL NET_DVR_GetPicture_V30(
  LONG    lUserID,
  char    *sDVRFileName,
  char    *sSavedFileBuf,
  DWORD   dwBufLen,
  DWORD   *lpdwRetLen
);

Parameters

lUserID
[in] 用户ID号，NET_DVR_Login或NET_DVR_Login_V30的返回值
sDVRFileName
[in] 图片名称
sSavedFileBuf
[in] 保存图片的缓冲区
dwBufLen
[in] 缓冲区大小
lpdwRetLen
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_BackupPicture

备份图片。

LONG NET_DVR_BackupPicture(
  LONG                             lUserID,
  NET_DVR_BACKUP_PICTURE_PARAM     *lpBackupPicture
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpBackupPicture
[in] 图片备份参数

Return Values

-1表示失败，其他值作为NET_DVR_CloseFindPicture等函数的参数。获取错误码调用NET_DVR_GetLastError.

See Also

NET_DVR_GetBackupProgress NET_DVR_StopBackup


NET_DVR_StartDVRRecord

远程手动启动设备录像。

BOOL NET_DVR_StartDVRRecord(
  LONG     lUserID,
  LONG     lChannel,
  LONG     lRecordType
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号，0x00ff表示所有模拟通道，0xff00表示所有数字通道，0xffff表示所有模拟和数字通道
lRecordType
[in] 录像类型：0- 手动，1- 报警，2- 回传，3- 信号，4- 移动，5- 遮挡

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

录像类型设置需要设备支持，不支持默认为手动录像。

当某通道已经开启定时录像的前提下首次开启手动录像，此次操作未生效，仍保持定时录像状态，且查询设备状态（见接口NET_DVR_GetDVRWorkState_V30和NET_DVR_GetDVRWorkState；结构体NET_DVR_WORKSTATE_V30和NET_DVR_WORKSTATE）中的录像状态仍为录像；此时关闭手动录像，停止了定时录像，且查询录像状态为不录像；第二次开启手动录像，此时手动录像开始；停止手动录像后，重启设备，定时录像重新打开。

See Also

NET_DVR_StopDVRRecord NET_DVR_Login NET_DVR_Login_V30


NET_DVR_StopDVRRecord

远程手动停止设备录像。

BOOL NET_DVR_StopDVRRecord(
  LONG     lUserID,
  LONG     lChannel
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号，0x00ff表示所有模拟通道，0xff00表示所有数字通道，0xffff表示所有模拟和数字通道

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_StartDVRRecord NET_DVR_Login NET_DVR_Login_V30


NET_DVR_StartManualRecord

按流id远程开启设备手动录像。

BOOL NET_DVR_StartManualRecord(
  LONG                             lUserID,
  LPNET_DVR_MANUAL_RECORD_PARA     pRecordPara
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pRecordPara
[in] 手动录像参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_StopManualRecord NET_DVR_Login NET_DVR_Login_V30


NET_DVR_StopManualRecord

按流id远程停止设备手动录像。

BOOL NET_DVR_StopManualRecord(
  LONG                             lUserID,
  LPNET_DVR_STREAM_INFO            pIDInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pIDInfo
[in] 流ID信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_StartManualRecord NET_DVR_Login NET_DVR_Login_V30


NET_DVR_SetDVRMessageCallBack_V30

注册回调函数，接收设备报警消息等。

BOOL NET_DVR_SetDVRMessageCallBack_V30(
  MSGCallBack    fMessageCallBack,
  void           *pUser
);

Parameters

fMessageCallBack
[in] 回调函数
pUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *MSGCallBack)(
  LONG               lCommand,
  NET_DVR_ALARMER    *pAlarmer,
  char               *pAlarmInfo,
  DWORD              dwBufLen,
  void               *pUser
);

Callback Function Parameters

lCommand
[out] 上传的消息类型，见下表
宏定义 | 宏定义值 | 含义
COMM_ALARM | 0x1100 | V3.0以下版本支持的设备的报警信息上传
COMM_ALARM_RULE | 0x1102 | 行为分析信息上传
COMM_ALARM_PDC | 0x1103 | 人流量统计报警上传
COMM_ALARM_ALARMHOST | 0x1105 | 网络报警主机报警上传
COMM_ALARM_FACE | 0x1106 | 人脸检测识别报警信息
COMM_RULE_INFO_UPLOAD | 0x1107 | 事件数据信息上传
COMM_ALARM_AID | 0x1110 | 交通事件报警信息
COMM_ALARM_TPS | 0x1111 | 交通参数统计报警信息
COMM_UPLOAD_FACESNAP_RESULT | 0x1112 | 人脸识别结果上传
COMM_SENSOR_VALUE_UPLOAD | 0x1120 | 模拟量数据实时上传
COMM_SENSOR_ALARM | 0x1121 | 模拟量报警上传
COMM_SWITCH_ALARM | 0x1122 | 开关量报警上传
COMM_ALARMHOST_EXCEPTION | 0x1123 | 报警主机故障上传
COMM_ALARMHOST_SAFETYCABINSTATE | 0x1125 | 防护舱状态信息上传
COMM_ALARMHOST_ALARMOUTSTATUS | 0x1126 | 报警输出口或警号状态信息上传
COMM_TRADEINFO | 0x1500 | ATM DVR交易信息上传
COMM_UPLOAD_PLATE_RESULT | 0x2800 | 交通抓拍结果上传
COMM_IPC_AUXALARM_RESULT | 0x2820 | PIR报警、无线报警、呼救报警上传
COMM_SNAP_MATCH_ALARM | 0x2902 | 黑名单比对结果上传
COMM_ALARM_V30 | 0x4000 | V3.0以上版本支持的设备的报警信息上传
COMM_IPCCFG | 0x4001 | 混合型DVR在IPC接入配置改变时的报警信息上传
COMM_IPCCFG_V31 | 0x4002 | 混合型DVR在IPC接入配置改变时的报警信息上传（扩展）
COMM_ALARM_DEVICE | 0x4004 | 设备报警信息上传，由于通道值大于256而扩展
COMM_SCREEN_ALARM | 0x5000 | 大屏控制器报警信息上传
pAlarmer
[out] 报警设备信息
pAlarmInfo
[out] 报警信息
dwBufLen
[out] 报警信息缓存大小
pUser
[out] 用户数据

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

Remarks

该接口中回调函数的第一个参数（lCommand）和第三个参数（pAlarmInfo）是密切关联的，其关系见下表：
消息类型（lCommand） | 上传内容 | pAlarmInfo对应的结构体
COMM_ALARM | V3.0以下版本支持的设备的报警信息 | NET_DVR_ALARMINFO
COMM_ALARM_RULE | 行为分析信息 | NET_VCA_RULE_ALARM
COMM_ALARM_PDC | 人流量统计报警信息 | NET_DVR_PDC_ALRAM_INFO
COMM_ALARM_ALARMHOST | 报警板报警信息 | NET_DVR_ALARMHOST_ALARMINFO
COMM_ALARM_FACE | 人脸检测识别报警信息 | NET_DVR_FACEDETECT_ALARM
COMM_RULE_INFO_UPLOAD | 事件数据信息 | NET_DVR_RULE_INFO_ALARM
COMM_ALARM_AID | 交通事件报警信息 | NET_DVR_AID_ALARM
COMM_ALARM_TPS | 交通参数统计报警信息 | NET_DVR_TPS_ALARM
COMM_UPLOAD_FACESNAP_RESULT | 人脸识别结果信息 | NET_VCA_FACESNAP_RESULT
COMM_SENSOR_VALUE_UPLOAD | 模拟量数据实时信息 | NET_DVR_SENSOR_ALARM
COMM_SENSOR_ALARM | 模拟量报警信息 | NET_DVR_SENSOR_ALARM
COMM_SWITCH_ALARM | 开关量报警信息 | NET_DVR_SWITCH_ALARM
COMM_ALARMHOST_EXCEPTION | 故障报警信息 | NET_DVR_ALARMHOST_EXCEPTION_ALARM
COMM_ALARMHOST_SAFETYCABINSTATE | 防护舱状态信息 | NET_DVR_ALARMHOST_SAFETYCABINSTATE
COMM_ALARMHOST_ALARMOUTSTATUS | 报警输出口或警号状态信息 | NET_DVR_ALARMHOST_ALARMOUTSTATUS
COMM_TRADEINFO | ATM DVR交易信息 | NET_DVR_TRADEINFO
COMM_UPLOAD_PLATE_RESULT | 交通抓拍结果信息 | NET_DVR_PLATE_RESULT
COMM_IPC_AUXALARM_RESULT | PIR报警、无线报警、呼救报警信息 | NET_IPC_AUXALARM_RESULT
COMM_SNAP_MATCH_ALARM | 黑名单比对结果信息 | NET_VCA_FACESNAP_MATCH_ALARM
COMM_ALARM_V30 | V3.0以上版本支持的设备的报警信息 | NET_DVR_ALARMINFO_V30
COMM_IPCCFG | 混合型DVR在IPC接入配置改变时的报警信息 | NET_DVR_IPALARMINFO
COMM_IPCCFG_V31 | 混合型DVR在IPC接入配置改变时的报警信息（扩展） | NET_DVR_IPALARMINFO_V31
COMM_ALARM_DEVICE | 设备报警信息，由于通道值大于256而扩展 | NET_DVR_ALARMINFO_DEV
COMM_SCREEN_ALARM | 大屏控制器上传的报警信息 | NET_DVR_SCREENALARMCFG

Example

以布防方式设置回教接收报警信息为例

void CALLBACK MessageCallback(LONG lCommand, NET_DVR_ALARMER *pAlarmer, char *pAlarmInfo, DWORD dwBufLen, void* pUser)
{
  int i;
  NET_DVR_ALARMINFO struAlarmInfo;
  memcpy(&struAlarmInfo, pAlarmInfo, sizeof(NET_DVR_ALARMINFO));
  switch(lCommand)
  {
  case COMM_ALARM:
      {
          switch (struAlarmInfo.dwAlarmType)
          {
          case 3: //移动侦测报警
               for (i=0; i<16; i++)   //#define MAX_CHANNUM   16  //最大通道数
               {
                   if (struAlarmInfo.dwChannel[i] == 1)
                   {
                       printf("发生移动侦测报警的通道号 %d\n", i+1);
                   }
               }
          break;
          default:
          break;
          }
       }
  break;
  default:
  break;
  }
}

void main() {

  //---------------------------------------
  // 初始化
  NET_DVR_Init();
  //设置连接时间与重连时间
  NET_DVR_SetConnectTime(2000, 1);
  NET_DVR_SetReconnect(10000, true);

  //---------------------------------------
  // 注册设备
  LONG lUserID;
  NET_DVR_DEVICEINFO_V30 struDeviceInfo;
  lUserID = NET_DVR_Login_V30("172.0.0.100", 8000, "admin", "12345", &struDeviceInfo);
  if (lUserID < 0)
  {
       printf("Login error, %d\n", NET_DVR_GetLastError());
       NET_DVR_Cleanup();
       return;
  }

  //设置报警回调函数
  NET_DVR_SetDVRMessageCallBack_V30(MessageCallback, NULL);

  //启用布防
  LONG lHandle;
  lHandle = NET_DVR_SetupAlarmChan_V30(lUserID);
  if (lHandle < 0)
  {
      printf("NET_DVR_SetupAlarmChan_V30 error, %d\n", NET_DVR_GetLastError());
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  Sleep(5000);
  //撤销布防上传通道
  if (!NET_DVR_CloseAlarmChan_V30(lHandle))
  {
      printf("NET_DVR_CloseAlarmChan_V30 error, %d\n", NET_DVR_GetLastError());
      NET_DVR_Logout(lUserID);
      NET_DVR_Cleanup();
      return;
  }

  //注销用户
  NET_DVR_Logout(lUserID);
  //释放SDK资源
  NET_DVR_Cleanup();
  return;
}

See Also

NET_DVR_SetupAlarmChan_V30

NET_DVR_SetupAlarmChan

NET_DVR_StartListen

Reference Interface

其他设置报警回调函数的接口可见

NET_DVR_SetDVRMessCallBack

NET_DVR_SetDVRMessCallBack_EX

NET_DVR_SetDVRMessCallBack_NEW

NET_DVR_SetDVRMessageCallBack


NET_DVR_SetupAlarmChan_V41

建立报警上传通道，获取报警等信息。

LONG NET_DVR_SetupAlarmChan_V41(
  LONG                         lUserID,
  LPNET_DVR_SETUPALARM_PARAM   lpSetupParam
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lpSetupParam
[in] 报警布防参数

Return Values

-1表示失败，其他值作为NET_DVR_CloseAlarmChan_V30函数的句柄参数。

Remarks

使用该接口支持上传V3.0以上版本支持的设备的报警结构。启动布防前，需要调用注册回调函数的接口NET_DVR_SetDVRMessageCallBack_V30才能获取到上传的报警等信息。

See Also

NET_DVR_CloseAlarmChan_V30
NET_DVR_Login NET_DVR_Login_V30
NET_DVR_SetDVRMessageCallBack_V30

Reference Interface

该接口扩展源于

NET_DVR_SetupAlarmChan_V30


NET_DVR_SetupAlarmChan_V30

建立报警上传通道，获取报警等信息。

LONG NET_DVR_SetupAlarmChan_V30(
  LONG   lUserID
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值，推模式：设备注册ID，由NET_DVR_SetRegisterCallBack注册的REGCallBack回调获取。

Return Values

-1表示失败，其他值作为NET_DVR_CloseAlarmChan_V30函数的句柄参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_DVRNORESOURCE | 28 | 设备资源不足。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_MAX_NUM | 46 | 个数达到最大。分配的注册连接数、预览连接数超过SDK支持的最大数。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

使用该接口支持上传V3.0以上版本支持的设备的报警结构。启动布防前，需要调用注册回调函数的接口（仅需按需求调用NET_DVR_SetDVRMessageCallBack_V30、NET_DVR_SetDVRMessCallBack、NET_DVR_SetDVRMessCallBack_EX、NET_DVR_SetDVRMessCallBack_NEW和NET_DVR_SetDVRMessageCallBack其中的一个）才能获取到上传的报警等信息。

See Also

NET_DVR_CloseAlarmChan_V30
NET_DVR_Login NET_DVR_Login_V30
NET_DVR_SetDVRMessageCallBack_V30
NET_DVR_SetDVRMessCallBack
NET_DVR_SetDVRMessCallBack_EX
NET_DVR_SetDVRMessCallBack_NEW
NET_DVR_SetDVRMessageCallBack

推模式： NET_DVR_SetRegisterCallBack

Reference Interface

该接口扩展源于

NET_DVR_SetupAlarmChan


NET_DVR_CloseAlarmChan_V30

撤销报警上传通道。

BOOL NET_DVR_CloseAlarmChan_V30(
  LONG   lAlarmHandle
);

Parameters

lAlarmHandle
[in] NET_DVR_SetupAlarmChan_V30或者NET_DVR_SetupAlarmChan_V41的返回值
推模式：布防句柄lAlarmHandle，由NET_DVR_SetAlarmSetupResponseCallBack注册的回调函数返回。

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

See Also

NET_DVR_SetupAlarmChan_V30 NET_DVR_SetupAlarmChan_V41

NET_DVR_SetAlarmSetupResponseCallBack

Reference Interface

该接口扩展源于

NET_DVR_CloseAlarmChan


NET_DVR_StartListen_V30

启动监听，接收设备主动上传的报警等信息（支持多线程）。

LONG NET_DVR_StartListen_V30(
  char           *sLocalIP,
  WORD           wLocalPort,
  MSGCallBack    DataCallback,
  void           *pUserData
);

Parameters

sLocalIP
[in] PC机本地IP地址，可以置为NULL
wLocalPort
[in] PC本地监听端口号。由用户设置，必须和设备端设置的一致
DataCallback
[in] 回调函数，不能为NULL
pUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *MSGCallBack)(
  LONG               lCommand,
  NET_DVR_ALARMER    *pAlarmer,
  char               *pAlarmInfo,
  DWORD              dwBufLen,
  void               *pUser
);

Callback Function Parameters

lCommand
[out] 上传的消息类型，见下表
宏定义 | 宏定义值 | 含义
COMM_ALARM | 0x1100 | V3.0以下版本支持的设备的报警信息上传
COMM_ALARM_RULE | 0x1102 | 行为分析信息上传
COMM_ALARM_PDC | 0x1103 | 人流量统计报警上传
COMM_TRADEINFO | 0x1500 | ATM DVR交易信息上传
COMM_ITC_STATUS_DETECT_RESULT | 0x2810 | 实时状态检测结果上传
COMM_IPC_AUXALARM_RESULT | 0x2820 | PIR报警、无线报警、呼救报警上传
COMM_ALARM_V30 | 0x4000 | V3.0以上版本支持的设备的报警信息上传
COMM_IPCCFG | 0x4001 | 混合型DVR在IPC接入配置改变时的报警信息上传
COMM_IPCCFG_V31 | 0x4002 | 混合型DVR在IPC接入配置改变时的报警信息上传（扩展）
COMM_ALARM_DEVICE | 0x4004 | 设备报警信息上传，由于通道值大于256而扩展
pAlarmer
[out] 报警设备信息
pAlarmInfo
[out] 报警信息
dwBufLen
[out] 报警信息缓存大小
pUser
[out] 用户数据

Return Values

-1表示失败，其他值作为NET_DVR_StopListen_V30函数的句柄参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETLISTEN_ERROR | 75 | 监听失败。

Remarks

SDK最大能支持512路监听。

要使PC能够收到设备主动发过来的报警等信息，必须将设备的网络配置中的“远程管理主机地址”或者“远程报警主机地址”设置成PC机的IP地址（与接口中的sLocalIP参数一致），“远程管理主机端口号”或者“远程报警主机端口号”设置成PC机的监听端口号（与接口中的wLocalPort参数一致）。

该接口中的回调函数优先级高于其他回调函数，即设置了该接口中的回调函数，其他回调函数将接收不到报警信息。

该接口中回调函数的第一个参数（lCommand）和第三个参数（pAlarmInfo）是密切关联的，其关系见下表：

消息类型（lCommand） | 上传内容 | pAlarmInfo对应的结构体
COMM_ALARM | V3.0以下版本支持的设备的报警信息 | NET_DVR_ALARMINFO
COMM_ALARM_RULE | 行为分析信息 | NET_VCA_RULE_ALARM
COMM_ALARM_PDC | 人流量统计报警上传 | NET_DVR_PDC_ALRAM_INFO
COMM_TRADEINFO | ATM DVR交易信息 | NET_DVR_TRADEINFO
COMM_ITC_STATUS_DETECT_RESULT | 实时状态检测结果 | NET_ITC_STATUS_DETECT_RESULT
COMM_IPC_AUXALARM_RESULT | PIR报警、无线报警、呼救报警信息 | NET_IPC_AUXALARM_RESULT
COMM_ALARM_V30 | V3.0以上版本支持的设备的报警信息 | NET_DVR_ALARMINFO_V30
COMM_IPCCFG | 混合型DVR在IPC接入配置改变时的报警信息 | NET_DVR_IPALARMINFO
COMM_IPCCFG_V31 | 混合型DVR在IPC接入配置改变时的报警信息（扩展） | NET_DVR_IPALARMINFO_V31
COMM_ALARM_DEVICE | 设备报警信息，由于通道值大于256而扩展 | NET_DVR_ALARMINFO_DEV

See Also

NET_DVR_StopListen_V30

Reference Interface

该接口扩展源于

NET_DVR_StartListen


NET_DVR_StopListen_V30

停止监听（支持多线程）。

BOOL NET_DVR_StopListen_V30(
  LONG    lListenHandle
);

Parameters

lListenHandle
[in] 监听句柄，NET_DVR_StartListen_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

See Also

NET_DVR_StartListen_V30
推模式：NET_DVR_StartListen_V30

Reference Interface

该接口扩展源于
NET_DVR_StopListen


NET_DVR_ClickKey

远程控制面板上的按键。

BOOL NET_DVR_ClickKey(
  LONG    lUserID,
  LONG    lKeyIndex
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lKeyIndex
[in] 面板上的按键，见下表：
宏定义 | 宏定义值 | 含义
KEY_CODE_1 | 1 | 按钮1
KEY_CODE_2 | 2 | 按钮2
KEY_CODE_3 | 3 | 按钮3
KEY_CODE_4 | 4 | 按钮4
KEY_CODE_5 | 5 | 按钮5
KEY_CODE_6 | 6 | 按钮6
KEY_CODE_7 | 7 | 按钮7
KEY_CODE_8 | 8 | 按钮8
KEY_CODE_9 | 9 | 按钮9
KEY_CODE_0 | 10 | 按钮0
KEY_CODE_POWER | 11 | POWER
KEY_CODE_MENU | 12 | MENU
KEY_CODE_ENTER | 13 | ENTER
KEY_CODE_CANCEL | 14 | ESCS
KEY_CODE_UP/KEY_PTZ_UP_START | 15 | "上"或者"云台上开始"或者云台上开始
KEY_CODE_DOWN/KEY_PTZ_DOWN_START | 16 | "下"或者"云台下开始"或者云台下开始
KEY_CODE_LEFT/KEY_PTZ_LEFT_START | 17 | "左"或者"云台左开始"或者云台左开始
KEY_CODE_RIGHT/KEY_PTZ_RIGHT_START | 18 | "右"或者"云台右开始"或者云台右开始
KEY_CODE_EDIT/KEY_PTZ_AP1_START | 19 | "EDIT"或者"光圈+开始"
KEY_CODE_ADD | 20 | 增加
KEY_CODE_MINUS | 21 | 减小
KEY_CODE_PLAY | 22 | "PLAY"
KEY_CODE_REC | 23 | "REC"
KEY_CODE_PAN/KEY_PTZ_AP2_START | 24 | "PAN"或者"光圈-开始"
KEY_CODE_M/KEY_PTZ_FOCUS2_START | 25 | "多画面"或者"聚焦-开始"
KEY_CODE_A/KEY_PTZ_FOCUS1_START | 26 | "输入法"或者"聚焦+开始"
KEY_CODE_F1 | 27 | "对讲"
KEY_CODE_F2 | 28 | "系统信息"
KEY_PTZ_UP_STOP | 32 | "云台上结束"
KEY_PTZ_DOWN_STOP | 33 | "云台下结束"
KEY_PTZ_LEFT_STOP | 34 | "云台左结束"
KEY_PTZ_RIGHT_STOP | 35 | "云台右结束"
KEY_PTZ_AP1_STOP | 36 | "光圈+结束"
KEY_PTZ_AP2_STOP | 37 | "光圈-结束"
KEY_PTZ_FOCUS1_STOP | 38 | "聚焦+结束"
KEY_PTZ_FOCUS2_STOP | 39 | "聚焦-结束"
KEY_PTZ_B1_START | 40 | "变倍+开始"
KEY_PTZ_B1_STOP | 41 | "变倍+结束"
KEY_PTZ_B2_START | 42 | "变倍-开始"
KEY_PTZ_B2_STOP | 43 | "变倍-结束"
KEY_CODE_11 | 44 | 按钮11
KEY_CODE_12 | 45 | 按钮12
KEY_CODE_13 | 46 | 按钮13
KEY_CODE_14 | 47 | 按钮14
KEY_CODE_15 | 48 | 按钮15
KEY_CODE_16 | 49 | 按钮16

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_LockPanel

禁用设备本地面板控制。

BOOL NET_DVR_LockPanel(
  LONG    lUserID
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_UnLockPanel NET_DVR_Login NET_DVR_Login_V30


NET_DVR_UnLockPanel

恢复设备本地面板控制。

BOOL NET_DVR_UnLockPanel(
  LONG    lUserID
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_LockPanel NET_DVR_Login NET_DVR_Login_V30


NET_DVR_PTZControl

云台控制操作(需先启动图象预览)。

BOOL NET_DVR_PTZControl(
  LONG     lRealHandle,
  DWORD    dwPTZCommand,
  DWORD    dwStop
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
dwPTZCommand
[in] 云台控制命令，见下表：
宏定义 | 宏定义值 | 含义
LIGHT_PWRON | 2 | 接通灯光电源
WIPER_PWRON | 3 | 接通雨刷开关
FAN_PWRON | 4 | 接通风扇开关
HEATER_PWRON | 5 | 接通加热器开关
AUX_PWRON1 | 6 | 接通辅助设备开关
AUX_PWRON2 | 7 | 接通辅助设备开关
ZOOM_IN | 11 | 焦距变大(倍率变大)
ZOOM_OUT | 12 | 焦距变小(倍率变小)
FOCUS_NEAR | 13 | 焦点前调
FOCUS_FAR | 14 | 焦点后调
IRIS_OPEN | 15 | 光圈扩大
IRIS_CLOSE | 16 | 光圈缩小
TILT_UP | 21 | 云台上仰
TILT_DOWN | 22 | 云台下俯
PAN_LEFT | 23 | 云台左转
PAN_RIGHT | 24 | 云台右转
UP_LEFT | 25 | 云台上仰和左转
UP_RIGHT | 26 | 云台上仰和右转
DOWN_LEFT | 27 | 云台下俯和左转
DOWN_RIGHT | 28 | 云台下俯和右转
PAN_AUTO | 29 | 云台左右自动扫描
dwStop
[in] 云台停止动作或开始动作：0－开始；1－停止

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

对云台实施的每一个动作都需要调用该接口两次，分别是开始和停止控制，由接口中的最后一个参数（dwStop）决定。在调用此接口之前需要先开启预览。与设备之间的云台各项操作的命令都对应于设备与云台之间的控制码，设备会根据目前设置的解码器种类和解码器地址向云台发送控制码。如果目前设备上设置的解码器与云台设备的不匹配，需要重新配置设备的解码器。如果云台设备所需的解码器设备不支持，则无法用该接口控制。

云台默认以最大速度动作。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_PTZControl_Other

云台控制操作(不用启动图象预览)。

BOOL NET_DVR_PTZControl_Other(
  LONG     lUserID,
  LONG     lChannel,
  DWORD    dwPTZCommand,
  DWORD    dwStop
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
dwPTZCommand
[in] 云台控制命令，见下表：
宏定义 | 宏定义值 | 含义
LIGHT_PWRON | 2 | 接通灯光电源
WIPER_PWRON | 3 | 接通雨刷开关
FAN_PWRON | 4 | 接通风扇开关
HEATER_PWRON | 5 | 接通加热器开关
AUX_PWRON1 | 6 | 接通辅助设备开关
AUX_PWRON2 | 7 | 接通辅助设备开关
ZOOM_IN | 11 | 焦距变大(倍率变大)
ZOOM_OUT | 12 | 焦距变小(倍率变小)
FOCUS_NEAR | 13 | 焦点前调
FOCUS_FAR | 14 | 焦点后调
IRIS_OPEN | 15 | 光圈扩大
IRIS_CLOSE | 16 | 光圈缩小
TILT_UP | 21 | 云台上仰
TILT_DOWN | 22 | 云台下俯
PAN_LEFT | 23 | 云台左转
PAN_RIGHT | 24 | 云台右转
UP_LEFT | 25 | 云台上仰和左转
UP_RIGHT | 26 | 云台上仰和右转
DOWN_LEFT | 27 | 云台下俯和左转
DOWN_RIGHT | 28 | 云台下俯和右转
PAN_AUTO | 29 | 云台左右自动扫描
dwStop
[in] 云台停止动作或开始动作：0－开始；1－停止

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

对云台实施的每一个动作都需要调用该接口两次，分别是开始和停止控制，由接口中的最后一个参数（dwStop）决定。在调用此接口之前需要先注册设备。与设备之间的云台各项操作的命令都对应于设备与云台之间的控制码，设备会根据目前设置的解码器种类和解码器地址向云台发送控制码。如果目前设备上设置的解码器与云台设备的不匹配，需要重新配置设备的解码器。如果云台设备所需的解码器设备不支持，则无法用该接口控制。

云台默认以最大速度动作。

通过NET_DVR_PTZControl控制云台，设备接收到控制命令后云台进行相应的动作，如果操作失败则返回错误，运行正常则返回成功。而通过NET_DVR_PTZControl_Other控制云台，设备接收到控制命令后直接返回成功。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_PTZControlWithSpeed

带速度的云台控制操作(需先启动图象预览)。

BOOL NET_DVR_PTZControlWithSpeed(
  LONG     lRealHandle,
  DWORD    dwPTZCommand,
  DWORD    dwStop,
  DWORD    dwSpeed
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
dwPTZCommand
[in] 云台控制命令，见下表：
宏定义 | 宏定义值 | 含义
LIGHT_PWRON | 2 | 接通灯光电源
WIPER_PWRON | 3 | 接通雨刷开关
FAN_PWRON | 4 | 接通风扇开关
HEATER_PWRON | 5 | 接通加热器开关
AUX_PWRON1 | 6 | 接通辅助设备开关
AUX_PWRON2 | 7 | 接通辅助设备开关
ZOOM_IN | 11 | 焦距变大(倍率变大)
ZOOM_OUT | 12 | 焦距变小(倍率变小)
FOCUS_NEAR | 13 | 焦点前调
FOCUS_FAR | 14 | 焦点后调
IRIS_OPEN | 15 | 光圈扩大
IRIS_CLOSE | 16 | 光圈缩小
TILT_UP | 21 | 云台上仰
TILT_DOWN | 22 | 云台下俯
PAN_LEFT | 23 | 云台左转
PAN_RIGHT | 24 | 云台右转
UP_LEFT | 25 | 云台上仰和左转
UP_RIGHT | 26 | 云台上仰和右转
DOWN_LEFT | 27 | 云台下俯和左转
DOWN_RIGHT | 28 | 云台下俯和右转
PAN_AUTO | 29 | 云台左右自动扫描
dwStop
[in] 云台停止动作或开始动作：0－开始；1－停止
dwSpeed
[in] 云台控制的速度，用户按不同解码器的速度控制值设置。取值范围[1,7]

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

对云台实施的每一个动作都需要调用该接口两次，分别是开始和停止控制，由接口中的最后一个参数（dwStop）决定。在调用此接口之前需要先开启预览。与设备之间的云台各项操作的命令都对应于设备与云台之间的控制码，设备会根据目前设置的解码器种类和解码器地址向云台发送控制码。如果目前设备上设置的解码器与云台设备的不匹配，需要重新配置设备的解码器。如果云台设备所需的解码器设备不支持，则无法用该接口控制。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_PTZControlWithSpeed_Other

带速度的云台控制操作(不用启动图象预览)。

BOOL NET_DVR_PTZControlWithSpeed_Other(
  LONG     lUserID,
  LONG     lChannel,
  DWORD    dwPTZCommand,
  DWORD    dwStop,
  DWORD    dwSpeed
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
dwPTZCommand
[in] 云台控制命令，见下表：
宏定义 | 宏定义值 | 含义
LIGHT_PWRON | 2 | 接通灯光电源
WIPER_PWRON | 3 | 接通雨刷开关
FAN_PWRON | 4 | 接通风扇开关
HEATER_PWRON | 5 | 接通加热器开关
AUX_PWRON1 | 6 | 接通辅助设备开关
AUX_PWRON2 | 7 | 接通辅助设备开关
ZOOM_IN | 11 | 焦距变大(倍率变大)
ZOOM_OUT | 12 | 焦距变小(倍率变小)
FOCUS_NEAR | 13 | 焦点前调
FOCUS_FAR | 14 | 焦点后调
IRIS_OPEN | 15 | 光圈扩大
IRIS_CLOSE | 16 | 光圈缩小
TILT_UP | 21 | 云台上仰
TILT_DOWN | 22 | 云台下俯
PAN_LEFT | 23 | 云台左转
PAN_RIGHT | 24 | 云台右转
UP_LEFT | 25 | 云台上仰和左转
UP_RIGHT | 26 | 云台上仰和右转
DOWN_LEFT | 27 | 云台下俯和左转
DOWN_RIGHT | 28 | 云台下俯和右转
PAN_AUTO | 29 | 云台左右自动扫描
dwStop
[in] 云台停止动作或开始动作：0－开始；1－停止
dwSpeed
[in] 云台控制的速度，用户按不同解码器的速度控制值设置。取值范围[1,7]

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

对云台实施的每一个动作都需要调用该接口两次，分别是开始和停止控制，由接口中的最后一个参数（dwStop）决定。在调用此接口之前需要先注册设备。与设备之间的云台各项操作的命令都对应于设备与云台之间的控制码，设备会根据目前设置的解码器种类和解码器地址向云台发送控制码。如果目前设备上设置的解码器与云台设备的不匹配，需要重新配置设备的解码器。如果云台设备所需的解码器设备不支持，则无法用该接口控制。

通过NET_DVR_PTZControlWithSpeed控制云台，设备接收到控制命令后云台进行相应的动作，如果操作失败则返回错误，运行正常则返回成功。而通过NET_DVR_PTZControlWithSpeed_Other控制云台，设备接收到控制命令后直接返回成功。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_PTZPreset

云台预置点操作（需先启动预览）。

BOOL NET_DVR_PTZPreset(
  LONG     lRealHandle,
  DWORD    dwPTZPresetCmd,
  DWORD    dwPresetIndex
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
dwPTZPresetCmd
[in] 操作云台预置点命令，见下表：
宏定义 | 宏定义值 | 含义
SET_PRESET | 8 | 设置预置点
CLE_PRESET | 9 | 清除预置点
GOTO_PRESET | 39 | 转到预置点
dwPresetIndex
[in] 预置点的序号（从1开始），最多支持255个预置点

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

与设备之间的云台各项操作的命令都对应于设备与云台之间的控制码，设备会根据目前设置的解码器种类和解码器地址向云台发送控制码。如果目前设备上设置的解码器与云台设备的不匹配，需要重新配置设备的解码器。如果云台设备所需的解码器设备不支持，则无法用该接口控制。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_PTZPreset_Other

云台预置点操作。

BOOL NET_DVR_PTZPreset_Other(
  LONG     lUserID,
  LONG     lChannel,
  DWORD    dwPTZPresetCmd,
  DWORD    dwPresetIndex
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
dwPTZPresetCmd
[in] 操作云台预置点命令，见下表：
宏定义 | 宏定义值 | 含义
SET_PRESET | 8 | 设置预置点
CLE_PRESET | 9 | 清除预置点
GOTO_PRESET | 39 | 转到预置点
dwPresetIndex
[in] 预置点的序号（从1开始），最多支持255个预置点

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

与设备之间的云台各项操作的命令都对应于设备与云台之间的控制码，设备会根据目前设置的解码器种类和解码器地址向云台发送控制码。如果目前设备上设置的解码器与云台设备的不匹配，需要重新配置设备的解码器。如果云台设备所需的解码器设备不支持，则无法用该接口控制。

通过NET_DVR_PTZPreset控制云台，设备接收到控制命令后云台进行相应的动作，如果操作失败则返回错误，运行正常才返回成功。而通过NET_DVR_PTZPreset_Other控制云台，设备接收到控制命令后直接返回成功。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_PTZCruise

云台巡航操作，需先启动预览。

BOOL NET_DVR_PTZCruise(
  LONG     lRealHandle,
  DWORD    dwPTZCruiseCmd,
  BYTE     byCruiseRoute,
  BYTE     byCruisePoint,
  WORD     wInput
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
dwPTZCruiseCmd
[in] 操作云台巡航命令，见下表：
宏定义 | 宏定义值 | 含义
FILL_PRE_SEQ | 30 | 将预置点加入巡航序列
SET_SEQ_DWELL | 31 | 设置巡航点停顿时间
SET_SEQ_SPEED | 32 | 设置巡航速度
CLE_PRE_SEQ | 33 | 将预置点从巡航序列中删除
RUN_SEQ | 37 | 开始巡航
STOP_SEQ | 38 | 停止巡航
byCruiseRoute
[in] 巡航路径，最多支持32条路径（序号从1开始）
byCruisePoint
[in] 巡航点，最多支持32个点（序号从1开始）
wInput
[in] 不同巡航命令时的值不同，预置点(最大255)、时间(最大255)、速度(最大40)

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

与设备之间的云台各项操作的命令都对应于设备与云台之间的控制码，设备会根据目前设置的解码器种类和解码器地址向云台发送控制码。如果目前设备上设置的解码器与云台设备的不匹配，需要重新配置设备的解码器。如果云台设备所需的解码器设备不支持，则无法用该接口控制。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_PTZCruise_Other

云台巡航操作。

BOOL NET_DVR_PTZCruise_Other(
  LONG     lUserID,
  LONG     lChannel,
  DWORD    dwPTZCruiseCmd,
  BYTE     byCruiseRoute,
  BYTE     byCruisePoint,
  WORD     wInput
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
dwPTZCruiseCmd
[in] 操作云台巡航命令，见下表：
宏定义 | 宏定义值 | 含义
FILL_PRE_SEQ | 30 | 将预置点加入巡航序列
SET_SEQ_DWELL | 31 | 设置巡航点停顿时间
SET_SEQ_SPEED | 32 | 设置巡航速度
CLE_PRE_SEQ | 33 | 将预置点从巡航序列中删除
RUN_SEQ | 37 | 开始巡航
STOP_SEQ | 38 | 停止巡航
byCruiseRoute
[in] 巡航路径，最多支持32条路径（序号从1开始）
byCruisePoint
[in] 巡航点，最多支持32个点（序号从1开始）
wInput
[in] 不同巡航命令时的值不同，预置点(最大255)、时间(最大255)、速度(最大40)

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

与设备之间的云台各项操作的命令都对应于设备与云台之间的控制码，设备会根据目前设置的解码器种类和解码器地址向云台发送控制码。如果目前设备上设置的解码器与云台设备的不匹配，需要重新配置设备的解码器。如果云台设备所需的解码器设备不支持，则无法用该接口控制。

通过NET_DVR_PTZCruise控制云台，设备接收到控制命令后云台进行相应的动作，如果操作失败则返回错误，运行正常则返回成功。而通过NET_DVR_PTZCruise_Other控制云台，设备接收到控制命令后直接返回成功。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_PTZTrack

云台轨迹操作，需先启动预览。

BOOL NET_DVR_PTZTrack(
  LONG     lRealHandle,
  DWORD    dwPTZTrackCmd
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
dwPTZTrackCmd
[in] 操作云台轨迹命令，见下表：
宏定义 | 宏定义值 | 含义
STA_MEM_CRUISE | 34 | 开始记录轨迹
STO_MEM_CRUISE | 35 | 停止记录轨迹
RUN_CRUISE | 36 | 开始轨迹

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

与设备之间的云台各项操作的命令都对应于设备与云台之间的控制码，设备会根据目前设置的解码器种类和解码器地址向云台发送控制码。如果目前设备上设置的解码器与云台设备的不匹配，需要重新配置设备的解码器。如果云台设备所需的解码器设备不支持，则无法用该接口控制。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_PTZTrack_Other

云台轨迹操作。

BOOL NET_DVR_PTZTrack_Other(
  LONG     lUserID,
  LONG     lChannel,
  DWORD    dwPTZTrackCmd
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
dwPTZTrackCmd
[in] 操作云台轨迹命令，见下表：
宏定义 | 宏定义值 | 含义
STA_MEM_CRUISE | 34 | 开始记录轨迹
STO_MEM_CRUISE | 35 | 停止记录轨迹
RUN_CRUISE | 36 | 开始轨迹

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

与设备之间的云台各项操作的命令都对应于设备与云台之间的控制码，设备会根据目前设置的解码器种类和解码器地址向云台发送控制码。如果目前设备上设置的解码器与云台设备的不匹配，需要重新配置设备的解码器。如果云台设备所需的解码器设备不支持，则无法用该接口控制。

通过NET_DVR_PTZTrack控制云台，设备接收到控制命令后云台进行相应的动作，如果操作失败则返回错误，运行正常才返回成功。而通过NET_DVR_PTZTrack_Other控制云台，设备接收到控制命令后直接返回成功。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_TransPTZ

透明云台操作，需先启动预览。

BOOL NET_DVR_TransPTZ(
  LONG     lRealHandle,
  char     *pPTZCodeBuf,
  DWORD    dwBufSize
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
pPTZCodeBuf
[in] 存放云台控制码缓冲区的指针
dwBufSize
[in] 云台控制码的长度

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

使用该接口能直接通过设备将云台控制码信息直接传输给云台设备，而无需配置解码器。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_TransPTZ_Other

透明云台操作。

BOOL NET_DVR_TransPTZ_Other(
  LONG     lUserID,
  LONG     lChannel,
  char     *pPTZCodeBuf,
  DWORD    dwBufSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
pPTZCodeBuf
[in] 存放云台控制码缓冲区的指针
dwBufSize
[in] 云台控制码的长度

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

使用该接口能直接通过设备将云台控制码信息直接传输给云台设备，而无需配置解码器。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_PTZPOS | 获取IP快球PTZ参数 | 有效 | NET_DVR_PTZPOS | 293
NET_DVR_GET_PTZSCOPE | 获取IP快球PTZ范围参数 | 有效 | NET_DVR_PTZSCOPE | 294

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_PTZPOS | 设置IP快球PTZ参数 | 有效 | NET_DVR_PTZPOS | 292

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_PTZSelZoomIn

云台图象区域选择放大或缩小。

BOOL NET_DVR_PTZSelZoomIn(
  LONG                      lRealHandle,
  LPNET_DVR_POINT_FRAME     pStruPointFrame
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或者NET_DVR_RealPlay_V30的返回值
pStruPointFrame
[in] 云台图像区域位置信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

该接口实现3D定位功能，需要前端设备的支持。

假设当前预览显示图像的框为352*288，原点即该显示框的左上角的顶点。参数pStruPointFrame中各坐标值的计算方法（以X轴方向上为例）：xTop=鼠标当前所选区域的左上点的值*255/352。缩小条件：xBottom减去xTop的值大于2。放大条件：xBottom减去xTop的值大于0，且yBottom减去yTop的值大于0。


NET_DVR_PTZSelZoomIn_EX

云台图象区域选择放大或缩小。

BOOL NET_DVR_PTZSelZoomIn_EX(
  LONG                      lUserID,
  LONG                      lChannel,
  LPNET_DVR_POINT_FRAME     pStruPointFrame
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
pStruPointFrame
[in] 云台图像区域位置信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

该接口实现3D定位功能，需要前端设备的支持。

假设当前预览显示图像的框为352*288，原点即该显示框的左上角的顶点。参数pStruPointFrame中各坐标值的计算方法（以X轴方向上为例）：xTop=鼠标当前所选区域的左上点的值*255/352。缩小条件：xBottom减去xTop的值大于2。放大条件：xBottom减去xTop的值大于0，且yBottom减去yTop的值大于0。


NET_DVR_GetPTZCruise

获取IP快球云台巡航路径。

BOOL NET_DVR_GetPTZCruise(
  LONG                     lUserID,
  LONG                     lChannel,
  LONG                     lCruiseRoute,
  LPNET_DVR_CRUISE_RET     lpCruiseRet
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lCruiseRoute
[in] 巡航路径号
lpCruiseRet
[out] 巡航轨迹

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError


NET_DVR_StartVoiceCom_V30

启动语音对讲。

LONG NET_DVR_StartVoiceCom_V30(
  LONG                  lUserID,
  DWORD                 dwVoiceChan,
  BOOL                  bNeedCBNoEncData,
  fVoiceDataCallBack    cbVoiceDataCallBack,
  void                  *pUser
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwVoiceChan
[in] 语音通道号，从1开始
bNeedCBNoEncData
[in] 需要回调的语音数据类型：0－编码后的语音数据，1－编码前的PCM原始数据
cbVoiceDataCallBack
[in] 音频数据回调函数
pUser
[in] 用户数据指针

Callback Function

typedef void(CALLBACK *fVoiceDataCallBack)(
  LONG     lVoiceComHandle,
  char     *pRecvDataBuffer,
  DWORD    dwBufSize,
  BYTE     byAudioFlag,
  void     *pUser
);

Callback Function Parameters

lVoiceComHandle
[out] NET_DVR_StartVoiceCom_V30的返回值
pRecvDataBuffer
[out] 存放音频数据的缓冲区指针
dwBufSize
[out] 音频数据大小
byAudioFlag
[out] 音频数据类型：0－本地采集的数据；1－设备发送过来的语音数据
pUser
[out] 用户数据指针

Return Values

-1表示失败，其他值作为NET_DVR_StopVoiceCom等函数的句柄参数。获取错误码调用NET_DVR_GetLastError

Remarks

Windows 7操作系统下，如果不外接音频设备，该接口将返回失败。
在调用开始语音对讲之前可先配置设备的语音对讲音频编码类型，即可先调用参数配置中的NET_DVR_COMPRESSION_AUDIO
结构配置。
当前音频为OggVorbis编码时，音频数据的采样频率为16000，16位采样且是单通道的。因此，音频播放格式应如下定义：
const int SAMPLES_PER_SECOND = 16000;
const int CHANNEL = 1;
const int BITS_PER_SAMPLE = 16;
WAVEFORMATEX m_wavFormatEx;
m_wavFormatEx.cbSize = sizeof(m_wavFormatEx);
m_wavFormatEx.nBlockAlign = CHANNEL * BITS_PER_SAMPLE / 8;
m_wavFormatEx.nChannels = CHANNEL;
m_wavFormatEx.nSamplesPerSec = SAMPLES_PER_SECOND;
m_wavFormatEx.wBitsPerSample = BITS_PER_SAMPLE;
m_wavFormatEx.nAvgBytesPerSec = SAMPLES_PER_SECOND*m_wavFormatEx.nBlockAlign

当前音频为G711或者G726编码时，音频数据的采样频率为8000，16位采样且是单通道的。因此，音频播放格式应如下定义：
const int SAMPLES_PER_SECOND_G711_MU = 8000;
const int CHANNEL = 1;
const int BITS_PER_SAMPLE = 16;
WAVEFORMATEX m_wavFormatEx;
m_wavFormatEx.cbSize = sizeof(m_wavFormatEx);
m_wavFormatEx.nBlockAlign =	CHANNEL * BITS_PER_SAMPLE / 8;
m_wavFormatEx.nChannels = CHANNEL;
m_wavFormatEx.nSamplesPerSec = SAMPLES_PER_SECOND_G711_MU;
m_wavFormatEx.wBitsPerSample = BITS_PER_SAMPLE;
m_wavFormatEx.nAvgBytesPerSec = SAMPLES_PER_SECOND_G711_MU*
m_wavFormatEx.nBlockAlign;

See Also

NET_DVR_StopVoiceCom

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于

NET_DVR_StartVoiceCom


NET_DVR_SetVoiceComClientVolume

设置语音对讲客户端的音量。

BOOL NET_DVR_SetVoiceComClientVolume(
  LONG     lVoiceComHandle,
  WORD     wVolume
);

Parameters

lVoiceComHandle
[in] NET_DVR_StartVoiceCom或NET_DVR_StartVoiceCom_V30的返回值
wVolume
[in] 设置音量，取值范围[0,0xffff]

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_StartVoiceCom NET_DVR_StartVoiceCom_V30


NET_DVR_StopVoiceCom

停止语音对讲或者语音转发。

BOOL NET_DVR_StopVoiceCom(
  LONG     lVoiceComHandle
);

Parameters

lVoiceComHandle
[in] NET_DVR_StartVoiceCom或NET_DVR_StartVoiceCom_V30、NET_DVR_StartVoiceCom_MR或NET_DVR_StartVoiceCom_MR_V30的返回值
推模式：对讲句柄lVoiceHandle，由NET_DVR_SetVoiceResponseCallBack注册的回调函数返回。

Return Values

TRUE表示成功,FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_StartVoiceCom NET_DVR_StartVoiceCom_V30
NET_DVR_StartVoiceCom_MR NET_DVR_StartVoiceCom_MR_V30

NET_DVR_SetVoiceResponseCallBack


NET_DVR_StartVoiceCom_MR_V30

启动语音转发，获取编码后的音频数据。

LONG NET_DVR_StartVoiceCom_MR_V30(
  LONG                  lUserID,
  DWORD                 dwVoiceChan,
  fVoiceDataCallBack    cbVoiceDataCallBack,
  void                  *pUser
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwVoiceChan
[in] 语音通道号，从1开始
cbVoiceDataCallBack
[in] 音频数据回调函数，得到的数据是编码以后的音频数据，需调用我们提供的音频解码函数（详见音频编解码章节的说明）后可得到PCM数据
pUser
[in] 用户数据指针

Callback Function

typedef void(CALLBACK *fVoiceDataCallBack)(
  LONG     lVoiceComHandle,
  char     *pRecvDataBuffer,
  DWORD    dwBufSize,
  BYTE     byAudioFlag,
  void     *pUser
);

Callback Function Parameters

lVoiceComHandle
[out] NET_DVR_StartVoiceCom_MR_V30的返回值
pRecvDataBuffer
[out] 存放音频数据的缓冲区指针
dwBufSize
[out] 音频数据大小
byAudioFlag
[out] 音频数据类型：1－设备发送过来的音频数据
pUser
[out] 用户数据指针

Return Values

-1表示失败，其他值作为NET_DVR_VoiceComSendData、NET_DVR_StopVoiceCom等函数的句柄参数。获取错误码调用NET_DVR_GetLastError

Remarks

在调用开始语音转发之前可先配置设备的音频编码类型，即可先调用参数配置中的NET_DVR_COMPRESSION_AUDIO
结构配置。
当前音频为OggVorbis编码时，音频数据的采样频率为16000，16位采样且是单通道的。因此，音频播放格式应如下定义：
const int SAMPLES_PER_SECOND = 16000;
const int CHANNEL = 1;
const int BITS_PER_SAMPLE = 16;
WAVEFORMATEX m_wavFormatEx;
m_wavFormatEx.cbSize = sizeof(m_wavFormatEx);
m_wavFormatEx.nBlockAlign = CHANNEL * BITS_PER_SAMPLE / 8;
m_wavFormatEx.nChannels = CHANNEL;
m_wavFormatEx.nSamplesPerSec = SAMPLES_PER_SECOND;
m_wavFormatEx.wBitsPerSample = BITS_PER_SAMPLE;
m_wavFormatEx.nAvgBytesPerSec = SAMPLES_PER_SECOND*m_wavFormatEx.nBlockAlign

当前音频为G711编码时，音频数据的采样频率为8000，16位采样且是单通道的。因此，音频播放格式应如下定义：
const int SAMPLES_PER_SECOND_G711_MU = 8000;
const int CHANNEL = 1;
const int BITS_PER_SAMPLE = 16;
WAVEFORMATEX m_wavFormatEx;
m_wavFormatEx.cbSize = sizeof(m_wavFormatEx);
m_wavFormatEx.nBlockAlign =	CHANNEL * BITS_PER_SAMPLE / 8;
m_wavFormatEx.nChannels = CHANNEL;
m_wavFormatEx.nSamplesPerSec = SAMPLES_PER_SECOND_G711_MU;
m_wavFormatEx.wBitsPerSample = BITS_PER_SAMPLE;
m_wavFormatEx.nAvgBytesPerSec = SAMPLES_PER_SECOND_G711_MU*
m_wavFormatEx.nBlockAlign;

See Also

NET_DVR_StopVoiceCom

NET_DVR_VoiceComSendData

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于

NET_DVR_StartVoiceCom_MR


NET_DVR_VoiceComSendData

转发语音数据。

BOOL NET_DVR_VoiceComSendData(
  LONG     lVoiceComHandle,
  char     *pSendBuf,
  DWORD    dwBufSize
);

Parameters

lVoiceComHandle
[in] NET_DVR_StartVoiceCom_MR或NET_DVR_StartVoiceCom_MR_V30的返回值
pSendBuf
[in] 存放语音数据的缓冲区
dwBufSize
[in] 语音数据大小。当前是OggVorbis音频编码类型时，每次发送的数据为80字节；当前是G711音频编码类型时，每次发送的数据为160字节。

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

该接口实现将获取到的经过编码后的音频数据转发给设备。音频编码类型不同，采用不同的接口实现音频数据编解码。

See Also

NET_DVR_StartVoiceCom_MR NET_DVR_StartVoiceCom_MR_V30


NET_DVR_ClientAudioStart_V30

启动语音广播的PC端声音捕获。

BOOL NET_DVR_ClientAudioStart_V30(
  fVoiceDataCallBack    cbVoiceDataCallBack,
  void                  *pUser
);

Parameters

cbVoiceDataCallBack
[in] 音频数据回调函数
pUser
[in] 用户数据指针

Callback Function

typedef void(CALLBACK *fVoiceDataCallBack)(
  char     *pRecvDataBuffer,
  DWORD    dwBufSize,
  void     *pUser
);

Callback Function Parameters

pRecvDataBuffer
[out] 存放PC本地采集的音频数据（PCM）的缓冲区指针
dwBufSize
[out] 音频数据大小
pUser
[out] 用户数据指针

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。

Remarks

Windows 7操作系统下，如果不外接音频设备，该接口将返回失败。
实现语音广播功能需先调用NET_DVR_ClientAudioStart_V30或者NET_DVR_ClientAudioStart接口采集本地PC的音频数据，再调用NET_DVR_AddDVR或者NET_DVR_AddDVR_V30逐个添加设备同时将采集到的数据发送给设备。

See Also

NET_DVR_ClientAudioStop

Reference Interface

该接口扩展源于

NET_DVR_ClientAudioStart


NET_DVR_AddDVR_V30

添加设备的某个语音通道到可以接收PC端声音的广播组。

LONG NET_DVR_AddDVR_V30(
  LONG     lUserID,
  DWORD    dwVoiceChan
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwVoiceChan
[in] 语音通道号，从1开始

Return Values

-1表示失败，其他值作为NET_DVR_DelDVR_V30等函数的参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

Remarks

实现语音广播功能需先调用NET_DVR_ClientAudioStart或者NET_DVR_ClientAudioStart_V30接口采集本地PC的音频数据，再调用NET_DVR_AddDVR或者NET_DVR_AddDVR_V30逐个添加设备同时将采集到的数据发送给设备。

SDK最大支持添加512个设备。

See Also

NET_DVR_DelDVR_V30

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于

NET_DVR_AddDVR


NET_DVR_DelDVR_V30

从可接收PC机声音的广播组里删除该设备的语音通道。

BOOL NET_DVR_DelDVR_V30(
  LONG   lVoiceHandle
);

Parameters

lVoiceHandle
[in] NET_DVR_AddDVR_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_AddDVR_V30

Reference Interface

该接口扩展源于

NET_DVR_DelDVR


NET_DVR_ClientAudioStop

停止语音广播的PC端声音捕获。

BOOL NET_DVR_ClientAudioStop(
);

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。

See Also

NET_DVR_ClientAudioStart NET_DVR_ClientAudioStart_V30


NET_DVR_InitG722Encoder

初始化音频编码。

void* NET_DVR_InitG722Encoder(
);

Return Values

-1表示失败，其他值为音频编码句柄。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_ReleaseG722Encoder NET_DVR_EncodeG722Frame


NET_DVR_EncodeG722Frame

G722音频编码。

BOOL NET_DVR_EncodeG722Frame(
  void            *pEncodeHandle,
  unsigned char   *pInBuffer,
  unsigned char   *pOutBuffer
);

Parameters

pEncodeHandle
[in] 音频编码句柄，NET_DVR_InitG722Encoder的返回值
pInBuffer
[in] 输入缓冲区，按采样标准（采样频率为16000，16位采样，单通道）获取的PCM音频数据，规定输入数据的大小为1280字节
pOutBuffer
[out] 输出缓冲区，编码后的输出数据大小为80字节

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

主要为配合语音对讲、转发功能而设定，当需将客户端的原始音频数据发送至设备端，可采用音频编码函数将原始数据压缩编码后再发往设备端；客户端获取设备端发送过来的压缩码流，可调用音频解码函数NET_DVR_DecodeG722Frame进行数据解码。在调用编解码函数之前都需要做相应的初始化操作，在结束调用后还需要做释放资源的操作。

See Also

NET_DVR_InitG722Encoder


NET_DVR_ReleaseG722Encoder

释放音频编码资源。

void NET_DVR_ReleaseG722Encoder(
  void   *pEncodeHandle
);

Parameters

pEncodeHandle
[in] 音频编码句柄，NET_DVR_InitG722Encoder的返回值

Return Values

无。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InitG722Encoder


NET_DVR_InitG722Decoder

初始化音频解码。

void* NET_DVR_InitG722Decoder(
  int   nBitrate
);

Parameters

nBitrate
[in] 编码采样频率，这里我们规定采样频率为16000

Return Values

-1表示失败，其他值为音频解码句柄。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_ReleaseG722Decoder NET_DVR_DecodeG722Frame


NET_DVR_DecodeG722Frame

G722音频解码。

BOOL NET_DVR_DecodeG722Frame(
  void            *pDecHandle,
  unsigned char   *pInBuffer,
  unsigned char   *pOutBuffer
);

Parameters

pDecHandle
[in] 音频解码句柄，NET_DVR_InitG722Decoder的返回值
pInBuffer
[in] 输入缓冲区，编码数据大小为80字节
pOutBuffer
[out] 输出缓冲区，按采样标准（采样频率为16000，16位采样，单通道）获取的PCM音频数据，规定输出数据的大小为1280字节

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

Remarks

主要为配合语音对讲、转发功能而设定，当需将客户端的原始音频数据发送至设备端，可采用音频编码函数NET_DVR_EncodeG722Frame将原始数据压缩编码后再发往设备端；客户端获取设备端发送过来的压缩码流，可调用音频解码函数进行数据解码。在调用编解码函数之前都需要做相应的初始化操作，在结束调用后还需要做释放资源的操作。

See Also

NET_DVR_InitG722Decoder


NET_DVR_ReleaseG722Decoder

释放音频解码资源。

void NET_DVR_ReleaseG722Decoder(
  void   *pDecHandle
);

Parameters

pDecHandle
[in] 音频解码句柄，NET_DVR_InitG722Decoder的返回值

Return Values

无返回值。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InitG722Decoder


NET_DVR_EncodeG711Frame

G711音频编码。

BOOL NET_DVR_EncodeG711Frame(
  unsigned int    iType,
  unsigned char   *pInBuffer,
  unsigned char   *pOutBuffer
);

Parameters

iType
[in] 编码类型：0-Mu law 编码，非0-A law 编码
pInBuffer
[in] 输入缓冲区，按采样标准（采样频率为8000，16位采样，单通道）获取的PCM音频数据，规定输入数据的大小为320字节
pOutBuffer
[out] 输出缓冲区，编码后的输出数据大小为160字节

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

主要为配合语音对讲功能而设定，当需将客户端的原始音频数据发送至设备端，可采用音频编码函数将原始数据压缩编码后再发往设备端；客户端获取设备端发送过来的压缩码流，可调用音频解码函数NET_DVR_DecodeG711Frame进行数据解码。在调用编解码函数之前无需做初始化操作。

See Also

NET_DVR_DecodeG711Frame


NET_DVR_DecodeG711Frame

G711音频解码。

BOOL NET_DVR_DecodeG711Frame(
  unsigned int    iType,
  unsigned char   *pInBuffer,
  unsigned char   *pOutBuffer
);

Parameters

iType
[in] 编码类型：0-Mu law 编码，非0-A law 编码
pInBuffer
[in] 输入缓冲区，编码数据大小为160字节
pOutBuffer
[out] 输出缓冲区，按采样标准（采样频率为8000，16位采样，单通道）获取的PCM音频数据，规定输出数据的大小为320字节

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

Remarks

主要为配合语音对讲、转发功能而设定，当需将客户端的原始音频数据发送至设备端，可采用音频编码函数NET_DVR_EncodeG711Frame将原始数据压缩编码后再发往设备端；客户端获取设备端发送过来的压缩码流，可调用音频解码函数进行数据解码。在调用编解码函数之前无需做初始化操作。

See Also

NET_DVR_EncodeG711Frame


NET_DVR_InitG726Encoder

初始化音频编码。

void* NET_DVR_InitG726Encoder(
  void    **pEncMoudle
);

Parameters

pEncMoudle
[out] 编码模块句柄，编码时作为输入参数

Return Values

-1表示失败，其他值为音频编码句柄。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_EncodeG726Frame NET_DVR_ReleaseG726Encoder


NET_DVR_EncodeG726Frame

G726音频编码。

BOOL NET_DVR_EncodeG726Frame(
  void            *pEncMoudle,
  unsigned char   *pInBuffer,
  unsigned char   *pOutBuffer,
  BYTE            byReset
);

Parameters

pEncMoudle
[in] 音频编码句柄，NET_DVR_InitG726Encoder的输出参数
pInBuffer
[in] 输入缓冲区，按采样标准（采样频率为8000，16位采样，单通道）获取的PCM音频数据，规定输入数据的大小为640字节
pOutBuffer
[out] 输出缓冲区，编码后的输出数据大小为80字节
byReset
[in] 是否重置，第一帧需要重置

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

Remarks

主要为配合语音对讲、转发功能而设定，当需将客户端的原始音频数据发送至设备端，可采用音频编码函数将原始数据压缩编码后再发往设备端；客户端获取设备端发送过来的压缩码流，可调用音频解码函数NET_DVR_DecodeG726Frame进行数据解码。在调用编解码函数之前都需要做相应的初始化操作，在结束调用后还需要做释放资源的操作。

See Also

NET_DVR_InitG726Encoder


NET_DVR_ReleaseG726Encoder

释放音频编码资源。

void NET_DVR_ReleaseG726Encoder(
  void   *pEncHandle
);

Parameters

pEncHandle
[in] 音频编码句柄，NET_DVR_InitG726Encoder的返回值

Return Values

无。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_InitG726Encoder


NET_DVR_InitG726Decoder

初始化音频解码。

void* NET_DVR_InitG726Decoder(
  void    **pDecMoudle
);

Parameters

pDecMoudle
[out] 解码模块句柄，解码时作为输入参数

Return Values

-1表示失败，其他值为音频解码句柄。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_DecodeG726Frame NET_DVR_ReleaseG726Decoder


NET_DVR_DecodeG726Frame

G726音频解码。

BOOL NET_DVR_DecodeG726Frame(
  void            *pDecMoudle,
  unsigned char   *pInBuffer,
  unsigned char   *pOutBuffer,
  BYTE            byReset
);

Parameters

pDecMoudle
[in] 音频解码句柄，NET_DVR_InitG726Decoder的输出参数
pInBuffer
[in] 输入缓冲区，编码数据大小为80字节
pOutBuffer
[out] 输出缓冲区，按采样标准（采样频率为8000，16位采样，单通道）获取的PCM音频数据，规定输出数据的大小为640字节
byReset
[in] 是否重置，第一帧需要重置

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

Remarks

主要为配合语音对讲、转发功能而设定，当需将客户端的原始音频数据发送至设备端，可采用音频编码函数NET_DVR_EncodeG726Frame将原始数据压缩编码后再发往设备端；客户端获取设备端发送过来的压缩码流，可调用音频解码函数进行数据解码。在调用编解码函数之前都需要做相应的初始化操作，在结束调用后还需要做释放资源的操作。

See Also

NET_DVR_InitG726Decoder


NET_DVR_ReleaseG726Decoder

释放音频解码资源。

void NET_DVR_ReleaseG726Decoder(
  void   *pDecHandle
);

Parameters

pDecHandle
[in] 音频解码句柄，NET_DVR_InitG726Decoder的返回值

Return Values

无。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_InitG726Decoder


NET_DVR_SerialStart

建立透明通道。

LONG NET_DVR_SerialStart(
  LONG                   lUserID,
  LONG                   lSerialPort,
  fSerialDataCallBack    cbSerialDataCallBack,
  DWORD                  dwUser
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lSerialPort
[in] 串口号：1－232串口；2－485串口
fSerialDataCallBack
[in] 回调函数
dwUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *fSerialDataCallBack)(
  LONG     lSerialHandle,
  char     *pRecvDataBuffer,
  DWORD    dwBufSize,
  DWORD    dwUser
);

Callback Function Parameters

lSerialHandle
[out] NET_DVR_SerialStart的返回值
pRecvDataBuffer
[out] 存放数据的缓冲区指针
dwBufSize
[out] 数据大小
dwUser
[out] 用户数据

Return Values

-1表示失败，其他值作为NET_DVR_SerialSend等函数的句柄参数。获取错误码调用NET_DVR_GetLastError

Remarks

如果串口接的外设不支持双工（全双工或者半双工），设备不会有数据返回给SDK。

See Also

NET_DVR_SerialStop NET_DVR_SerialSend
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_SerialSend

通过透明通道向设备串口发送数据。

BOOL NET_DVR_SerialSend(
  LONG     lSerialHandle,
  LONG     lChannel,
  char     *pSendBuf,
  DWORD    dwBufSize
);

Parameters

lSerialHandle
[in] NET_DVR_SerialStart的返回值
lChannel
[in] 使用485串口时有效，从1开始；232串口作为透明通道时该值设置为0
pSendBuf
[in] 发送数据的缓冲区指针
dwBufSize
[in] 缓冲区的大小，最多1016字节

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SerialStart


NET_DVR_SerialStop

断开透明通道。

BOOL NET_DVR_SerialStop(
  LONG  lSerialHandle
);

Parameters

lSerialHandle
[in] NET_DVR_SerialStart的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SerialStart


NET_DVR_SendToSerialPort

直接向串口发送数据，不需要建立透明通道。

BOOL NET_DVR_SendToSerialPort(
  LONG     lUserID,
  DWORD    dwSerialPort,
  DWORD    dwSerialIndex,
  char     *pSendBuf,
  DWORD    dwBufSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwSerialPort
[in] 串口类型：1-232，2-485
dwSerialIndex
[in] 表示第几个232或者485，从1开始
pSendBuf
[in] 发送数据的缓冲区指针
dwBufSize
[in] 缓冲区的大小，最多1016字节

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_SendTo232Port

直接向232串口发送数据，不需要建立透明通道。

BOOL NET_DVR_SendTo232Port(
  LONG     lUserID,
  char     *pSendBuf,
  DWORD    dwBufSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pSendBuf
[in] 发送数据的缓冲区指针
dwBufSize
[in] 缓冲区的大小，最多1016字节

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_FormatDisk

远程格式化设备硬盘。

LONG NET_DVR_FormatDisk(
  LONG    lUserID,
  LONG    lDiskNumber
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lDiskNumber
[in] 硬盘号，从0开始，0xff表示对所有硬盘有效（不包括只读硬盘）

Return Values

-1表示失败，其他值作为NET_DVR_CloseFormatHandle等函数的参数。获取错误码调用NET_DVR_GetLastError

Remarks

格式化过程中如果网络断了，设备上的格式化操作依然会继续，但是客户端无法收到状态。

See Also

NET_DVR_CloseFormatHandle NET_DVR_GetFormatProgress
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetFormatProgress

获取格式化硬盘的进度。

BOOL NET_DVR_GetFormatProgress(
  LONG    lFormatHandle,
  LONG    *pCurrentFormatDisk,
  LONG    *pCurrentDiskPos,
  LONG    *pFormatStatic
);

Parameters

lFormatHandle
[in] 格式化硬盘句柄，NET_DVR_FormatDisk的返回值
pCurrentFormatDisk
[out] 指向保存当前正在格式化的硬盘号的指针，硬盘号从0开始，-1为初始状态
pCurrentDiskPos
[out] 指向保存当前正在格式化的硬盘的进度的指针，进度是0～100
pFormatStatic
[out] 指向保存硬盘格式化状态的指针，0-正在格式化；1-硬盘全部格式化完成；2-格式化当前硬盘出错，不能继续格式化此硬盘，本地和网络硬盘都会出现此错误；3-由于网络异常造成网络硬盘丢失而不能开始格式化当前硬盘

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_FormatDisk


NET_DVR_CloseFormatHandle

关闭格式化硬盘句柄，释放资源。

BOOL NET_DVR_CloseFormatHandle(
  LONG    lFormatHandle
);

Parameters

lFormatHandle
[in] NET_DVR_ FormatDisk的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

See Also

NET_DVR_FormatDisk


NET_DVR_GetDVRWorkState_V30

获取设备的工作状态。

BOOL NET_DVR_GetDVRWorkState_V30(
  LONG                       lUserID,
  LPNET_DVR_WORKSTATE_V30    lpWorkState
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lpWorkState
[out] 获取的设备工作状态结构体参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于

NET_DVR_GetDVRWorkState


NET_DVR_SetNetworkEnvironment

设置远程升级时网络环境。

BOOL NET_DVR_SetNetworkEnvironment(
  DWORD   dwEnvironmentLevel
);

Parameters

dwEnvironmentLevel
[in] 网络环境级别
enum{
  LOCAL_AREA_NETWORK = 0,
  WIDE_AREA_NETWORK
}

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

接口中的网络环境级别参数分为两类，LOCAL_AREA_NETWORK表示局域网环境(网络环境好，通讯流畅)；WIDE_AREA_NETWORK表示广域网环境(网络环境差，易阻塞)。在调用远程升级接口之前，可以通过此接口适应不同的升级环境。


NET_DVR_Upgrade

远程升级。

LONG NET_DVR_Upgrade(
  LONG   lUserID,
  char   *sFileName
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
wVolume
[in] 升级的文件路径（包括文件名）。路径长度和操作系统有关，sdk不做限制，windows默认路径长度小于等于256字节（包括文件名在内）。

Return Values

-1表示失败，其他值作为NET_DVR_GetUpgradeState等函数的参数。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_CloseUpgradeHandle
NET_DVR_GetUpgradeState NET_DVR_GetUpgradeProgres


NET_DVR_GetUpgradeProgress

获取远程升级的进度。

int NET_DVR_GetUpgradeProgress(
  LONG   lUpgradeHandle
);

Parameters

lUpgradeHandle
[in] NET_DVR_Upgrade的返回值

Return Values

-1表示失败，0～100表示升级进度。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Upgrade


NET_DVR_GetUpgradeState

获取远程升级的状态。

int NET_DVR_GetUpgradeState(
  LONG   lUpgradeHandle
);

Parameters

lUpgradeHandle
[in] NET_DVR_Upgrade的返回值

Return Values

-1表示失败，其他值定义如下：
1－升级成功
2－正在升级
3－升级失败
4－网络断开，状态未知
5－升级文件语言版本不匹配

获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Upgrade


NET_DVR_GetUpgradeStep

获取远程升级的阶段信息。

LONG  NET_DVR_GetUpgradeStep(
  LONG   lUpgradeHandle,
  LONG   *pSubProgress
);

Parameters

lUpgradeHandle
[in] NET_DVR_Upgrade的返回值
pSubProgress
[in] 升级阶段子进度

Return Values

-1表示失败，其他值定义如下：
宏定义 | 宏定义值 | 含义
STEP_RECV_DATA | 1 | 接收升级包数据
STEP_UPGRADE | 2 | 升级系统
STEP_BACKUP | 3 | 备份系统
STEP_SEARCH | 255 | 设备正在搜索升级文件

获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Upgrade


NET_DVR_CloseUpgradeHandle

关闭远程升级句柄，释放资源。

BOOL NET_DVR_CloseUpgradeHandle(
  LONG   lUpgradeHandle
);

Parameters

lUpgradeHandle
[in] NET_DVR_Upgrade的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

See Also

NET_DVR_Upgrade


NET_DVR_FindDVRLog_V30

查找设备的日志信息（可搜索带S.M.A.R.T信息的日志）。

LONG NET_DVR_FindDVRLog_V30(
  LONG              lUserID,
  LONG              lSelectMode,
  DWORD             dwMajorType,
  DWORD             dwMinorType,
  LPNET_DVR_TIME    lpStartTime,
  LPNET_DVR_TIME    lpStopTime,
  BOOL              bOnlySmart
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lSelectMode
[in] 查询方式：0－全部；1－按类型；2－按时间；3－按时间和类型
dwMajorType
[in] 日志主类型（S.M.A.R.T搜索时无效），0表示全部类型，其他类型定义如下：
宏定义 | 宏定义值 | 含义
MAJOR_ALARM | 0x1 | 报警
MAJOR_EXCEPTION | 0x2 | 异常
MAJOR_OPERATION | 0x3 | 操作
MAJOR_INFORMATION | 0x4 | 日志附加信息
dwMinorType
[in] 日志次类型（S.M.A.R.T搜索时无效），0表示全部类型，根据不同的主类型的次类型定义如下：
主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_ALARM | 0x1 | 报警
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_ALARM_IN | 0x1 | 报警输入
MINOR_ALARM_OUT | 0x2 | 报警输出
MINOR_MOTDET_START | 0x3 | 移动侦测报警开始
MINOR_MOTDET_STOP | 0x4 | 移动侦测报警结束
MINOR_HIDE_ALARM_START | 0x5 | 遮挡报警开始
MINOR_HIDE_ALARM_STOP | 0x6 | 遮挡报警结束
MINOR_VCA_ALARM_START | 0x7 | 智能报警开始
MINOR_VCA_ALARM_STOP | 0x8 | 智能报警结束
MINOR_ITS_ALARM_START | 0x09 | 交通事件报警开始
MINOR_ITS_ALARM_STOP | 0x0a | 交通事件报警结束
MINOR_NETALARM_START | 0x0b | 网络报警开始
MINOR_NETALARM_STOP | 0x0c | 网络报警结束
MINOR_NETALARM_RESUME | 0x0d | 网络报警恢复
MINOR_WIRELESS_ALARM_START | 0x0e | 无线报警开始
MINOR_WIRELESS_ALARM_STOP | 0x0f | 无线报警结束
MINOR_PIR_ALARM_START | 0x10 | 人体感应报警开始
MINOR_PIR_ALARM_STOP | 0x11 | 人体感应报警结束
MINOR_CALLHELP_ALARM_START | 0x12 | 呼救报警开始
MINOR_CALLHELP_ALARM_STOP | 0x13 | 呼救报警结束

主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_EXCEPTION | 0x2 | 异常
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_RAID_ERROR | 0x20 | 阵列异常
MINOR_VI_LOST | 0x21 | 视频信号丢失
MINOR_ILLEGAL_ACCESS | 0x22 | 非法访问
MINOR_HD_FULL | 0x23 | 硬盘满
MINOR_HD_ERROR | 0x24 | 硬盘错误
MINOR_DCD_LOST | 0x25 | MODEM 掉线(保留)
MINOR_IP_CONFLICT | 0x26 | IP地址冲突
MINOR_NET_BROKEN | 0x27 | 网络断开
MINOR_REC_ERROR | 0x28 | 录像出错
MINOR_IPC_NO_LINK | 0x29 | IPC连接异常
MINOR_VI_EXCEPTION | 0x2a | 视频输入异常(只针对模拟通道)
MINOR_IPC_IP_CONFLICT | 0x2b | IPC的IP地址冲突
MINOR_SENCE_EXCEPTION | 0x2c | 场景异常
MINOR_PIC_REC_ERROR | 0x2d | 抓图出错,获取图片文件失败
MINOR_VI_MISMATCH | 0x2e | 视频制式不匹配
MINOR_RESOLUTION_MISMATCH | 0x2f | 编码分辨率和前端分辨率不匹配
MINOR_SCREEN_SUBSYSTEM_ABNORMALREBOOT | 0x3c | 子板异常启动
MINOR_SCREEN_SUBSYSTEM_ABNORMALINSERT | 0x3d | 子板插入
MINOR_SCREEN_SUBSYSTEM_ABNORMALPULLOUT | 0x3e | 子板拔出
MINOR_SCREEN_ABNARMALTEMPERATURE | 0x3f | 温度异常

主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_OPERATION | 0x3 | 操作
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_START_DVR | 0x41 | 开机
MINOR_STOP_DVR | 0x42 | 关机
MINOR_STOP_ABNORMAL | 0x43 | 异常关机
MINOR_REBOOT_DVR | 0x44 | 本地重启设备
MINOR_LOCAL_LOGIN | 0x50 | 本地登陆
MINOR_LOCAL_LOGOUT | 0x51 | 本地注销登陆
MINOR_LOCAL_CFG_PARM | 0x52 | 本地配置参数
MINOR_LOCAL_PLAYBYFILE | 0x53 | 本地按文件回放或下载
MINOR_LOCAL_PLAYBYTIME | 0x54 | 本地按时间回放或下载
MINOR_LOCAL_START_REC | 0x55 | 本地开始录像
MINOR_LOCAL_STOP_REC | 0x56 | 本地停止录像
MINOR_LOCAL_PTZCTRL | 0x57 | 本地云台控制
MINOR_LOCAL_PREVIEW | 0x58 | 本地预览(保留不使用)
MINOR_LOCAL_MODIFY_TIME | 0x59 | 本地修改时间(保留不使用)
MINOR_LOCAL_UPGRADE | 0x5a | 本地升级
MINOR_LOCAL_RECFILE_OUTPUT | 0x5b | 本地备份录象文件
MINOR_LOCAL_FORMAT_HDD | 0x5c | 本地初始化硬盘
MINOR_LOCAL_CFGFILE_OUTPUT | 0x5d | 导出本地配置文件
MINOR_LOCAL_CFGFILE_INPUT | 0x5e | 导入本地配置文件
MINOR_LOCAL_COPYFILE | 0x5f | 本地备份文件
MINOR_LOCAL_LOCKFILE | 0x60 | 本地锁定录像文件
MINOR_LOCAL_UNLOCKFILE | 0x61 | 本地解锁录像文件
MINOR_LOCAL_DVR_ALARM | 0x62 | 本地手动清除和触发报警
MINOR_IPC_ADD | 0x63 | 本地添加IPC
MINOR_IPC_DEL | 0x64 | 本地删除IPC
MINOR_IPC_SET | 0x65 | 本地设置IPC
MINOR_LOCAL_START_BACKUP | 0x66 | 本地开始备份
MINOR_LOCAL_STOP_BACKUP | 0x67 | 本地停止备份
MINOR_LOCAL_COPYFILE_START_TIME | 0x68 | 本地备份开始时间
MINOR_LOCAL_COPYFILE_END_TIME | 0x69 | 本地备份结束时间
MINOR_LOCAL_ADD_NAS | 0x6a | 本地添加网络硬盘
MINOR_LOCAL_DEL_NAS | 0x6b | 本地删除NAS盘
MINOR_LOCAL_SET_NAS | 0x6c | 本地设置NAS盘
MINOR_REMOTE_LOGIN | 0x70 | 远程登录
MINOR_REMOTE_LOGOUT | 0x71 | 远程注销登陆
MINOR_REMOTE_START_REC | 0x72 | 远程开始录像
MINOR_REMOTE_STOP_REC | 0x73 | 远程停止录像
MINOR_START_TRANS_CHAN | 0x74 | 开始透明传输
MINOR_STOP_TRANS_CHAN | 0x75 | 停止透明传输
MINOR_REMOTE_GET_PARM | 0x76 | 远程获取参数
MINOR_REMOTE_CFG_PARM | 0x77 | 远程配置参数
MINOR_REMOTE_GET_STATUS | 0x78 | 远程获取状态
MINOR_REMOTE_ARM | 0x79 | 远程布防
MINOR_REMOTE_DISARM | 0x7a | 远程撤防
MINOR_REMOTE_REBOOT | 0x7b | 远程重启
MINOR_START_VT | 0x7c | 开始语音对讲
MINOR_STOP_VT | 0x7d | 停止语音对讲
MINOR_REMOTE_UPGRADE | 0x7e | 远程升级
MINOR_REMOTE_PLAYBYFILE | 0x7f | 远程按文件回放
MINOR_REMOTE_PLAYBYTIME | 0x80 | 远程按时间回放
MINOR_REMOTE_PTZCTRL | 0x81 | 远程云台控制
MINOR_REMOTE_FORMAT_HDD | 0x82 | 远程格式化硬盘
MINOR_REMOTE_STOP | 0x83 | 远程关机
MINOR_REMOTE_LOCKFILE | 0x84 | 远程锁定文件
MINOR_REMOTE_UNLOCKFILE | 0x85 | 远程解锁文件
MINOR_REMOTE_CFGFILE_OUTPUT | 0x86 | 远程导出配置文件
MINOR_REMOTE_CFGFILE_INTPUT | 0x87 | 远程导入配置文件
MINOR_REMOTE_RECFILE_OUTPUT | 0x88 | 远程导出录象文件
MINOR_REMOTE_DVR_ALARM | 0x89 | 远程手动清除和触发报警
MINOR_REMOTE_IPC_ADD | 0x8a | 远程添加IPC
MINOR_REMOTE_IPC_DEL | 0x8b | 远程删除IPC
MINOR_REMOTE_IPC_SET | 0x8c | 远程设置IPC
MINOR_REBOOT_VCA_LIB | 0x8d | 重启智能库
MINOR_REMOTE_ADD_NAS | 0x8e | 远程添加NAS盘
MINOR_REMOTE_DEL_NAS | 0x8f | 远程删除NAS盘
MINOR_REMOTE_SET_NAS | 0x90 | 远程设置NAS盘
MINOR_LOCAL_START_REC_CDRW | 0x91 | 本地开始刻录
MINOR_LOCAL_STOP_REC_CDRW | 0x92 | 本地停止刻录
MINOR_REMOTE_START_REC_CDRW | 0x93 | 远程开始刻录
MINOR_REMOTE_STOP_REC_CDRW | 0x94 | 远程停止刻录
MINOR_LOCAL_PIC_OUTPUT | 0x95 | 本地备份图片文件
MINOR_REMOTE_SET_NAS | 0x96 | 远程备份图片文件
MINOR_LOCAL_INQUEST_RESUME | 0x97 | 本地恢复审讯事件
MINOR_REMOTE_INQUEST_RESUME | 0x98 | 远程恢复审讯事件
MINOR_REMOTE_BYPASS | 0xd0 | 远程旁路
MINOR_REMOTE_UNBYPASS | 0xd1 | 远程旁路恢复
MINOR_REMOTE_SET_ALARMIN_CFG | 0xd2 | 远程设置报警输入参数
MINOR_REMOTE_GET_ALARMIN_CFG | 0xd3 | 远程获取报警输入参数
MINOR_REMOTE_SET_ALARMOUT_CFG | 0xd4 | 远程设置报警输出参数
MINOR_REMOTE_GET_ALARMOUT_CFG | 0xd5 | 远程获取报警输出参数
MINOR_REMOTE_ALARMOUT_OPEN_MAN | 0xd6 | 远程手动开启报警输出
MINOR_REMOTE_ALARMOUT_CLOSE_MAN | 0xd7 | 远程手动关闭报警输出
MINOR_REMOTE_ALARM_ENABLE_CFG | 0xd8 | 远程设置报警主机的RS485串口使能状态
MINOR_DBDATA_OUTPUT | 0xd9 | 导出数据库记录
MINOR_DBDATA_INPUT | 0xda | 导入数据库记录
MINOR_MU_SWITCH | 0xdb | 级联切换
MINOR_MU_PTZ | 0xdc | 级联PTZ控制
MINOR_LOCAL_CONF_REB_RAID | 0x101 | 本地配置自动重建
MINOR_LOCAL_CONF_SPARE | 0x102 | 本地配置热备
MINOR_LOCAL_ADD_RAID | 0x103 | 本地创建阵列
MINOR_LOCAL_DEL_RAID | 0x104 | 本地删除阵列
MINOR_LOCAL_MIG_RAID | 0x105 | 本地迁移阵列
MINOR_LOCAL_REB_RAID | 0x106 | 本地手动重建阵列
MINOR_LOCAL_QUICK_CONF_RAID | 0x107 | 本地一键配置
MINOR_LOCAL_ADD_VD | 0x108 | 本地创建虚拟磁盘
MINOR_LOCAL_DEL_VD | 0x109 | 本地删除虚拟磁盘
MINOR_LOCAL_RP_VD | 0x10a | 本地修复虚拟磁盘
MINOR_LOCAL_FORMAT_EXPANDVD | 0x10b | 本地扩展虚拟磁盘扩容
MINOR_LOCAL_RAID_UPGRADE | 0x10c | 本地raid卡升级
MINOR_LOCAL_STOP_RAID | 0x10d | 本地暂停RAID操作(即安全拔盘)
MINOR_REMOTE_CONF_REB_RAID | 0x111 | 远程配置自动重建
MINOR_REMOTE_CONF_SPARE | 0x112 | 远程配置热备
MINOR_REMOTE_ADD_RAID | 0x113 | 远程创建阵列
MINOR_REMOTE_DEL_RAID | 0x114 | 远程删除阵列
MINOR_REMOTE_MIG_RAID | 0x115 | 远程迁移阵列
MINOR_REMOTE_REB_RAID | 0x116 | 远程手动重建阵列
MINOR_REMOTE_QUICK_CONF_RAID | 0x117 | 远程一键配置
MINOR_REMOTE_ADD_VD | 0x118 | 远程创建虚拟磁盘
MINOR_REMOTE_DEL_VD | 0x119 | 远程删除虚拟磁盘
MINOR_REMOTE_RP_VD | 0x11a | 远程修复虚拟磁盘
MINOR_REMOTE_FORMAT_EXPANDVD | 0x11b | 远程虚拟磁盘扩容
MINOR_REMOTE_RAID_UPGRADE | 0x11c | 远程raid卡升级
MINOR_REMOTE_STOP_RAID | 0x11d | 远程暂停RAID操作(即安全拔盘)
MINOR_LOCAL_START_PIC_REC | 0x121 | 本地开始抓图
MINOR_LOCAL_STOP_PIC_REC | 0x122 | 本地停止抓图
MINOR_LOCAL_SET_SNMP | 0x125 | 本地配置SNMP
MINOR_LOCAL_TAG_OPT | 0x126 | 本地标签操作
MINOR_REMOTE_START_PIC_REC | 0x131 | 远程开始抓图
MINOR_REMOTE_STOP_PIC_REC | 0x132 | 远程停止抓图
MINOR_REMOTE_SET_SNMP | 0x135 | 远程配置SNMP
MINOR_REMOTE_TAG_OPT | 0x136 | 远程标签操作
MINOR_SET_MULTI_MASTER | 0x201 | 设置大屏主屏
MINOR_SET_MULTI_SLAVE | 0x202 | 设置大屏子屏
MINOR_CANCEL_MULTI_MASTER | 0x203 | 取消大屏主屏
MINOR_CANCEL_MULTI_SLAVE | 0x204 | 取消大屏子屏
MINOR_SCREEN_SET_INPUT | 0x251 | 修改输入源
MINOR_SCREEN_SET_OUTPUT | 0x252 | 修改输出通道
MINOR_SCREEN_SET_OSD | 0x253 | 修改OSD
MINOR_SCREEN_SET_LOGO | 0x254 | 修改LOGO
MINOR_SCREEN_SET_LAYOUT | 0x255 | 设置布局
MINOR_SET_TRIGGERMODE_CFG | 0x1001 | 设置触发模式参数
MINOR_GET_TRIGGERMODE_CFG | 0x1002 | 获取触发模式参数
MINOR_SET_IOOUT_CFG | 0x1003 | 设置IO输出参数
MINOR_GET_IOOUT_CFG | 0x1004 | 获取IO输出参数
MINOR_GET_TRIGGERMODE_DEFAULT | 0x1005 | 获取触发模式推荐参数
MINOR_GET_ITCSTATUS | 0x1006 | 获取状态检测参数
MINOR_SET_STATUS_DETECT_CFG | 0x1007 | 设置状态检测参数
MINOR_GET_STATUS_DETECT_CFG | 0x1008 | 获取状态检测参数
MINOR_GET_VIDEO_TRIGGERMODE_CFG | 0x1009 | 获取视频电警模式参数
MINOR_SET_VIDEO_TRIGGERMODE_CFG | 0x100a | 设置视频电警模式参数

主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_INFORMATION | 0x4 | 附加信息
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_HDD_INFO | 0xa1 | 硬盘信息
MINOR_SMART_INFO | 0xa2 | S.M.A.R.T信息
MINOR_REC_START | 0xa3 | 开始录像
MINOR_REC_STOP | 0xa4 | 停止录像
MINOR_REC_OVERDUE | 0xa5 | 过期录像删除
MINOR_LINK_START | 0xa6 | 连接前端设备
MINOR_LINK_STOP | 0xa7 | 断开前端设备
MINOR_NET_DISK_INFO | 0xa8 | 网络硬盘信息
MINOR_RAID_INFO | 0xa9 | raid相关信息
MINOR_PIC_REC_START | 0xb3 | 开始抓图
MINOR_PIC_REC_STOP | 0xb4 | 停止抓图
MINOR_PIC_REC_OVERDUE | 0xb5 | 过期图片文件删除
lpStartTime
[in] 文件的开始时间
lpStopTime
[in] 文件结束时间
bOnlySmart
[in] 是否只搜索带S.M.A.R.T信息的日志

Return Values

-1表示失败，其他值作为NET_DVR_FindNextLog_V30等函数的参数。获取错误码调用NET_DVR_GetLastError

Remarks

该接口如果用于搜索普通日志信息，一般设备（81xx，80xx等）支持2000条，9000v2.0支持4000条，81xxST支持1000条，报警器支持200条。而搜索带S.M.A.R.T信息的日志最大只支持500条， 通常不需要搜索详细的S.M.A.R.T信息时，置bOnlySmart为FALSE即可完成所有日志信息的搜索。
S.M.A.R.T信息：硬盘运行日志记录。

See Also

NET_DVR_FindNextLog_V30

NET_DVR_FindLogClose_V30

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于

NET_DVR_FindDVRLog


NET_DVR_FindNextLog_V30

逐条获取查找到的日志信息。

LONG NET_DVR_FindNextLog_V30(
  LONG                 lLogHandle,
  LPNET_DVR_LOG_V30    lpLogData
);

Parameters

lLogHandle
[in] 日志查找句柄，NET_DVR_FindDVRLog_V30的返回值
lpLogData
[out] 保存日志信息的指针

Return Values

-1表示失败，其他值表示当前的获取状态等信息，详见下表。获取错误码调用NET_DVR_GetLastError

宏定义 | 宏定义值 | 含义
NET_DVR_FILE_SUCCESS | 1000 | 获取日志信息成功
NET_DVR_FILE_NOFIND | 1001 | 未查找到日志
NET_DVR_ISFINDING | 1002 | 正在查找请等待
NET_DVR_NOMOREFILE | 1003 | 没有更多的日志，查找结束
NET_DVR_FILE_EXCEPTION | 1004 | 查找日志时异常

Remarks

在调用该接口获取查找日志之前，必须先调用NET_DVR_FindDVRLog_V30得到当前的查找句柄。

See Also

NET_DVR_FindDVRLog_V30

Reference Interface

该接口扩展源于

NET_DVR_FindNextLog


NET_DVR_FindLogClose_V30

释放查找日志的资源。

BOOL NET_DVR_FindLogClose_V30(
  LONG   lLogHandle
);

Parameters

lLogHandle
[in] 日志查找句柄，NET_DVR_FindDVRLog_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_FindDVRLog_V30

Reference Interface

该接口扩展源于

NET_DVR_FindLogClose


NET_DVR_RestoreConfig

恢复设备默认参数。

BOOL NET_DVR_RestoreConfig(
  LONG    lUserID
);

Parameters

lUserID
[in] 用户ID号，NET_DVR_Login或NET_DVR_Login_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetConfigFile_V30

导出配置文件。

BOOL NET_DVR_GetConfigFile_V30(
  LONG    lUserID,
  char    *sOutBuffer,
  DWORD   dwOutSize,
  DWORD   *pReturnSize
);

Parameters

lUserID
[in] 用户ID号，NET_DVR_Login或NET_DVR_Login_V30的返回值
sOutBuffer
[out] 存放配置参数的缓冲区
dwOutSize
[in] 缓冲区大小
pReturnSize
[out] 实际获得的缓冲区大小

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

当sOutBuffer = NULL、dwOutSize = 0且pReturnSize != NULL时用于获取参数配置文件的所需的缓冲区长度； 当sOutBuffer != NULL且dwOutSize != 0时用于获取参数配置文件的所需的缓冲区内容。

See Also

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于

NET_DVR_GetConfigFile_EX


NET_DVR_GetConfigFile

导出配置文件。

BOOL NET_DVR_GetConfigFile(
  LONG    lUserID,
  char    *sFileName
);

Parameters

lUserID
[in] 用户ID号，NET_DVR_Login或NET_DVR_Login_V30的返回值
sFileName
[in] 存放保存配置文件的文件路径（二进制文件）

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_SetConfigFile_EX

导入配置文件。

BOOL NET_DVR_SetConfigFile_EX(
  LONG    lUserID,
  char    *sInBuffer,
  DWORD   dwInSize
);

Parameters

lUserID
[in] 用户ID号，NET_DVR_Login或NET_DVR_Login_V30的返回值
sInBuffer
[in] 存放配置参数的缓冲区
dwInSize
[in] 缓冲区大小

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_SetConfigFile

导入配置文件。

BOOL NET_DVR_SetConfigFile(
  LONG    lUserID,
  char    *sFileName
);

Parameters

lUserID
[in] 用户ID号，NET_DVR_Login或NET_DVR_Login_V30的返回值
sFileName
[in] 存放保存配置文件的文件路径（二进制文件）

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_StartNetworkFlowTest

开始网络流量检测。

LONG NET_DVR_StartNetworkFlowTest(
  LONG                          lUserID,
  LPNET_DVR_FLOW_TEST_PARAM     pFlowTest,
  FLOWTESTCALLBACK              fFlowTestCallback,
  void                          *pUser,
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pFlowTest
[in] 网络流量参数
fFlowTestCallback
[in] 网络流量检测回调函数
pUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *fFlowTestCallback)(
  LONG                  lFlowHandle,
  LPNET_DVR_FLOW_INFO   pFlowInfo,
  void                  *pUser
);

Callback Function Parameters

lFlowHandle
[out] 当前的检测句柄
pFlowInfo
[out] 网络流量检测结果
pUser
[out] 用户数据

Return Values

-1表示失败，其他值作为NET_DVR_StopNetworkFlowTest等函数的句柄参数。获取错误码调用NET_DVR_GetLastError

Remarks

See Also

NET_DVR_StopNetworkFlowTest


NET_DVR_StopNetworkFlowTest

停止网络流量检测。

BOOL NET_DVR_StopNetworkFlowTest(
  LONG                  lHandle,
);

Parameters

lHandle
[in] NET_DVR_StartNetworkFlowTest的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

See Also

NET_DVR_StartNetworkFlowTest


NET_DVR_RebootDVR

重启设备。

BOOL NET_DVR_RebootDVR(
  LONG   lUserID
);

Parameters

lUserID
[in] 用户ID号，NET_DVR_Login或NET_DVR_Login_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_ShutDownDVR

关闭设备。

BOOL NET_DVR_ShutDownDVR(
  LONG   lUserID
);

Parameters

lUserID
[in] 用户ID号，NET_DVR_Login或NET_DVR_Login_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_DEVICECFG_V40 | 获取设备参数(扩展) | 无效 | NET_DVR_DEVICECFG_V40 | 1100
NET_DVR_GET_TIMECFG | 获取时间参数 | 无效 | NET_DVR_TIME | 118
NET_DVR_GET_NETCFG_V30 | 获取网络参数 | 无效 | NET_DVR_NETCFG_V30 | 1000
NET_DVR_GET_PICCFG_V30 | 获取图像参数 | 有效 | NET_DVR_PICCFG_V30 | 1002
NET_DVR_GET_COMPRESSCFG_V30 | 获取压缩参数 | 有效 | NET_DVR_COMPRESSIONCFG_V30 | 1040
NET_DVR_GET_RECORDCFG_V30 | 获取录像参数 | 有效 | NET_DVR_RECORD_V30 | 1004
NET_DVR_GET_DECODERCFG_V30 | 获取（云台）解码器参数 | 有效 | NET_DVR_DECODERCFG_V30 | 1042
NET_DVR_GET_RS232CFG_V30 | 获取232串口参数 | 无效 | NET_DVR_RS232CFG_V30 | 1036
NET_DVR_GET_ALARMINCFG_V30 | 获取报警输入参数 | 有效 | NET_DVR_ALARMINCFG_V30 | 1024
NET_DVR_GET_ALARMOUTCFG_V30 | 获取报警输出参数 | 有效 | NET_DVR_ALARMOUTCFG_V30 | 1026
NET_DVR_GET_PREVIEWCFG_V30 | 获取本地预览参数 | 无效 | NET_DVR_PREVIEWCFG_V30 | 1044
NET_DVR_GET_PREVIEWCFG_AUX_V30 | 获取辅助预览参数 | 无效 | NET_DVR_PREVIEWCFG_V30 | 1046
NET_DVR_GET_VIDEOOUTCFG_V30 | 获取视频输出参数 | 无效 | NET_DVR_VIDEOOUT_V30 | 1028
NET_DVR_GET_USERCFG_V30 | 获取用户参数 | 无效 | NET_DVR_USER_V30 | 1006
NET_DVR_GET_EXCEPTIONCFG_V30 | 获取异常参数 | 无效 | NET_DVR_EXCEPTION_V30 | 1034
NET_DVR_GET_ZONEANDDST | 获取时区和夏时制参数 | 无效 | NET_DVR_ZONEANDDST | 128
NET_DVR_GET_SHOWSTRING_V30 | 获取叠加字符参数 | 有效 | NET_DVR_SHOWSTRING_V30 | 1030
NET_DVR_GET_AUXOUTCFG | 获取报警触发辅助输出参数 | 无效 | NET_DVR_AUXOUTCFG | 140
NET_DVR_GET_NETAPPCFG | 获取网络应用参数(NTP/DDNS) | 无效 | NET_DVR_NETAPPCFG | 222
NET_DVR_GET_NTPCFG | 获取网络应用参数(NTP) | 无效 | NET_DVR_NTPPARA | 224
NET_DVR_GET_DDNSCFG_V30 | 获取网络应用参数(DDNS) | 无效 | NET_DVR_DDNSPARA_V30 | 1010
NET_DVR_GET_EMAILCFG_V30 | 获取网络应用参数(EMAIL) | 无效 | NET_DVR_EMAILCFG_V30 | 1012
NET_DVR_GET_NFSCFG | 获取NFS（网络文件系统）参数 | 无效 | NET_DVR_NFSCFG | 230
NET_DVR_GET_IPPARACFG_V31 | 获取IP接入配置参数 | 无效 | NET_DVR_IPPARACFG_V31 | 1060
NET_DVR_GET_IPPARACFG_V40 | 获取IP接入配置参数 | 有效 | NET_DVR_IPPARACFG_V40 | 1062
NET_DVR_GET_IPALARMINCFG | 获取IP报警输入接入配置参数 | 无效 | NET_DVR_IPALARMINCFG | 1050
NET_DVR_GET_IPALARMOUTCFG | 获取IP报警输出接入配置参数 | 无效 | NET_DVR_IPALARMOUTCFG | 1052
NET_DVR_GET_HDCFG | 获取硬盘管理参数 | 无效 | NET_DVR_HDCFG | 1054
NET_DVR_GET_HDGROUP_CFG | 获取盘组管理参数 | 无效 | NET_DVR_HDGROUP_CFG | 1056
NET_DVR_GET_PTZPOS | 获取IP快球PTZ参数 | 有效 | NET_DVR_PTZPOS | 293
NET_DVR_GET_PTZSCOPE | 获取IP快球PTZ范围参数 | 有效 | NET_DVR_PTZSCOPE | 294
NET_DVR_GET_CRUISE | 获取巡航参数 | 有效 | NET_DVR_CRUISE_PARA | 1020
NET_DVR_GET_COMPRESSCFG_AUD | 获取语音对讲音频参数 | 无效 | NET_DVR_COMPRESSION_AUDIO | 1058
NET_DVR_GET_AP_INFO_LIST | 获取无线网络资源参数 | 无效 | NET_DVR_AP_INFO_LIST | 305
NET_DVR_GET_WIFI_CFG | 获取IP监控设备无线参数 | 无效 | NET_DVR_WIFI_CFG | 307
NET_DVR_GET_WIFI_WORKMODE | 获取IP监控设备网口参数 | 无效 | NET_DVR_WIFI_WORKMODE | 309
NET_DVR_GET_NET_DISKCFG | 获取网络硬盘接入参数 | 无效 | NET_DVR_NET_DISKCFG | 1038
NET_DVR_GET_CCDPARAMCFG | 获取前端参数 | 无效 | NET_DVR_CAMERAPARAMCFG | 1067
NET_DVR_GET_ZEROCHANCFG | 获取零通道压缩参数 | 有效 | NET_DVR_ZEROCHANCFG | 1102
NET_DVR_GET_ZERO_PREVIEWCFG_V30 | 获取零通道本地预览参数 | 有效 | NET_DVR_PREVIEWCFG_V30 | 1104
NET_DVR_GET_ZERO_ZOOM | 获取零通道缩放参数 | 有效 | NET_DVR_ZERO_ZOOMCFG | 1107
NET_DVR_GET_SNMPCFG | 获取SNMP参数 | 无效 | NET_DVR_SNMPCFG | 1112
NET_DVR_GET_SNMPCFG_V30 | 获取SNMP参数 | 无效 | NET_DVR_SNMPCFG_V30 | 1114
NET_DVR_GET_NETCFG_MULTI | 获取多网卡配置参数 | 无效 | NET_DVR_NETCFG_MULTI | 1161
NET_DVR_GET_NETWORK_BONDING | 获取BONDING网卡参数 | 无效 | NET_DVR_NETWORK_BONDING | 1254
NET_DVR_GET_HOLIDAY_PARAM_CFG | 获取节假日参数 | 无效 | NET_DVR_HOLIDAY_PARAM_CFG | 1240
NET_DVR_GET_MOTION_HOLIDAY_HANDLE | 获取移动侦测假日报警处理方式 | 有效 | NET_DVR_HOLIDAY_HANDLE | 1242
NET_DVR_GET_VILOST_HOLIDAY_HANDLE | 获取视频信号丢失假日报警处理方式 | 有效 | NET_DVR_HOLIDAY_HANDLE | 1244
NET_DVR_GET_HIDE_HOLIDAY_HANDLE | 获取遮盖假日报警处理方式 | 有效 | NET_DVR_HOLIDAY_HANDLE | 1246
NET_DVR_GET_ALARMIN_HOLIDAY_HANDLE | 获取报警输入假日报警处理方式 | 有效 | NET_DVR_HOLIDAY_HANDLE | 1248
NET_DVR_GET_ALARMOUT_HOLIDAY_HANDLE | 获取报警输出假日报警处理方式 | 有效 | NET_DVR_HOLIDAY_HANDLE | 1250
NET_DVR_GET_HOLIDAY_RECORD | 获取假日录像参数 | 有效 | NET_DVR_HOLIDAY_RECORD | 1252
NET_DVR_GET_LINK_STATUS | 获取通道的工作状态 | 有效（组号） | NET_DVR_LINK_STATUS | 1256
NET_DVR_GET_DISK_QUOTA_CFG | 获取磁盘配额信息 | 无效 | NET_DVR_DISK_QUOTA_CFG | 1278
NET_DVR_GET_JPEG_CAPTURE_CFG | 获取设备抓图配置 | 有效 | NET_DVR_JPEG_CAPTURE_CFG | 1280
NET_DVR_GET_SCHED_CAPTURECFG | 获取抓图计划 | 有效 | NET_DVR_SCHED_CAPTURECFG | 1282
NET_DVR_GET_FTPCFG | 获取抓图FTP上传参数 | 无效 | NET_DVR_FTPCFG | 134
NET_DVR_GET_VIDEO_INPUT_EFFECT | 获取通道视频输入图像参数 | 有效 | NET_DVR_VIDEO_INPUT_EFFECT | 1286
NET_DVR_GET_DVR_SYNCHRONOUS_IPC | 获取是否为前端IPC同步设备参数 | 无效 | NET_DVR_SYNCHRONOUS_IPC | 6005
NET_DVR_GET_DEVICE_NET_USING_INFO | 获取当前设备网络资源使用情况 | 无效 | NET_DVR_DEVICE_NET_USING_INFO | 6009
NET_DVR_GET_DISK_RAID_INFO | 获取磁盘Raid信息 | 无效 | NET_DVR_DISK_RAID_INFO | 6001
NET_DVR_GET_RECORD_CHANNEL_INFO | 获取通道录像状态信息 | 有效 | NET_DVR_CHAN_GROUP_RECORD_STATUS | 6013
NET_DVR_GET_ACCESS_CAMERA_INFO | 获取通道对应的前端相机信息 | 有效 | NET_DVR_ACCESS_CAMERA_INFO | 6201
NET_DVR_GET_AUDIO_INPUT | 获取音频输入参数 | 有效 | NET_DVR_AUDIO_INPUT_PARAM | 3201
NET_DVR_GET_CAMERA_DEHAZE_CFG | 获取去雾参数 | 有效 | NET_DVR_CAMERA_DEHAZE_CFG | 3203
NET_IPC_GET_AUX_ALARMCFG | 获取辅助报警参数 | 有效 | NET_IPC_AUX_ALARMCFG | 3209

对于CVR等通道号大于64的设备，lChannel表示组号，0表示第一组，1表示第二组。

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_DEVICECFG_V40 | 设置设备参数(扩展) | 无效 | NET_DVR_DEVICECFG_V40 | 1101
NET_DVR_SET_TIMECFG | 设置时间参数 | 无效 | NET_DVR_TIME | 119
NET_DVR_SET_NETCFG_V30 | 设置网络参数 | 无效 | NET_DVR_NETCFG_V30 | 1001
NET_DVR_SET_PICCFG_V30 | 设置图像参数 | 有效 | NET_DVR_PICCFG_V30 | 1003
NET_DVR_SET_COMPRESSCFG_V30 | 设置压缩参数 | 有效 | NET_DVR_COMPRESSIONCFG_V30 | 1041
NET_DVR_SET_RECORDCFG_V30 | 设置录像参数 | 有效 | NET_DVR_RECORD_V30 | 1005
NET_DVR_SET_DECODERCFG_V30 | 设置（云台）解码器参数 | 有效 | NET_DVR_DECODERCFG_V30 | 1043
NET_DVR_SET_RS232CFG_V30 | 设置232串口参数 | 无效 | NET_DVR_RS232CFG_V30 | 1037
NET_DVR_SET_ALARMINCFG_V30 | 设置报警输入参数 | 有效 | NET_DVR_ALARMINCFG_V30 | 1025
NET_DVR_SET_ALARMOUTCFG_V30 | 设置报警输出参数 | 有效 | NET_DVR_ALARMOUTCFG_V30 | 1027
NET_DVR_SET_PREVIEWCFG_V30 | 设置本地预览参数 | 无效 | NET_DVR_PREVIEWCFG_V30 | 1045
NET_DVR_SET_PREVIEWCFG_AUX_V30 | 设置辅助预览参数 | 无效 | NET_DVR_PREVIEWCFG_V30 | 1047
NET_DVR_SET_VIDEOOUTCFG_V30 | 设置视频输出参数 | 无效 | NET_DVR_VIDEOOUT_V30 | 1029
NET_DVR_SET_USERCFG_V30 | 设置用户参数 | 无效 | NET_DVR_USER_V30 | 1007
NET_DVR_SET_EXCEPTIONCFG_V30 | 设置异常参数 | 无效 | NET_DVR_EXCEPTION_V30 | 1035
NET_DVR_SET_ZONEANDDST | 设置时区和夏时制参数 | 无效 | NET_DVR_ZONEANDDST | 129
NET_DVR_SET_SHOWSTRING_V30 | 设置叠加字符参数 | 有效 | NET_DVR_SHOWSTRING_V30 | 1031
NET_DVR_SET_AUXOUTCFG | 设置报警触发辅助输出参数 | 无效 | NET_DVR_AUXOUTCFG | 141
NET_DVR_SET_NETAPPCFG | 设置网络应用参数(NTP/DDNS) | 无效 | NET_DVR_NETAPPCFG | 223
NET_DVR_SET_NTPCFG | 设置网络应用参数(NTP) | 无效 | NET_DVR_NTPPARA | 225
NET_DVR_SET_DDNSCFG_V30 | 设置网络应用参数(DDNS) | 无效 | NET_DVR_DDNSPARA_V30 | 1011
NET_DVR_SET_EMAILCFG_V30 | 设置网络应用参数(EMAIL) | 无效 | NET_DVR_EMAILCFG_V30 | 1013
NET_DVR_SET_NFSCFG | 设置NFS（网络文件系统）参数 | 无效 | NET_DVR_NFSCFG | 231
NET_DVR_SET_IPPARACFG_V31 | 设置IP接入配置参数 | 无效 | NET_DVR_IPPARACFG_V31 | 1061
NET_DVR_SET_IPPARACFG_V40 | 设置IP接入配置参数 | 有效 | NET_DVR_IPPARACFG_V40 | 1063
NET_DVR_SET_HDCFG | 设置硬盘管理参数 | 无效 | NET_DVR_HDCFG | 1055
NET_DVR_SET_HDGROUP_CFG | 设置盘组管理参数 | 无效 | NET_DVR_HDGROUP_CFG | 1057
NET_DVR_SET_PTZPOS | 设置IP快球PTZ参数 | 有效 | NET_DVR_PTZPOS | 292
NET_DVR_SET_CRUISE | 设置巡航参数 | 有效 | NET_DVR_CRUISE_PARA | 1021
NET_DVR_SET_COMPRESSCFG_AUD | 设置语音对讲音频参数 | 无效 | NET_DVR_COMPRESSION_AUDIO | 1059
NET_DVR_SET_WIFI_CFG | 设置IP监控设备无线参数 | 无效 | NET_DVR_WIFI_CFG | 306
NET_DVR_SET_WIFI_WORKMODE | 设置IP监控设备网口参数 | 无效 | NET_DVR_WIFI_WORKMODE | 308
NET_DVR_SET_NET_DISKCFG | 设置网络硬盘接入参数 | 无效 | NET_DVR_NET_DISKCFG | 1039
NET_DVR_SET_CCDPARAMCFG | 设置前端参数 | 无效 | NET_DVR_CAMERAPARAMCFG | 1068
NET_DVR_SET_ZEROCHANCFG | 设置零通道压缩参数 | 有效 | NET_DVR_ZEROCHANCFG | 1103
NET_DVR_SET_ZERO_PREVIEWCFG_V30 | 设置零通道本地预览参数 | 有效 | NET_DVR_PREVIEWCFG_V30 | 1105
NET_DVR_SET_ZERO_ZOOM | 设置零通道缩放参数 | 有效 | NET_DVR_ZERO_ZOOMCFG | 1106
NET_DVR_SET_SNMPCFG_V30 | 设置SNMP参数 | 无效 | NET_DVR_SNMPCFG_V30 | 1115
NET_DVR_SET_SNMPCFG | 设置SNMP参数 | 无效 | NET_DVR_SNMPCFG | 1113
NET_DVR_SET_NETCFG_MULTI | 设置多网卡配置参数 | 无效 | NET_DVR_NETCFG_MULTI | 1162
NET_DVR_SET_NETWORK_BONDING | 设置BONDING网卡参数 | 无效 | NET_DVR_NETWORK_BONDING | 1255
NET_DVR_SET_HOLIDAY_PARAM_CFG | 设置节假日参数 | 无效 | NET_DVR_HOLIDAY_PARAM_CFG | 1241
NET_DVR_SET_MOTION_HOLIDAY_HANDLE | 设置移动侦测假日报警处理方式 | 有效 | NET_DVR_HOLIDAY_HANDLE | 1243
NET_DVR_SET_VILOST_HOLIDAY_HANDLE | 设置视频信号丢失假日报警处理方式 | 有效 | NET_DVR_HOLIDAY_HANDLE | 1245
NET_DVR_SET_HIDE_HOLIDAY_HANDLE | 设置遮盖假日报警处理方式 | 有效 | NET_DVR_HOLIDAY_HANDLE | 1247
NET_DVR_SET_ALARMIN_HOLIDAY_HANDLE | 设置报警输入假日报警处理方式 | 有效 | NET_DVR_HOLIDAY_HANDLE | 1249
NET_DVR_SET_ALARMOUT_HOLIDAY_HANDLE | 设置报警输出假日报警处理方式 | 有效 | NET_DVR_HOLIDAY_HANDLE | 1251
NET_DVR_SET_HOLIDAY_RECORD | 设置假日录像参数 | 有效 | NET_DVR_HOLIDAY_RECORD | 1253
NET_DVR_SET_DISK_QUOTA_CFG | 设置磁盘配额信息 | 无效 | NET_DVR_DISK_QUOTA_CFG | 1279
NET_DVR_SET_JPEG_CAPTURE_CFG | 设置设备抓图配置 | 有效 | NET_DVR_JPEG_CAPTURE_CFG | 1281
NET_DVR_SET_SCHED_CAPTURECFG | 设置抓图计划 | 有效 | NET_DVR_SCHED_CAPTURECFG | 1283
NET_DVR_SET_FTPCFG | 设置抓图FTP上传参数 | 无效 | NET_DVR_FTPCFG | 135
NET_DVR_SET_VIDEO_INPUT_EFFECT | 设置通道视频输入图像参数 | 有效 | NET_DVR_VIDEO_INPUT_EFFECT | 1287
NET_DVR_SET_DVR_SYNCHRONOUS_IPC | 设置是否为前端IPC同步设备参数 | 无效 | NET_DVR_SYNCHRONOUS_IPC | 6006
NET_DVR_SET_DVR_IPC_PASSWD | 设置IPC用户名密码 | 有效 | NET_DVR_IPC_PASSWD | 6008
NET_DVR_SET_DVR_IPC_NET | 设置前端IPC的网络地址 | 有效 | NET_DVR_IPC_NETCFG | 6012
NET_DVR_SET_DISK_RAID_INFO | 设置磁盘Raid信息 | 无效 | NET_DVR_DISK_RAID_INFO | 6002
NET_DVR_SET_RECORD_CHANNEL_INFO | 设置通道录像状态信息 | 有效 | NET_DVR_CHAN_GROUP_RECORD_STATUS | 6014
NET_DVR_SET_ACCESS_CAMERA_INFO | 设置通道对应的前端相机信息 | 有效 | NET_DVR_ACCESS_CAMERA_INFO | 6202
NET_DVR_SET_AUDIO_INPUT | 设置音频输入参数 | 有效 | NET_DVR_AUDIO_INPUT_PARAM | 3202
NET_DVR_SET_CAMERA_DEHAZE_CFG | 设置去雾参数 | 有效 | NET_DVR_CAMERA_DEHAZE_CFG | 3204
NET_IPC_SET_AUX_ALARMCFG | 设置辅助报警参数 | 有效 | NET_IPC_AUX_ALARMCFG | 3210

对于CVR等通道号大于64的设备，lChannel表示组号，0表示第一组，1表示第二组。

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_GetAlarmOut_V30

获取设备报警输出。

BOOL NET_DVR_GetAlarmOut_V30(
  LONG                             lUserID,
  LPNET_DVR_ALARMOUTSTATUS_V30     lpAlarmOutState
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpAlarmOutState
[out] 报警输出状态

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SetAlarmOut


NET_DVR_GetAlarmOut

获取设备报警输出。

BOOL NET_DVR_GetAlarmOut(
  LONG                         lUserID,
  LPNET_DVR_ALARMOUTSTATUS     lpAlarmOutState
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpAlarmOutState
[out] 报警输出状态

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SetAlarmOut


NET_DVR_SetAlarmOut

设置设备报警输出。

BOOL NET_DVR_SetAlarmOut(
  LONG     lUserID,
  LONG     lAlarmOutPort,
  LONG     lAlarmOutStatic
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lAlarmOutPort
[in] 报警输出口。初始输出口从0开始，0x00ff表示全部模拟输出，0xff00表示全部数字输出，DS-90xx系列设备同时支持对IP接入的报警输出进行处理，对应32-95为数字报警输出
lAlarmOutStatic
[in] 报警输出状态：0－停止输出，1－输出

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_GetAlarmOut


NET_DVR_GetATMPortCFG

获取ATM机监听端口。

BOOL NET_DVR_GetATMPortCFG(
  LONG     lUserID,
  WORD     *lpOutATMPort
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpOutATMPort
[out] 监听端口

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SetATMPortCFG


NET_DVR_SetATMPortCFG

设置ATM机监听端口。

BOOL NET_DVR_SetATMPortCFG(
  LONG     lUserID,
  WORD     wATMPort
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
wATMPort
[in] 监听端口

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_GetATMPortCFG


NET_DVR_ClientGetframeformat

获取ATM机的交易协议信息。

BOOL NET_DVR_ClientGetframeformat(
  LONG                      lUserID,
  LPNET_DVR_FRAMEFORMAT     lpFrameFormat
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpFrameFormat
[out] ATM机交易协议参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_NETWORK_ERRORDATA | 11 | 传送的数据有误。发送给设备或者从设备接收到的数据错误，如远程参数配置时输入设备不支持的值。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

See Also

NET_DVR_ClientSetframeformat


NET_DVR_ClientSetframeformat

设置ATM机的交易协议信息。

BOOL NET_DVR_ClientSetframeformat(
  LONG                      lUserID,
  LPNET_DVR_FRAMEFORMAT     lpFrameFormat
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpFrameFormat
[in] ATM机交易协议参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_NETWORK_ERRORDATA | 11 | 传送的数据有误。发送给设备或者从设备接收到的数据错误，如远程参数配置时输入设备不支持的值。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。

See Also

NET_DVR_ClientGetframeformat


NET_DVR_GetAtmProtocol

获取ATM协议列表。

BOOL NET_DVR_GetAtmProtocol(
  LONG     	 	   lUserID,
  LPNET_DVR_ATM_PROTOCOL      lpAtmProtocol
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpAtmProtocol
[out] ATM协议列表信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError


NET_DVR_GetAtmFrameFormat_V30

获取ATM协议配置信息。

BOOL NET_DVR_GetAtmFrameFormat_V30(
  LONG                            lUserID,
  LONG                            lAtmChannel,
  LPNET_DVR_ATM_FRAMEFORMAT_V30   lpFrameFormat
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lAtmChannel
[in] ATM通道号，目前只支持0通道配置
lpFrameFormat
[out] ATM机交易协议参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SetAtmFrameFormat_V30


NET_DVR_SetAtmFrameFormat_V30

设置ATM协议配置信息。

BOOL NET_DVR_SetAtmFrameFormat_V30(
  LONG                             lUserID,
  LONG                             lAtmChannel,
  LPNET_DVR_ATM_FRAMEFORMAT_V30    lpFrameFormat
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lAtmChannel
[in] ATM通道号，目前只支持0通道配置
lpFrameFormat
[in] ATM机交易协议参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_GetAtmFrameFormat_V30


NET_DVR_GetRtspConfig

获取RTSP协议参数。

BOOL NET_DVR_GetRtspConfig(
  LONG                  lUserID,
  DWORD                 dwCommand,
  LPNET_DVR_RTSPCFG     lpOutBuffer,
  DWORD                 dwOutBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 保留，置为0
lpOutBuffer
[out] 输出缓存
dwOutBufferSize
[in] 存放输出数据的缓冲区大小

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SetRtspConfig


NET_DVR_SetRtspConfig

设置RTSP协议参数。

BOOL NET_DVR_SetRtspConfig(
  LONG                  lUserID,
  DWORD                 dwCommand,
  LPNET_DVR_RTSPCFG     lpInBuffer,
  DWORD                 dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 保留，置为0
lpInBuffer
[in] 输入缓存
dwInBufferSize
[in] 输入缓存的大小，大小为结构体NET_DVR_RTSPCFG的大小

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_GetRtspConfig


NET_DVR_GetPTZProtocol

获取设备支持的云台协议。

BOOL NET_DVR_GetPTZProtocol(
  LONG               lUserID,
  NET_DVR_PTZCFG     *pPtzcfg
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pPtzcfg
[out] 设备的云台协议结构

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

在早前的设备中规定了一系列云台协议，但在后期的设备（如DS-90xx、DS-91xx、DS-81xx等）仅保留一部分常用的协议，所以在配置前端云台协议时必须调用该接口获取当前设备支持的云台协议。


NET_DVR_GetScaleCFG

获取视频输出缩放信息。

BOOL NET_DVR_GetScaleCFG(
  LONG      lUserID,
  DWORD     *lpOutScale
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lpOutScale
[out] 缩放参数：0-否，1-是

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SetScaleCFG

Reference Interface

扩展接口可见

NET_DVR_GetScaleCFG_V30


NET_DVR_GetScaleCFG_V30

获取视频输出缩放信息。

BOOL NET_DVR_GetScaleCFG_V30(
  LONG                   lUserID,
  LPNET_DVR_SCALECFG     pScalecfg
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
pScalecfg
[out] 缩放参数信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SetScaleCFG_V30

Reference Interface

该接口扩展源于

NET_DVR_GetScaleCFG


NET_DVR_SetScaleCFG

设置视频输出缩放参数。

BOOL NET_DVR_SetScaleCFG(
  LONG      lUserID,
  DWORD     dwScale
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
dwScale
[in] 缩放参数：0－否，1－是

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_GetScaleCFG

Reference Interface

扩展接口可见

NET_DVR_SetScaleCFG_V30


NET_DVR_SetScaleCFG_V30

设置视频输出缩放参数。

BOOL NET_DVR_SetScaleCFG_V30(
  LONG                   lUserID,
  LPNET_DVR_SCALECFG     pScalecfg
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
pScalecfg
[in] 缩放参数配置结构体

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_GetScaleCFG_V30

Reference Interface

该接口扩展源于

NET_DVR_SetScaleCFG


NET_DVR_GetDeviceConfig

获取设备的配置信息。

BOOL NET_DVR_GetDeviceConfig(
  LONG      lUserID,
  DWORD     dwCommand,
  DWORD     dwCount,
  LPVOID    lpInBuffer,
  DWORD     dwInBufferSize,
  LPVOID    lpStatusList,
  LPVOID    lpOutBuffer,
  DWORD     dwOutBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
dwCount
[in] 一次要设置的监控点个数，0和1都表示1个监控点信息，2表示2个监控点信息，以此递增，最大64个
lpInBuffer
[in] 配置条件缓冲区指针，如流id等
dwInBufferSize
[in] 配置条件缓冲区长度
lpStatusList
[out] 错误信息列表，和要查询的监控点一一对应，例如lpStatusList[2]就对应lpInBuffer[2]，由用户分配内存， 每个错误信息为4个字节(1个32位无符号整数值)，参数值：0- 成功，大于0- 失败
lpOutBuffer
[out] 设备返回的参数内容，和要查询的监控点一一对应。如果某个监控点对应的lpStatusList信息为大于0值，对应lpOutBuffer的内容就是无效的
dwOutBufferSize
[in] dwCount个返回结果的总大小

Return Values

TRUE表示成功，但不代表每一个配置都成功，哪一个成功，对应查看lpStatusList[n]值；FALSE表示全部失败。获取错误码调用NET_DVR_GetLastError。

Remarks

该接口是带有发送数据的批量获取设备配置信息的通用接口。不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | lpInBuffer对应结构体 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_STREAM_SRC_INFO | 获取流的来源信息 | dwCount个NET_DVR_STREAM_INFO | dwCount个NET_DVR_STREAM_SRC_INFO | 6017
NET_DVR_GET_STREAM_RECORD_INFO | 获取录像信息 | dwCount个NET_DVR_STREAM_INFO | dwCount个NET_DVR_STREAM_RECORD_INFO | 6019
NET_DVR_GET_STREAM_RECORD_STATUS | 获取流状态信 | dwCount个NET_DVR_STREAM_INFO | dwCount个NET_DVR_STREAM_RECORD_STATUS | 6021

See Also

NET_DVR_SetDeviceConfig NET_DVR_GetLastError


NET_DVR_SetDeviceConfig

设置设备的配置信息。

BOOL NET_DVR_SetDeviceConfig(
  LONG      lUserID,
  DWORD     dwCommand,
  DWORD     dwCount,
  LPVOID    lpInBuffer,
  DWORD     dwInBufferSize,
  LPVOID    lpStatusList,
  LPVOID    lpInParamBuffer,
  DWORD     dwInParamBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
dwCount
[in] 一次要设置的监控点个数，0和1都表示1个监控点信息，2表示2个监控点信息，以此递增，最大64个
lpInBuffer
[in] 配置条件缓冲区指针，如流id等
dwInBufferSize
[in] 配置条件缓冲区长度
lpStatusList
[out] 错误信息列表，和要查询的监控点一一对应，例如lpStatusList[2]就对应lpInBuffer[2]，由用户分配内存， 每个错误信息为4个字节(1个32位无符号整数值)，参数值：0- 成功，大于0- 失败
lpInParamBuffer
[in] 需要设置给设备的参数内容，和要查询的监控点一一对应。如果某个监控点对应的lpStatusList信息为大于0值，表 示对应的lpInBuffer设置失败，为0则设置成功
dwInParamBufferSize
[in] 设置内容缓冲区大小

Return Values

TRUE表示成功，但不代表每一个配置都成功，哪一个成功，对应查看lpStatusList[n]值；FALSE表示全部失败。获取错误码调用NET_DVR_GetLastError。

Remarks

该接口是带有发送数据的批量设置设备配置信息的通用接口。不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | lpInBuffer对应结构体 | lpInParamBuffer对应结构体 | 宏定义值
NET_DVR_SET_STREAM_SRC_INFO | 设置流的来源信息 | dwCount个NET_DVR_STREAM_INFO | dwCount个NET_DVR_STREAM_SRC_INFO | 6018
NET_DVR_SET_STREAM_RECORD_INFO | 设置录像信息 | dwCount个NET_DVR_STREAM_INFO | dwCount个NET_DVR_STREAM_RECORD_INFO | 6020
NET_DVR_SET_STREAM_RECORD_STATUS | 设置流状态信 | dwCount个NET_DVR_STREAM_INFO | dwCount个NET_DVR_STREAM_RECORD_STATUS | 6022

See Also

NET_DVR_GetDeviceConfig NET_DVR_GetLastError


NET_DVR_GetPDList

获取物理磁盘信息列表。

BOOL NET_DVR_GetPDList(
  LONG                        lUserID,
  LPNET_DVR_PHY_DISK_LIST     lpPDList
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpPDList
[out] 物理磁盘信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError


NET_DVR_SetSpareDisk

设置热备。

BOOL NET_DVR_SetSpareDisk(
  LONG                        lUserID,
  NET_DVR_SPARE_DISK_PARAM    *lpSpareDisk
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpSpareDisk
[in] 设备热备参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError


NET_DVR_GetArrayList

获取阵列信息列表。

BOOL NET_DVR_GetArrayList(
  LONG                    lUserID,
  LPNET_DVR_ARRAY_LIST    lpArrayList
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpArrayList
[out] 阵列信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError


NET_DVR_CreateArray

创建阵列。

BOOL NET_DVR_CreateArray(
  LONG                             lUserID,
  LPNET_DVR_OPERATE_ARRAY_PARAM    lpArrayParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpArrayParam
[in] 阵列操作参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

Remarks

创建阵列时参数lpArrayParam中需指定的参数有byRaidMode、byPDCount、wPDSlots、wPDSlots；其中wPDSlots是由接口NET_DVR_GetPDList获取的物理磁盘信息中的wPhySlot指定。

See Also

NET_DVR_GetPDList


NET_DVR_CalcArraySize

计算阵列的大小。

BOOL NET_DVR_CalcArraySize(
  LONG                             lUserID,
  LPNET_DVR_OPERATE_ARRAY_PARAM    lpArrayParam,
  UINT64                           *lpArraySize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpArrayParam
[in] 阵列信息参数
lpArraySize
[out] 阵列大小的指针

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

Remarks

计算阵列大小时参数lpArrayParam中需指定的参数有byRaidMode、byPDCount、wPDSlots、wPDSlots；其中wPDSlots是由接口NET_DVR_GetPDList获取的物理磁盘信息中的wPhySlot指定。


NET_DVR_RaidFastConfig

阵列一键配置。

LONG NET_DVR_RaidFastConfig(
  LONG    lUserID,
  char    *sName
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
sName
[in] 阵列名称

Return Values

-1表示失败，其他值作为NET_DVR_FastConfigProcess等函数的参数，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_FastConfigProcess NET_DVR_CloseFastConfig


NET_DVR_FastConfigProcess

获取阵列一键配置的进度。

BOOL NET_DVR_FastConfigProcess(
  LONG     lHandle,
  DWORD    *pState
);

Parameters

lHandle
[in] 一键配置的句柄，NET_DVR_RaidFastConfig的返回值
pState
[out] 当前一键配置的进度，进度值的取值范围为(0,100)，其他值的定义见下表
宏定义 | 宏定义值 | 含义
PROCESS_SUCCESS | 100 | 过程完成
PROCESS_EXCEPTION | 400 | 过程异常
PROCESS_FAILED | 500 | 过程失败

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_RaidFastConfig


NET_DVR_CloseFastConfig

关闭阵列一键配置，释放资源。

BOOL NET_DVR_CloseFastConfig(
  LONG   lHandle
);

Parameters

lHandle
[in] 一键配置的句柄，NET_DVR_RaidFastConfig的返回值

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

See Also

NET_DVR_RaidFastConfig


NET_DVR_RebuildArray

重建阵列。

BOOL NET_DVR_RebuildArray(
  LONG                             lUserID,
  LPNET_DVR_OPERATE_ARRAY_PARAM    lpArrayParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpArrayParam
[in] 阵列操作参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

重建阵列时参数lpArrayParam中需指定所有参数；其中wArrayID是由接口NET_DVR_GetArrayList获取的阵列信息中的wArrayID指定，wPDSlots是由接口NET_DVR_GetPDList获取的物理磁盘信息中的wPhySlot指定。

See Also

NET_DVR_GetPDList NET_DVR_GetArrayList


NET_DVR_MigrateArray

迁移阵列。

BOOL NET_DVR_MigrateArray(
  LONG                             lUserID,
  LPNET_DVR_OPERATE_ARRAY_PARAM    lpArrayParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpArrayParam
[in] 阵列操作参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

迁移阵列时参数lpArrayParam中需指定所有参数；其中wArrayID是由接口NET_DVR_GetArrayList获取的阵列信息中的wArrayID指定，wPDSlots是由接口NET_DVR_GetPDList获取的物理磁盘信息中的wPhySlot指定。

See Also

NET_DVR_GetPDList NET_DVR_GetArrayList


NET_DVR_RaidPullDiskStart

安全拔盘。

LONG NET_DVR_RaidPullDiskStart(
  LONG                     lUserID,
  LONG                     lRaidID,
  fLongCfgStateCallback    cbStateCallback,
  LPVOID                   pUserData
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lRaidID
[in] 阵列ID号
cbStateCallback
[in] 安全拔盘状态回调函数
pUserData
[in] 用户数据

Callback Function

typedef void(CALLBACK *fLongCfgStateCallback)(
  LONG      lHandle,
  DWORD     dwState,
  LPVOID    pUserData
);

Callback Function Parameters

lRealHandle
[out] 安全拔盘句柄，NET_DVR_RaidPullDiskStart的返回值
dwState
[out] 安全拔盘状态
宏定义 | 宏定义值 | 含义
PULL_DISK_SUCCESS | 1 | 安全拔盘成功
PULL_DISK_FAIL | 2 | 安全拔盘失败
PULL_DISK_PROCESSING | 3 | 正在停止阵列
PULL_DISK_NO_ARRAY | 4 | 阵列不存在
PULL_DISK_NOT_SUPPORT | 5 | 不支持安全拔盘
pUserData
[out] 用户数据

Return Values

-1表示失败，其他值作为NET_DVR_CloseLongCfgHandle等函数的句柄参数。获取错误码调用NET_DVR_GetLastError

Remarks

该接口属于对阵列的操作。
设备要求在拔去阵列的硬盘之前，必须要调用下该接口，才能安全拔出。发出安全拔盘命令以后，需要重新扫描阵列（NET_DVR_ScanRaidStart），更新阵列信息。

该操作是延时性操作，需要回调等待操作的状态

See Also

NET_DVR_CloseLongCfgHandle NET_DVR_ScanRaidStart


NET_DVR_ScanRaidStart

重新扫描阵列。

LONG NET_DVR_ScanRaidStart(
  LONG                     lUserID,
  fLongCfgStateCallback    cbStateCallback,
  LPVOID                   pUserData
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
cbStateCallback
[in] 阵列扫描状态回调函数
pUserData
[in] 用户数据

Callback Function

typedef void(CALLBACK *fLongCfgStateCallback)(
  LONG      lHandle,
  DWORD     dwState,
  LPVOID    pUserData
);

Callback Function Parameters

lRealHandle
[out] 阵列扫描句柄，NET_DVR_ScanRaidStart的返回值
dwState
[out] 阵列扫描状态
宏定义 | 宏定义值 | 含义
SCAN_RAID_SUC | 1 | 扫描阵列成功
SCAN_RAID_FAIL | 2 | 扫描阵列失败
SCAN_RAID_PROCESSING | 3 | 正在扫描阵列
SCAN_RAID_NOT_SUPPORT | 4 | 不支持阵列扫描
pUserData
[out] 用户数据

Return Values

-1表示失败，其他值作为NET_DVR_CloseLongCfgHandle等函数的句柄参数。获取错误码调用NET_DVR_GetLastError

Remarks

该接口属于对阵列的操作。
设备要求在拔去阵列的硬盘之前，必须要调用接口NET_DVR_RaidPullDiskStart，才能安全拔出。在发出安全拔盘命令以后，需要调用该接口重新扫描阵列，更新阵列信息。

该操作是延时性操作，需要回调等待操作的状态

See Also

NET_DVR_CloseLongCfgHandle NET_DVR_RaidPullDiskStart


NET_DVR_CloseLongCfgHandle

释放安全拔盘和扫描阵列的句柄资源。

BOOL NET_DVR_CloseLongCfgHandle(
  LONG   lHandle
);

Parameters

lHandle
[in] NET_DVR_RaidPullDiskStart或NET_DVR_ScanRaidStart的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_RaidPullDiskStart NET_DVR_ScanRaidStart


NET_DVR_DelArray

删除阵列。

BOOL NET_DVR_DelArray(
  LONG     lUserID,
  DWORD    dwID
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwID
[in] 阵列ID

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

该接口中的参数dwID是由接口NET_DVR_GetArrayList获取的阵列信息中的wArrayID指定。

See Also

NET_DVR_GetArrayList


NET_DVR_GetVDList

获取虚拟磁盘列表。

BOOL NET_DVR_GetVDList(
  LONG                 lUserID,
  LPNET_DVR_VD_LIST    lpVDList
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpVDList
[out] 虚拟磁盘信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError


NET_DVR_CreateVD

创建虚拟磁盘。

BOOL NET_DVR_CreateVD(
  LONG                             lUserID,
  LPNET_DVR_OPERATE_VD_PARAM    lpVDParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpVDParam
[in] 虚拟磁盘参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

See Also

NET_DVR_GetArraySpaceAlloc


NET_DVR_DelVD

删除虚拟磁盘。

BOOL NET_DVR_DelVD(
  LONG     lUserID,
  DWORD    dwID
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwID
[in] 虚拟磁盘ID

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

该接口中的参数dwID是由接口NET_DVR_GetVDList获取的阵列信息中的wArrayID指定。

See Also

NET_DVR_GetVDList


NET_DVR_RepairVD

修复虚拟磁盘。

BOOL NET_DVR_RepairVD(
  LONG     lUserID,
  DWORD    dwID
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwID
[in] 虚拟磁盘ID

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

该接口中的参数dwID是由接口NET_DVR_GetVDList获取的阵列信息中的wArrayID指定。

See Also

NET_DVR_GetVDList


NET_DVR_GetArraySpaceAlloc

获取阵列中虚拟磁盘分配信息。

BOOL NET_DVR_GetArraySpaceAlloc(
  LONG                                 lUserID,
  DWORD                                dwSlot,
  LPNET_DVR_ARRAY_SPACE_ALLOC_INFO     lpOutBuf
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwSlot
[in] 阵列的槽位
lpOutBuf
[out] 该阵列中虚拟磁盘分配信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError


NET_DVR_ExpandDisk

远程扩容虚拟磁盘。

LONG NET_DVR_ExpandDisk(
  LONG    lUserID,
  DWORD   dwVDSLot
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwVDSLot
[in] 虚拟磁盘槽位

Return Values

-1表示失败，其他值作为NET_DVR_CloseExpandHandle等函数的参数，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_GetExpandProgress NET_DVR_CloseExpandHandle


NET_DVR_GetExpandProgress

获取扩容虚拟磁盘进度。

BOOL NET_DVR_GetExpandProgress(
  LONG     lExpandHandle,
  DWORD    *pState
);

Parameters

lExpandHandle
[in] NET_DVR_ExpandDisk的返回值
pState
[out] 当前扩容的进度，进度值的取值范围为(0,100)，其他值的定义见下表
宏定义 | 宏定义值 | 含义
PROCESS_SUCCESS | 100 | 过程完成
PROCESS_EXCEPTION | 400 | 过程异常
PROCESS_FAILED | 500 | 过程失败

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_ExpandDisk


NET_DVR_CloseExpandHandle

关闭虚拟磁盘扩容，释放资源。

BOOL NET_DVR_CloseExpandHandle(
  LONG   lExpandHandle
);

Parameters

lExpandHandle
[in] NET_DVR_ExpandDisk的返回值

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

See Also

NET_DVR_ExpandDisk


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_RAID_ADAPTER_INFO | 获取适配器信息 | 无效 | NET_DVR_RAID_ADAPTER_INFO | 1134

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_RAID_ADAPTER_INFO | 设置适配器信息 | 无效 | NET_DVR_RAID_ADAPTER_INFO | 1135

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_AdapterUpgrade

远程升级适配器。

LONG NET_DVR_AdapterUpgrade(
  LONG   lUserID,
  char   *sFileName
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
sFileName
[in] 升级的文件路径（包括文件名）。路径长度和操作系统有关，sdk不做限制，windows默认路径长度小于等于256字节（包括文件名在内）。

Return Values

-1表示失败，其他值作为NET_DVR_GetUpgradeState等函数的参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_FILEOPENFAIL | 35 | 打开文件出错。设置配置文件、设备升级、上传审讯文件时打开文件失败。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

Remarks

调用此接口开始远程升级适配器后，需要调用NET_DVR_GetUpgradeState、NET_DVR_GetUpgradeProgres分别获取升级进度和状态，结束升级时还需要调用NET_DVR_CloseUpgradeHandle关闭句柄，释放资源。

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_CloseUpgradeHandle
NET_DVR_GetUpgradeState NET_DVR_GetUpgradeProgres


NET_DVR_GetDeviceAbility

获取设备能力集。

BOOL NET_DVR_GetDeviceAbility(
  LONG     lUserID,
  DWORD    dwAbilityType,
  char     *pInBuf,
  DWORD    dwInLength,
  char     *pOutBuf,
  DWORD    dwOutLength
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwAbilityType
[in] 能力类型，具体定义见下表：
宏定义 | 宏定义值 | 含义
DEVICE_SOFTHARDWARE_ABILITY | 0x001 | 设备软硬件能力
DEVICE_NETWORK_ABILITY | 0x002 | 设备网络能力
DEVICE_ENCODE_ALL_ABILITY | 0x003 | 设备所有编码能力
DEVICE_ENCODE_CURRENT | 0x004 | 设备当前编码能力
IPC_FRONT_PARAMETER | 0x005 | 设备前端参数
DEVICE_RAID_ABILITY | 0x007 | 设备RAID能力
DEVICE_ALARM_ABILITY | 0x00a | 设备报警能力
VCA_DEV_ABILITY | 0x100 | 智能设备的能力
VCA_CHAN_ABILITY | 0x110 | 智能通道的能力
MATRIXDECODER_ABILITY | 0x200 | 多路解码器显示、解码能力
SNAPCAMERA_ABILITY | 0x300 | 智能高清IPC能力
COMPRESSIONCFG_ABILITY | 0x400 | 压缩参数能力
COMPRESSION_LIMIT | 0x401 | 主子码流压缩参数能力限制
PIC_CAPTURE_ABILITY | 0x402 | 抓图图片分辨率能力集
pInBuf
[in] 输入缓冲区指针（按照设备规定的能力参数的描述方式组合，可以是XML文本或结构体形式）
dwInLength
[in] 输入缓冲区的长度
pOutBuf
[out] 输出缓冲区指针（按照设备规定的能力集的描述方式，可以是XML文本或结构体形式）
dwOutLength
[in] 接收数据的缓冲区的长度

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

接口中pInBuf参数的具体定义格式按照不同的设备规定有所不同，可以是以结构体的形式或者XML描述方式。同样地，参数pOutBuf的输出表达格式也按不同的设备规定可以是以结构体的形式或者XML描述方式。前7种能力描述都是以XML格式给出，详见各产品的能力描述解析方法，这里不进行详细说明。下表列出了其余能力类型获取时，需要输入参数和输出参数的格式定义。

能力类型宏定义 | 能力类型说明 | pInBuf | pOutBuf
DEVICE_SOFTHARDWARE_ABILITY | 获取设备软硬件能力 | 无 | 设备软硬件能力XML描述
DEVICE_NETWORK_ABILITY | 获取设备网络能力 | 无 | 设备网络能力XML描述
DEVICE_ENCODE_ALL_ABILITY | 获取设备所有编码能力 | 无 | 设备所有编码能力XML描述
DEVICE_ENCODE_CURRENT | 获取设备当前编码能力 | 当前编码类型和分辨率XML描述 | 设备当前编码能力XML描述
IPC_FRONT_PARAMETER | 获取设备前端参数 | 无 | 设备前端参数XML描述
DEVICE_RAID_ABILITY | 获取设备RAID能力 | 无 | 设备RAID能力XML描述
DEVICE_ALARM_ABILITY | 获取设备报警能力 | 设备报警能力XML描述 | 设备报警能力XML描述
VCA_DEV_ABILITY | 获取智能设备的能力 | 无 | NET_VCA_DEV_ABILITY
VCA_CHAN_ABILITY | 获取智能通道能力 | NET_VCA_CHAN_IN_PARAM | NET_VCA_BEHAVIOR_ABILITY
MATRIXDECODER_ABILITY | 获取多路解码器显示、解码能力 | 无 | NET_DVR_MATRIX_ABILITY
SNAPCAMERA_ABILITY | 获取智能高清IPC的能力 | 无 | NET_DVR_SNAP_ABILITY
COMPRESSIONCFG_ABILITY | 获取压缩参数能力 | 通道号（4个字节） | NET_DVR_COMPRESSIONCFG_ABILITY
COMPRESSION_LIMIT | 获取主子码流压缩参数能力限制 | NET_DVR_COMPRESSION_LIMIT | NET_DVR_COMPRESSIONCFG_ABILITY
PIC_CAPTURE_ABILITY | 获取图片能力 | 通道号（4个字节） | NET_DVR_COMPRESSIONCFG_ABILITY

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetIPCProtoList

获取设备支持的IPC协议表。

BOOL NET_DVR_GetIPCProtoList(
  LONG                       lUserID,
  LPNET_DVR_IPC_PROTO_LIST   lpProtoList
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpProtoList
[out] IPC协议列表结构

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

该接口用于获取当前设备所支持的外接IPC的协议。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetSadpInfoList

远程扫描获取IPC信息列表。

BOOL NET_DVR_GetSadpInfoList(
  LONG                      lUserID,
  LPNET_DVR_SADPINFO_LIST   lpSadpInfoList
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpSadpInfoList
[out] IPC信息列表结构

Return Values

TRUE表示成功,FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_UpdateSadpInfo

远程修改IPC信息。

BOOL NET_DVR_UpdateSadpInfo(
  LONG                    lUserID,
  LPNET_DVR_SADP_VERIFY   lpSadpVerify,
  LPNET_DVR_SADPINFO      lpSadpInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpSadpVerify
[in] 校验信息
lpSadpInfo
[in] 修改的IPC信息列表结构

Return Values

TRUE表示成功,FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_StartEmailTest

测试按已配置的EMAIL参数能否收发成功。

LONG NET_DVR_StartEmailTest(
  LONG   lUserID
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值

Return Values

-1表示失败，其他值作为NET_DVR_GetEmailTestProcess 、NET_DVR_StopEmailTest等函数的参数。获取错误码调用NET_DVR_GetLastError

Remarks

在调用此接口测试前，需要配置相关的EMAIL参数，详见NET_DVR_GetDVRConfig、NET_DVR_SetDVRConfig的网络应用参数（EMAIL）配置。

See Also

NET_DVR_Login NET_DVR_Login_V30
NET_DVR_GetEmailTestProgress NET_DVR_StopEmailTest
NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_GetEmailTestProgress

获取邮件测试的进度。

BOOL NET_DVR_GetEmailTestProgress(
  LONG    lEmailTestHandle,
  DWORD   *pState
);

Parameters

lEmailTestHandle
[in] NET_DVR_StartEmailTest的返回值
pState
[out] 邮件测试的进度，进度值的取值范围（0,100），其他值定义如下：
宏定义 | 宏定义值 | 含义
PROCESSING | 0 | 正在处理
PROCESS_SUCCESS | 100 | 过程完成
PROCESS_EXCEPTION | 400 | 过程异常
PROCESS_FAILED | 500 | 过程失败

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_StartEmailTest


NET_DVR_StopEmailTest

停止邮件测试。

BOOL NET_DVR_StopEmailTest(
  LONG   lEmailTestHandle
);

Parameters

lEmailTestHandle
[in] NET_DVR_StartEmailTest的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_StartEmailTest


NET_DVR_InitDevice_Card

初始化解码卡。

BOOL NET_DVR_InitDevice_Card(
  LONG   *pDeviceTotalChan
);

Parameters

pDeviceTotalChan
[out] 保存解码卡通道个数的指针

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_ReleaseDevice_Card


NET_DVR_ReleaseDevice_Card

释放解码卡资源。

BOOL NET_DVR_ReleaseDevice_Card(
);

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InitDevice_Card


NET_DVR_InitDDraw_Card

初始化解码卡OVERLAY表面。

BOOL NET_DVR_InitDDraw_Card(
  HWND       hParent,
  COLORREF   colorKey
);

Parameters

hParent
[in] 窗口句柄
colorKey
[in] 用户设置的透明色

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_ReleaseDDraw_Card


NET_DVR_ReleaseDDraw_Card

释放解码卡使用的OVERLAY表面。

BOOL NET_DVR_ReleaseDDraw_Card(
);

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InitDDraw_Card


NET_DVR_RealPlay_Card

使用解码卡预览图像。

LONG NET_DVR_RealPlay_Card(
  LONG                  lUserID,
  LPNET_DVR_CARDINFO    lpCardInfo,
  LONG                  lChannelNum
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpCardInfo
[in] 硬解码参数
lChannelNum
[in] 使用解码卡的哪个通道解码，从0开始

Return Values

-1表示失败，其他值作为NET_DVR_ResetPara_Card等函数的句柄参数。获取错误码调用NET_DVR_GetLastError

Remarks

硬解码时可以使用以下接口进行预览的控制、数据捕获、抓图等操作：NET_DVR_StopRealPlay NET_DVR_ClientSetVideoEffect NET_DVR_ClientGetVideoEffect NET_DVR_SetPlayerBufNumber NET_DVR_SetRealDataCallBack NET_DVR_SetStandardDataCallBack NET_DVR_SaveRealData NET_DVR_StopSaveRealData

See Also

NET_DVR_ResetPara_Card NET_DVR_AudioPreview_Card NET_DVR_OpenSound_Card
NET_DVR_OpenSound_Card NET_DVR_CloseSound_Card NET_DVR_SetVolume_Card
NET_DVR_GetChanHandle_Card NET_DVR_CapturePicture_Card


NET_DVR_ResetPara_Card

重置解码卡显示参数。

BOOL NET_DVR_ResetPara_Card(
  LONG                      lRealHandle,
  LPNET_DVR_DISPLAY_PARA    lpDisplayPara
);

Parameters

lRealHandle
[in] 播放句柄，NET_DVR_RealPlay_Card的返回值
lpDisplayPara
[in] 硬解码显示参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_RealPlay_Card


NET_DVR_RefreshSurface_Card

刷新解码卡使用的OVERLAY表面。

BOOL NET_DVR_RefreshSurface_Card(
);

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError


NET_DVR_ClearSurface_Card

清除解码卡使用的OVERLAY表面。

BOOL NET_DVR_ClearSurface_Card(
);

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_DSSDK_ERROR | 68 | 调用硬解码库DsSdk中某个函数失败。


NET_DVR_RestoreSurface_Card

恢复解码卡使用的OVERLAY表面。

BOOL NET_DVR_RestoreSurface_Card(
);

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError


NET_DVR_AudioPreview_Card

在PC机上打开解码的声音。

BOOL NET_DVR_AudioPreview_Card(
  LONG   lRealHandle,
  BOOL   bEnable
);

Parameters

lRealHandle
[in] 播放句柄，NET_DVR_RealPlay_Card的返回值
bEnable
[in] 预览时是否打开声音：TRUE表示打开声音，FALSE表示关闭声音

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。

See Also

NET_DVR_RealPlay_Card


NET_DVR_OpenSound_Card

输出某一路的模拟音频。

BOOL NET_DVR_OpenSound_Card(
  LONG   lRealHandle
);

Parameters

lRealHandle
[in] 播放句柄，NET_DVR_RealPlay_Card的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_RealPlay_Card


NET_DVR_CloseSound_Card

关闭某一路的模拟音频。

BOOL NET_DVR_CloseSound_Card(
  LONG   lRealHandle
);

Parameters

lRealHandle
[in] 播放句柄，NET_DVR_RealPlay_Card的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_LOADDSSDKPROC_ERROR | 67 | 找不到DsSdk中某个函数入口。
NET_DVR_DSSDK_ERROR | 68 | 调用硬解码库DsSdk中某个函数失败。

See Also

NET_DVR_RealPlay_Card


NET_DVR_SetVolume_Card

调节某一路的模拟音频的音量。

BOOL NET_DVR_SetVolume_Card(
  LONG   lRealHandle,
  WORD   wVolume
);

Parameters

lRealHandle
[in] 播放句柄，NET_DVR_RealPlay_Card的返回值
wVolume
[in] 设置的音量，取值范围[0,0xffff]

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_RealPlay_Card


NET_DVR_GetChanHandle_Card

获取当前的解码卡句柄。

HANDLE NET_DVR_GetChanHandle_Card(
  LONG   lRealHandle
);

Parameters

lRealHandle
[in] 播放句柄，NET_DVR_RealPlay_Card的返回值

Return Values

-1表示失败，其他值为解码卡的句柄。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_RealPlay_Card


NET_DVR_GetSerialNum_Card

获取解码卡序列号。

BOOL NET_DVR_GetSerialNum_Card(
  long    lChannelNum,
  DWORD   *pDeviceSerialNo
);

Parameters

lChannelNum
[in] 解码卡通道号
pDeviceSerialNo
[out] 保存解码卡序列号的指针

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError


NET_DVR_CapturePicture_Card

硬解预览时抓图。

BOOL NET_DVR_CapturePicture_Card(
  LONG   lRealHandle
  char   *sPicFileName
);

Parameters

lRealHandle
[in] 播放句柄，NET_DVR_RealPlay_Card的返回值
sPicFileName
[in] 图片保存的文件路径

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | 找不到Player Sdk中某个函数入口。
NET_DVR_DSSDK_ERROR | 68 | 调用硬解码库DsSdk中某个函数失败。

See Also

NET_DVR_RealPlay_Card


NET_DVR_GetDeviceAbility

获取设备能力集。

BOOL NET_DVR_GetDeviceAbility(
  LONG     lUserID,
  DWORD    dwAbilityType,
  char     *pInBuf,
  DWORD    dwInLength,
  char     *pOutBuf,
  DWORD    dwOutLength
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwAbilityType
[in] 能力类型，具体定义见下表：
宏定义 | 宏定义值 | 含义
MATRIXDECODER_ABILITY | 0x200 | 多路解码器显示、解码能力
MATRIXDECODER_ABILITY_V41 | 0x260 | 解码器能力集（扩展）
SCREENCONTROL_ABILITY | 0x600 | 大屏控制器能力集
pInBuf
[in] 输入缓冲区指针（按照设备规定的能力参数的描述方式组合，可以是XML文本或结构体形式）
dwInLength
[in] 输入缓冲区的长度
pOutBuf
[out] 输出缓冲区指针（按照设备规定的能力集的描述方式，可以是XML文本或结构体形式）
dwOutLength
[in] 接收数据的缓冲区的长度

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

接口中pInBuf参数的具体定义格式按照不同的设备规定有所不同，可以是以结构体的形式或者XML描述方式。同样地，参数pOutBuf的输出表达格式也按不同的设备规定可以是以结构体的形式或者XML描述方式。下表列出了按照不同的能力类型获取时，需要输入参数和输出参数的格式定义。

能力类型宏定义 | 能力类型说明 | pInBuf | pOutBuf
MATRIXDECODER_ABILITY | 获取多路解码器显示、解码能力 | 无 | NET_DVR_MATRIX_ABILITY
MATRIXDECODER_ABILITY_V41 | 获取解码器能力集（扩展） | 无 | NET_DVR_MATRIX_ABILITY_V41
SCREENCONTROL_ABILITY | 获取大屏控制器能力 | 无 | NET_DVR_SCREENCONTROL_ABILITY

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_MatrixGetDisplayCfg_V41

解码器获取显示通道配置。

BOOL NET_DVR_MatrixGetDisplayCfg_V41(
  LONG                        lUserID,
  DWORD                       dwDispChanNum,
  LPNET_DVR_MATRIX_VOUTCFG    lpVoutCfg
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDispChanNum
[in] 显示通道，从能力集获取
lpVoutCfg
[out] 显示通道配置参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30

NET_DVR_MatrixSetDisplayCfg_V41

NET_DVR_GetDeviceAbility

Reference Interface

该接口扩展源于

NET_DVR_MatrixGetDisplayCfg


NET_DVR_MatrixGetDisplayCfg

多路解码器获取显示通道配置。

BOOL NET_DVR_MatrixGetDisplayCfg(
  LONG                           lUserID,
  LONG                           dwDispChanNum,
  LPNET_DVR_VGA_DISP_CHAN_CFG    lpDisplayCfg
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDispChanNum
[in] 显示通道，1-8：VGA输出；9-24：BNC输出；25-28：HDMI输出；29-32：DVI输出
lpDisplayCfg
[out] 显示通道参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_MatrixSetDisplayCfg

Reference Interface

扩展接口可见
NET_DVR_MatrixGetDisplayCfg_V41


NET_DVR_MatrixSetDisplayCfg_V41

解码器设置显示通道配置。

BOOL NET_DVR_MatrixSetDisplayCfg_V41(
  LONG                        lUserID,
  DWORD                       dwDispChanNum,
  LPNET_DVR_MATRIX_VOUTCFG    lpDisplayCfg
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDispChanNum
[in] 显示通道，从能力集获取
lpDisplayCfg
[in] 显示通道配置参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

对于DS6401HD，VGA、BNC、HDMI、DVI四个显示通道同时只能在一个通道上显示图像，即最后配置的显示通道有效

See Also

NET_DVR_Login NET_DVR_Login_V30

NET_DVR_MatrixGetDisplayCfg_V41

NET_DVR_GetDeviceAbility

Reference Interface

该接口扩展源于

NET_DVR_MatrixSetDisplayCfg


NET_DVR_MatrixSetDisplayCfg

多路解码器设置显示通道配置。

BOOL NET_DVR_MatrixSetDisplayCfg(
  LONG                           lUserID,
  LONG                           dwDispChanNum,
  LPNET_DVR_VGA_DISP_CHAN_CFG    lpDisplayCfg
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDispChanNum
[in] 显示通道，1-8：VGA输出；9-24：BNC输出；25-28：HDMI输出；29-32：DVI输出
lpDisplayCfg
[in] 显示通道参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

对于DS6401HD，VGA、BNC、HDMI、DVI四个显示通道同时只能在一个通道上显示图像，即最后配置的显示通道有效

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_MatrixGetDisplayCfg

Reference Interface

扩展接口可见
NET_DVR_MatrixSetDisplayCfg_V41


NET_DVR_MatrixDiaplayControl

多路解码器显示通道控制。

BOOL NET_DVR_MatrixDiaplayControl(
  LONG    lUserID,
  DWORD   dwDispChanNum,
  DWORD   dwDispChanCmd,
  DWORD   dwCmdParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDispChanNum
[in] 显示通道，从能力集获取
dwDispChanCmd
[in] 显示通道命令，具体定义如下：
宏定义 | 宏定义值 | 含义
DISP_CMD_ENLARGE_WINDOW | 1 | 显示通道放大某个窗口
DISP_CMD_RENEW_WINDOW | 2 | 显示通道窗口还原
dwCmdParam
[in] 命令参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30

NET_DVR_GetDeviceAbility


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_NETCFG_OTHER | 获取网络参数（多路解码器） | 无效 | NET_DVR_NETCFG_OTHER | 244
NET_DVR_MATRIX_BIGSCREENCFG_GET | 获取大屏拼接参数（64T高清解码器支持） | 有效 | NET_DVR_BIGSCREENCFG | 1140

dwCommand为NET_DVR_MATRIX_BIGSCREENCFG_GET时lChannel表示大屏序号，取值范围：0～n(从能力集获取)

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_NETCFG_OTHER | 设置网络参数（多路解码器） | 无效 | NET_DVR_NETCFG_OTHER | 245
NET_DVR_MATRIX_BIGSCREENCFG_SET | 设置大屏拼接参数（64T高清解码器支持） | 有效 | NET_DVR_BIGSCREENCFG | 1141

dwCommand为NET_DVR_MATRIX_BIGSCREENCFG_SET时lChannel表示大屏序号，取值范围：0～n(从能力集获取)

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_MatrixGetDecChanCfg

获取多路解码器解码通道缩放控制。

BOOL NET_DVR_MatrixGetDecChanCfg(
  LONG                                lUserID,
  DWORD                               dwDecChan,
  LPNET_DVR_MATRIX_DECCHAN_CONTROL    lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
dwDecChan
[in] 解码通道号
lpInter
[out] 解码通道缩放控制参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_MatrixSetDecChanCfg NET_DVR_Login NET_DVR_Login_V30


NET_DVR_MatrixSetDecChanCfg

设置多路解码器解码通道缩放控制。

BOOL NET_DVR_MatrixSetDecChanCfg(
  LONG                                lUserID,
  DWORD                               dwDecChan,
  LPNET_DVR_MATRIX_DECCHAN_CONTROL    lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
dwDecChan
[in] 解码通道号
lpInter
[in] 解码通道缩放控制参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_MatrixGetDecChanCfg NET_DVR_Login NET_DVR_Login_V30


NET_DVR_MatrixGetVideoStandard

获取多路解码器的视频制式。

BOOL NET_DVR_MatrixGetVideoStandard(
  LONG      lUserID,
  LONG      dwDecChanNum,
  LPDWORD   lpdwVideoStandard
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道号
lpdwVideoStandard
[out] 解码器视频制式指针: 0-PAL，1-NTSC

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_MatrixSetVideoStandard NET_DVR_Login NET_DVR_Login_V30


NET_DVR_MatrixSetVideoStandard

设置多路解码器的视频制式。

BOOL NET_DVR_MatrixSetVideoStandard(
  LONG    lUserID,
  DWORD   dwDecChanNum,
  DWORD   dwVideoStandard
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道号
dwVideoStandard
[in] 视频制式: 0-PAL，1-NTSC

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_MatrixGetVideoStandard NET_DVR_Login NET_DVR_Login_V30


NET_DVR_MatrixStartDynamic

启动动态解码。

LONG NET_DVR_MatrixStartDynamic(
  LONG                            lUserID,
  DWORD                           dwDecChanNum,
  LPNET_DVR_MATRIX_DYNAMIC_DEC    lpDynamicInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
lpDynamicInfo
[in] 动态解码参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

配置多路解码器某一解码通道连接前端设备的某一通道，持续进行解码，直到调用停止动态解码接口或者关闭解码通道解码开关。解码过程中若因出现网络中断等原因造成解码中断的情况，多路解码器将自动向前端设备发起重连，直到连接成功或者停止解码接口被调用，其间该解码通道处于黑屏状态。

See Also

NET_DVR_MatrixStopDynamic


NET_DVR_MatrixStartDynamic_V30

启动动态解码。

LONG NET_DVR_MatrixStartDynamic_V30(
  LONG                      lUserID,
  DWORD                     dwDecChanNum,
  LPNET_DVR_PU_STREAM_CFG   lpDynamicInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
lpDynamicInfo
[in] 动态解码参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

配置多路解码器某一解码通道连接前端设备的某一通道，持续进行解码，直到调用停止动态解码接口或者关闭解码通道解码开关。解码过程中若因出现网络中断等原因造成解码中断的情况，多路解码器将自动向前端设备发起重连，直到连接成功或者停止解码接口被调用，其间该解码通道处于黑屏状态。

See Also

NET_DVR_MatrixStopDynamic


NET_DVR_MatrixStopDynamic

停止动态解码。

BOOL NET_DVR_MatrixStopDynamic(
  LONG    lUserID,
  DWORD   dwDecChanNum
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

See Also

NET_DVR_MatrixStartDynamic


NET_DVR_MatrixGetLoopDecChanInfo_V30

获取轮巡解码通道参数。

BOOL NET_DVR_MatrixGetLoopDecChanInfo_V30(
  LONG                                lUserID,
  DWORD                               dwDecChanNum,
  LPNET_DVR_MATRIX_LOOP_DECINFO_V30   lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
lpInter
[out] 轮巡的解码通道参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

设置多路解码器某一解码通道的轮巡解码参数，每个解码通道最多可连接64路前端设备通道进行循环解码，循环周期可以设置，参数设置成功后，若连接信息中的启用标志置为启用，则该通道即进入轮巡状态，开始循环解码，若全部置为不启用，则不进行循环解码。 对循环解码的控制可以配合使用解码轮巡开关来实现，详细参看设置获取解码轮巡开关部分。

See Also

NET_DVR_MatrixSetLoopDecChanInfo_V30


NET_DVR_MatrixGetLoopDecChanInfo

获取轮巡解码通道参数。

BOOL NET_DVR_MatrixGetLoopDecChanInfo(
  LONG                            lUserID,
  DWORD                           dwDecChanNum,
  LPNET_DVR_MATRIX_LOOP_DECINFO   lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
lpInter
[out] 轮巡的解码通道参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

设置多路解码器某一解码通道的轮巡解码参数，每个解码通道最多可连接16路前端设备通道进行循环解码，循环周期可以设置，参数设置成功后，若连接信息中的启用标志置为启用，则该通道即进入轮巡状态，开始循环解码，若全部置为不启用，则不进行循环解码。 对循环解码的控制可以配合使用解码轮巡开关来实现，详细参看设置获取解码轮巡开关部分。

See Also

NET_DVR_MatrixSetLoopDecChanInfo


NET_DVR_MatrixSetLoopDecChanInfo_V30

设置轮巡解码通道参数。

BOOL NET_DVR_MatrixSetLoopDecChanInfo_V30(
  LONG                                lUserID,
  DWORD                               dwDecChanNum,
  LPNET_DVR_MATRIX_LOOP_DECINFO_V30   lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
lpInter
[in] 轮巡的解码通道参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

设置多路解码器某一解码通道的轮巡解码参数，每个解码通道最多可连接64路前端设备通道进行循环解码，循环周期可以设置，参数设置成功后，若连接信息中的启用标志置为启用，则该通道即进入轮巡状态，开始循环解码，若全部置为不启用，则不进行循环解码。 对循环解码的控制可以配合使用解码轮巡开关来实现，详细参看设置获取解码轮巡开关部分。

See Also

NET_DVR_MatrixGetLoopDecChanInfo_V30


NET_DVR_MatrixSetLoopDecChanInfo

设置轮巡解码通道参数。

BOOL NET_DVR_MatrixSetLoopDecChanInfo(
  LONG                            lUserID,
  DWORD                           dwDecChanNum,
  LPNET_DVR_MATRIX_LOOP_DECINFO   lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
lpInter
[in] 轮巡的解码通道参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

设置多路解码器某一解码通道的轮巡解码参数，每个解码通道最多可连接16路前端设备通道进行循环解码，循环周期可以设置，参数设置成功后，若连接信息中的启用标志置为启用，则该通道即进入轮巡状态，开始循环解码，若全部置为不启用，则不进行循环解码。 对循环解码的控制可以配合使用解码轮巡开关来实现，详细参看设置获取解码轮巡开关部分。

See Also

NET_DVR_MatrixGetLoopDecChanInfo


NET_DVR_MatrixGetLoopDecChanEnable

获取单个解码通道轮巡开关。

BOOL NET_DVR_MatrixGetLoopDecChanEnable(
  LONG      lUserID,
  DWORD     dwDecChanNum,
  LPDWORD   lpdwEnable
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
lpdwEnable
[out] 0表示关闭，1表示打开

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_MatrixSetLoopDecChanEnable


NET_DVR_MatrixSetLoopDecChanEnable

设置单个解码通道轮巡开关。

BOOL NET_DVR_MatrixSetLoopDecChanEnable(
  LONG    lUserID,
  DWORD   dwDecChanNum,
  DWORD   dwEnable
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
dwEnable
[int] 0表示关闭，1表示打开

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_MatrixGetLoopDecChanEnable


NET_DVR_MatrixGetLoopDecEnable

获取所有解码通道轮巡开关。

BOOL NET_DVR_MatrixGetLoopDecEnable(
  LONG      lUserID,
  LPDWORD   lpdwEnable
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpdwEnable
[out] 按位表示，0表示关闭，1表示打开

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

轮巡开关用于控制轮巡过程的启停，而不是控制解码的启停，当设置解码器当前正在轮巡的解码通道的轮巡开关为关时，该解码通道停止循环，停留在当前所连接的前端设备通道继续解码，退为动态解码，当设置轮巡开关为开时，解码器恢复该解码通道的循环。

See Also

NET_DVR_MatrixSetLoopDecChanEnable


NET_DVR_MatrixGetDecChanInfo_V30

获取当前解码通道信息。

BOOL NET_DVR_MatrixGetDecChanInfo_V30(
  LONG                                 lUserID,
  DWORD                                dwDecChanNum,
  LPNET_DVR_MATRIX_DEC_CHAN_INFO_V30   lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
lpInter
[out] 解码通道信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_MatrixGetDecChanInfo

获取当前解码通道信息。

BOOL NET_DVR_MatrixGetDecChanInfo(
  LONG                             lUserID,
  DWORD                            dwDecChanNum,
  LPNET_DVR_MATRIX_DEC_CHAN_INFO   lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
lpInter
[out] 解码通道信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_MatrixGetDecChanStatus

获取当前解码通道状态。

BOOL NET_DVR_MatrixGetDecChanStatus(
  LONG                               lUserID,
  DWORD                              dwDecChanNum,
  LPNET_DVR_MATRIX_DEC_CHAN_STATUS   lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
lpInter
[out] 解码通道状态

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

获取解码器某一解码通道的当前状态包括解码通道状态和解码通道信息两部分，解码通道状态用于获取当前解码通道的连接状态，码流拷贝率等，解码通道信息用于获取当前解码通道的解码状态以及所连接的前端dvr通道相关信息。
提示： 这一部分的内容主要是查询多路解码器各解码通道的连接和解码状态，建议只作为参考信息使用，不建议作为解码器设备工作状态的判定依据，也不建议过于频繁的获取解码通道状态。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_MatrixGetDecChanEnable

获取当前解码通道开关。

BOOL NET_DVR_MatrixGetDecChanEnable(
  LONG      lUserID,
  DWORD     dwDecChanNum,
  LPDWORD   lpdwEnable
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
lpdwEnable
[out] 指向DWORD的指针，取出的值0表示关闭，1表示打开

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

解码通道的解码开关，用于控制解码通道的解码过程，设置此开关为关时，无论当前解码通道是处在动态解码还是轮巡过程，都将停止解码，生效后该通道处于黑屏状态；设置开关为开时，将恢复先前过程。
提示： 此功能可与轮巡，轮巡开关等配合使用。

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_MatrixSetDecChanEnable


NET_DVR_MatrixSetDecChanEnable

设置当前解码通道开关。

BOOL NET_DVR_MatrixSetDecChanEnable(
  LONG    lUserID,
  DWORD   dwDecChanNum,
  DWORD   dwEnable
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
dwEnable
[in] 0表示关闭；1表示打开

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

解码通道的解码开关，用于控制解码通道的解码过程，设置此开关为关时，无论当前解码通道是处在动态解码还是轮巡过程，都将停止解码，生效后该通道处于黑屏状态；设置开关为开时，将恢复先前过程。
提示： 此功能可与轮巡，轮巡开关等配合使用。

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_MatrixGetDecChanEnable


NET_DVR_MatrixSetRemotePlay

设置解码设备远程回放文件配置。

BOOL NET_DVR_MatrixSetRemotePlay(
  LONG                                lUserID,
  DWORD                               dwDecChanNum,
  LPNET_DVR_MATRIX_DEC_REMOTE_PLAY    lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
lpInter
[in] 远程回放文件参数结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_MatrixSetRemotePlayControl

远程回放文件控制。

BOOL NET_DVR_MatrixSetRemotePlayControl(
  LONG    lUserID,
  DWORD   dwDecChanNum,
  DWORD   dwControlCode,
  DWORD   dwInValue,
  DWORD   *lpOutValue
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
dwControlCode
[in] 控制命令，具体定义见下表：
宏定义 | 宏定义值 | 含义
NET_DVR_PLAYSTART | 1 | 开始播放
NET_DVR_PLAYSTOP | 2 | 停止播放
NET_DVR_PLAYPAUSE | 3 | 暂停播放
NET_DVR_PLAYRESTART | 4 | 恢复播放
NET_DVR_PLAYFAST | 5 | 快放
NET_DVR_PLAYSLOW | 6 | 慢放
NET_DVR_PLAYNORMAL | 7 | 正常速度播放
NET_DVR_PLAYSTARTAUDIO | 9 | 打开声音
NET_DVR_PLAYSTOPAUDIO | 10 | 关闭声音
NET_DVR_PLAYSETPOS | 12 | 改变文件回放的进度
dwInValue
[in] 设置参数
lpOutValue
[out] 获取到的参数指针

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

接口中的dwInValue和lpOutValue参数根据不同的命令号决定是否输入和输出，如当进行NET_DVR_PLAYSETPOS命令操作时，需要对dwInValue参数进行赋值。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_MatrixGetRemotePlayStatus

获取回放状态。

BOOL NET_DVR_MatrixGetRemotePlayStatus(
  LONG                                      lUserID,
  DWORD                                     dwDecChanNum,
  LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS   lpOuter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
lpOuter
[out] 回放状态

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

多路解码器远程连接前端设备完成按文件名/时间回放文件，并能够获取相应回放状态，进行回放控制等。按时间回放不支持进度控制；由于回放控制命令是转发实现，存在一定的延迟，因此，回放控制命令不宜过于频繁调用，具体视网络状况而定，当把获取的状态作为客户端处理依据时应考虑网络转发的延迟因素；按时间回放时，获取回放状态所得到的文件信息是当前播放的单个片段的信息，并非整个时间范围内全部片段的信息，判断播放是否结束使用NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS结构中的dwCurDataType成员。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_UploadLogo

上传LOGO。

BOOL NET_DVR_UploadLogo(
  LONG                      lUserID,
  DWORD                     dwDecChanNum,
  LPNET_DVR_DISP_LOGOCFG    lpDispLogoCfg,
  char                      *sLogoBuffer
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道号
lpDispLogoCfg
[in] LOGO的参数
sLogoBuffer
[in] LOGO数据缓冲区，最大100K，图像的宽和高必须是32的倍数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_LogoSwitch

LOGO显示控制。

BOOL NET_DVR_LogoSwitch(
  LONG     lUserID,
  DWORD    dwDecChan,
  DWORD    dwLogoSwitch
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChan
[in] 解码通道号
dwLogoSwitch
[in] 开关命令，宏定义如下：
宏定义 | 宏定义值 | 含义
NET_DVR_SHOWLOGO | 1 | 显示LOGO
NET_DVR_HIDELOGO | 2 | 隐藏LOGO

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_MatrixStartPassiveDecode

多路解码器启动被动解码。

LONG NET_DVR_MatrixStartPassiveDecode(
  LONG                            lUserID,
  DWORD                           dwDecChanNum,
  LPNET_DVR_MATRIX_PASSIVEMODE    lpPassiveMode
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道
lpPassiveMode
[in] 被动解码参数

Return Values

-1表示失败，其他值作为NET_DVR_MatrixSendData等函数的参数。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30
NET_DVR_MatrixSendData NET_DVR_MatrixStopPassiveDecode


NET_DVR_MatrixSendData

向被动解码通道发送数据。

BOOL NET_DVR_MatrixSendData(
  LONG     lPassiveHandle,
  char     *pSendBuf,
  DWORD    dwBufSize
);

Parameters

lPassiveHandle
[in] NET_DVR_MatrixStartPassiveDecode的返回值
pSendBuf
[in] 发送数据缓冲区
dwBufSize
[in] 发送缓冲区大小，发送数据大小需小于30K字节

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_MatrixStartPassiveDecode


NET_DVR_MatrixStopPassiveDecode

多路解码器停止被动解码。

BOOL NET_DVR_MatrixStopPassiveDecode(
  LONG   lPassiveHandle
);

Parameters

lUserID
[in] NET_DVR_MatrixStartPassiveDecode的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_MatrixStartPassiveDecode


NET_DVR_MatrixGetPassiveDecodeStatus

获取多路解码器被动解码状态。

LONG NET_DVR_MatrixGetPassiveDecodeStatus(
  LONG      lPassiveHandle
);

Parameters

lPassiveHandle
[in] NET_DVR_MatrixStartPassiveDecode的返回值

Return Values

-1表示失败，1-发送成功，2-暂停发送，3-恢复发送，4-错误，5-心跳信息。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_MatrixStartPassiveDecode


NET_DVR_MatrixPassiveDecodeControl

被动解码播放控制。

BOOL NET_DVR_MatrixPassiveDecodeControl(
  LONG                               lUserID,
  DWORD                              dwDecChanNum,
  LPNET_DVR_PASSIVEDECODE_CONTROL    lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
dwDecChanNum
[in] 解码通道号
lpInter
[in] 解码控制参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_MatrixGetTranInfo_V30

获取透明通道信息。

BOOL NET_DVR_MatrixGetTranInfo_V30(
  LONG                                     lUserID,
  LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30    lpTranInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpTranInfo
[out] 透明通道参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

此处透明通道配置是配置解码器与前端设备之间建立网络透明通道，而不是客户端与解码器之间建立透明通道，多路解码器本身不支持与客户端建立232透明通道和485透明通道，多路解码器本地串口只能作为串口控制台接入（通过RS232）或是控制键盘等输入性设备接入（通过RS232/RS485）。
提示： 目前多路解码器支持最多建立64条透明通道，包括232透明通道和485透明通道，但其中只有最多一条232全双工透明通道和最多一条485全双工透明通道，可以不设置全双工透明通道。

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_MatrixSetTranInfo_V30


NET_DVR_MatrixGetTranInfo

获取透明通道信息。

BOOL NET_DVR_MatrixGetTranInfo(
  LONG                                 lUserID,
  LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG    lpTranInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpTranInfo
[out] 透明通道参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

此处透明通道配置是配置解码器与前端设备之间建立网络透明通道，而不是客户端与解码器之间建立透明通道，多路解码器本身不支持与客户端建立232透明通道和485透明通道，多路解码器本地串口只能作为串口控制台接入（通过RS232）或是控制键盘等输入性设备接入（通过RS232/RS485）。
提示： 目前多路解码器支持最多建立64条透明通道，包括232透明通道和485透明通道，但其中只有最多一条232全双工透明通道和最多一条485全双工透明通道，可以不设置全双工透明通道。

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_MatrixSetTranInfo


NET_DVR_MatrixSetTranInfo_V30

设置透明通道信息。

BOOL NET_DVR_MatrixSetTranInfo_V30(
  LONG                                    lUserID,
  LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30   lpTranInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpTranInfo
[in] 透明通道参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

此处透明通道配置是配置解码器与前端设备之间建立网络透明通道，而不是客户端与解码器之间建立透明通道，多路解码器本身不支持与客户端建立232透明通道和485透明通道，多路解码器本地串口只能作为串口控制台接入（通过RS232）或是控制键盘等输入性设备接入（通过RS232/RS485）。
提示： 目前多路解码器支持最多建立64条透明通道，包括232透明通道和485透明通道，但其中只有最多一条232全双工透明通道和最多一条485全双工透明通道，可以不设置全双工透明通道。

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_MatrixGetTranInfo_V30


NET_DVR_MatrixSetTranInfo

设置透明通道信息。

BOOL NET_DVR_MatrixSetTranInfo(
  LONG                                 lUserID,
  LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG    lpTranInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpTranInfo
[in] 透明通道参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

此处透明通道配置是配置解码器与前端设备之间建立网络透明通道，而不是客户端与解码器之间建立透明通道，多路解码器本身不支持与客户端建立232透明通道和485透明通道，多路解码器本地串口只能作为串口控制台接入（通过RS232）或是控制键盘等输入性设备接入（通过RS232/RS485）。
提示： 目前多路解码器支持最多建立64条透明通道，包括232透明通道和485透明通道，但其中只有最多一条232全双工透明通道和最多一条485全双工透明通道，可以不设置全双工透明通道。

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_MatrixGetTranInfo


NET_DVR_MatrixGetDeviceStatus_V41

解码器获取设备状态。

BOOL NET_DVR_MatrixGetDeviceStatus_V41(
  LONG                                 lUserID,
  LPNET_DVR_DECODER_WORK_STATUS_V41    lpDecoderCfg
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpDecoderCfg
[out] 设备状态参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于

NET_DVR_MatrixGetDeviceStatus


NET_DVR_MatrixGetDeviceStatus

多路解码器获取设备状态。

BOOL NET_DVR_MatrixGetDeviceStatus(
  LONG                             lUserID,
  LPNET_DVR_DECODER_WORK_STATUS    lpDecoderCfg
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpDecoderCfg
[out] 设备状态参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见
NET_DVR_MatrixGetDeviceStatus_V41


NET_DVR_GetDecInfo

获取解码设备参数。

BOOL NET_DVR_GetDecInfo(
  LONG               lUserID,
  LONG               lChannel,
  LPNET_DVR_DECCFG   lpDecoderinfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpDecoderinfo
[out] 解码设备参数指针

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_SetDecInfo


NET_DVR_SetDecInfo

配置解码设备参数。

BOOL NET_DVR_SetDecInfo(
  LONG               lUserID,
  LONG               lChannel,
  LPNET_DVR_DECCFG   lpDecoderinfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpDecoderinfo
[in] 解码设备参数指针

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_GetDecInfo


NET_DVR_GetDecTransPort

设置解码设备透明通道参数。

BOOL NET_DVR_GetDecTransPort(
  LONG                lUserID,
  LPNET_DVR_PORTCFG   lpTransPort
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpTransPort
[out] 解码设备透明通道参数结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_SetDecTransPort


NET_DVR_SetDecTransPort

设置解码设备透明通道参数。

BOOL NET_DVR_SetDecTransPort(
  LONG                lUserID,
  LPNET_DVR_PORTCFG   lpTransPort
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpTransPort
[in] 解码设备透明通道参数结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_GetDecTransPort


NET_DVR_DecPlayBackCtrl

解码设备远程回放文件控制。

BOOL NET_DVR_DecPlayBackCtrl(
  LONG                       lUserID,
  LONG                       lChannel,
  DWORD                      dwControlCode,
  DWORD                      dwInValue,
  DWORD                      *lpOutValue,
  LPNET_DVR_PLAYREMOTEFILE   lpRemoteFileInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
dwControlCode
[in] 控制命令，具体定义见下表：
宏定义 | 宏定义值 | 含义
NET_DVR_PLAYSTART | 1 | 开始播放
NET_DVR_PLAYSTOP | 2 | 停止播放
NET_DVR_PLAYPAUSE | 3 | 暂停播放
NET_DVR_PLAYRESTART | 4 | 恢复播放
NET_DVR_PLAYFAST | 5 | 快放
NET_DVR_PLAYSLOW | 6 | 慢放
dwInValue
[in] 设置参数
lpOutValue
[out] 获取到的参数指针
lpRemoteFileInfo
[in] 回放文件的参数结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_StartDecSpecialCon

启动解码设备动态控制解码连接。

BOOL NET_DVR_StartDecSpecialCon(
  LONG                    lUserID,
  LONG                    lChannel,
  LPNET_DVR_DECCHANINFO   lpDecChanInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpDecChanInfo
[in] 解码设备通道参数结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_StopDecSpecialCon


NET_DVR_StopDecSpecialCon

停止解码设备动态控制解码连接。

BOOL NET_DVR_StopDecSpecialCon(
  LONG                    lUserID,
  LONG                    lChannel,
  LPNET_DVR_DECCHANINFO   lpDecChanInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号，0xffffffff表示所有的解码通道
lpDecChanInfo
[in] 解码设备通道参数结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_StartDecSpecialCon


NET_DVR_DecCtrlDec

解码设备运行状态控制。

BOOL NET_DVR_DecCtrlDec(
  LONG    lUserID,
  LONG    lChannel,
  DWORD   dwControlCode
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
dwControlCode
[in] 控制状态：1－启动解码；2－停止解码；3－停止当前轮巡；4－继续轮巡

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_DecCtrlScreen

解码设备解码窗口放大还原。

BOOL NET_DVR_DecCtrlScreen(
  LONG    lUserID,
  LONG    lChannel,
  DWORD   dwControl
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
dwControl
[in] 1－全屏；2－还原

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetDecCurLinkStatus

获取解码设备当前连接状态。

BOOL NET_DVR_GetDecCurLinkStatus(
  LONG                  lUserID,
  LONG                  lChannel,
  LPNET_DVR_DECSTATUS   lpDecStatus
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpDecStatus
[out] 解码设备状态参数结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetDeviceAbility

获取设备能力集。

BOOL NET_DVR_GetDeviceAbility(
  LONG     lUserID,
  DWORD    dwAbilityType,
  char     *pInBuf,
  DWORD    dwInLength,
  char     *pOutBuf,
  DWORD    dwOutLength
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwAbilityType
[in] 能力类型，具体定义见下表：
宏定义 | 宏定义值 | 含义
VCA_DEV_ABILITY | 0x100 | 智能设备的能力
VCA_CHAN_ABILITY | 0x110 | 智能通道的能力
pInBuf
[in] 输入缓冲区指针（按照设备规定的能力参数的描述方式组合，可以是XML文本或结构体形式）
dwInLength
[in] 输入缓冲区的长度
pOutBuf
[out] 输出缓冲区指针（按照设备规定的能力集的描述方式，可以是XML文本或结构体形式）
dwOutLength
[in] 接收数据的缓冲区的长度

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

接口中pInBuf参数的具体定义格式按照不同的设备规定有所不同，可以是以结构体的形式或者XML描述方式。同样地，参数pOutBuf的输出表达格式也按不同的设备规定可以是以结构体的形式或者XML描述方式。前6种能力描述都是以XML格式给出，详见各产品的能力描述解析方法，这里不进行详细说明。下表列出了其余能力类型获取时，需要输入参数和输出参数的格式定义。

能力类型宏定义 | 能力类型说明 | pInBuf | pOutBuf
VCA_DEV_ABILITY | 获取智能设备的能力 | 无 | NET_VCA_DEV_ABILITY
VCA_CHAN_ABILITY | 获取智能通道能力 | NET_VCA_CHAN_IN_PARAM byVCAType值为VCA_BEHAVIOR_BASE, VCA_BEHAVIOR_ADVANCE, VCA_BEHAVIOR_FULL等 | NET_VCA_BEHAVIOR_ABILITY
VCA_CHAN_ABILITY | 获取智能通道能力 | NET_VCA_CHAN_IN_PARAM byVCAType值为VCA_ITS | NET_DVR_ITS_ABILITY

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_VCA_CTRLCFG | 获取智能控制参数 | 无效 | NET_VCA_CTRLCFG | 165
NET_DVR_GET_CALIBRATION | 获取标定信息 | 有效 | NET_DVR_CALIBRATION_CFG | 183

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_VCA_CTRLCFG | 设置智能控制参数 | 无效 | NET_VCA_CTRLCFG | 164
NET_DVR_SET_CALIBRATION | 设置标定信息 | 有效 | NET_DVR_CALIBRATION_CFG | 182

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_GetVCADrawMode

获取智能信息DSP叠加配置参数。

BOOL NET_DVR_GetVCADrawMode(
  LONG                    lUserID,
  LONG                    lChannel,
  LPNET_VCA_DRAW_MODE     lpDrawMode
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpDrawMode
[out] 叠加模式参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SetVCADrawMode


NET_DVR_SetVCADrawMode

设置智能信息DSP叠加配置参数。

BOOL NET_DVR_SetVCADrawMode(
  LONG                    lUserID,
  LONG                    lChannel,
  LPNET_VCA_DRAW_MODE     lpDrawMode
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpDrawMode
[in] 叠加模式参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_GetVCADrawMode


NET_VCA_RestartLib

重启智能库。

BOOL NET_VCA_RestartLib(
  LONG   lUserID,
  LONG   lChannel
);

Parameters

lUserID
[in] 用户ID号，NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

此接口只针对智能设备。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_VerifyCalibration

标定校验。

BOOL NET_DVR_VerifyCalibration(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize,
  LPVOID   lpOuterBuffer,
  DWORD    dwOuterBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 命令类型，具体定义见下表：
宏定义 | 宏定义值 | 含义
NET_DVR_PDC_VERIFY_CALIBRATION | 0x001 | 人流量统计标定校验
NET_DVR_VERIFY_BEHAVIOR_CALIBRATION | 0x002 | 行为分析标定校验
NET_DVR_VERIFY_ITS_CALIBRATION | 0x003 | 智能交通标定校验
lChannel
[in] 通道号
lpInBuffer
[in] 输入缓冲区指针
dwInBufferSize
[in] 输入缓冲区的长度
lpOuterBuffer
[out] 输出缓冲区指针
dwOuterBufferSize
[in] 接收数据的缓冲区的长度

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError.

Remarks

接口中pInBuf参数的具体定义按照不同的命令有所不同。同样地，参数pOutBuf的输出也根据命令的不同而有所区别。具体的命令对应的输入输出参数的结构如下表所示。

命令类型 | 命令类型说明 | lpInBuffer | lpOuterBuffer
NET_DVR_PDC_VERIFY_CALIBRATION | 获取人流量标定校验参数 | NET_VCA_POINT | NET_VCA_RECT
NET_DVR_VERIFY_BEHAVIOR_CALIBRATION | 获取行为分析标定校验参数 | NET_DVR_LINE_SEGMENT | 4个字节浮点型长度或者高度
NET_DVR_VERIFY_ITS_CALIBRATION | 获取智能交通标定校验参数 | NET_DVR_LINE_SEGMENT | 4个字节浮点型长度或者高度

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetBehaviorParamKey

获取内部关键字参数。

BOOL NET_DVR_GetBehaviorParamKey(
  LONG    lUserID,
  LONG    lChannel,
  DWORD   dwParameterKey,
  int     *pValue
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
dwParameterKey
[in] 参数关键字，具体定义见下表：
enum tagPDC_PARAM_KEY{
  HUMAN_GENERATE_RATE = 50,
  DETECT_SENSITIVE    = 51
}PDC_PARAM_KEY
HUMAN_GENERATE_RATE
目标生成速度
DETECT_SENSITIVE
检测灵敏度
pValue
[out] 参数值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SetBehaviorParamKey NET_DVR_Login NET_DVR_Login_V30


NET_DVR_SetBehaviorParamKey

设置内部关键字参数。

BOOL NET_DVR_SetBehaviorParamKey(
  LONG    lUserID,
  LONG    lChannel,
  DWORD   dwParameterKey,
  int     nValue
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
dwParameterKey
[in] 参数关键字，具体定义见下表：
enum tagPDC_PARAM_KEY{
  HUMAN_GENERATE_RATE = 50,
  DETECT_SENSITIVE    = 51
}PDC_PARAM_KEY
HUMAN_GENERATE_RATE
目标生成速度
DETECT_SENSITIVE
检测灵敏度
nValue
[in] 参数值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_GetBehaviorParamKey NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetVCAVersion

获取智能库版本号。

BOOL NET_DVR_GetVCAVersion(
  LONG                    lUserID,
  LONG                    lChannel,
  LPNET_DVR_VCA_VERSION   lpVersion
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpVersion
[out] 智能库版本信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_RULECFG | 获取行为分析参数 | 有效 | NET_VCA_RULECFG | 153
NET_DVR_GET_VCA_MASK_REGION | 获取屏蔽区域参数 | 有效 | NET_VCA_MASK_REGION_LIST | 167
NET_DVR_GET_VCA_ENTER_REGION | 获取进入区域参数 | 有效 | NET_VCA_ENTER_REGION | 169

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_RULECFG | 设置行为分析参数 | 有效 | NET_VCA_RULECFG | 152
NET_DVR_SET_VCA_MASK_REGION | 设置屏蔽区域参数 | 有效 | NET_VCA_MASK_REGION_LIST | 166
NET_DVR_SET_VCA_ENTER_REGION | 设置进入区域参数 | 有效 | NET_VCA_ENTER_REGION | 168

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_PU_STREAMCFG | 获取iVMS前端取流参数 | 有效 | NET_DVR_PU_STREAM_CFG | 187

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_PU_STREAMCFG | 设置iVMS前端取流参数 | 有效 | NET_DVR_PU_STREAM_CFG | 186

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_PDC_RULECFG | 获取人流量规则配置参数 | 有效 | NET_DVR_PDC_RULE_CFG | 185

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_PDC_RULECFG | 设置人流量规则参数 | 有效 | NET_DVR_PDC_RULE_CFG | 184

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_FindPDCInfo

人流量信息查询。

LONG NET_DVR_FindPDCInfo(
  LONG               lUserID,
  LONG               lChannel,
  LPNET_DVR_TIME     lpStartTime,
  LPNET_DVR_TIME     lpStopTime
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpStartTime
[in] 统计的开始时间
lpStopTime
[in] 统计的结束时间

Return Values

-1表示失败，其他值作为NET_DVR_FindNextPDCInfo等函数的参数。获取错误码调用NET_DVR_GetLastError

Remarks

该接口调用成功后，就可以调用NET_DVR_FindNextPDCInfo接口来获取人数统计信息。

See Also

NET_DVR_FindNextPDCInfo NET_DVR_FindPDCClose


NET_DVR_FindNextPDCInfo

逐个获取查找到的人流量信息。

LONG NET_DVR_FindNextPDCInfo(
  LONG                      lFindHandle,
  LPNET_DVR_PDC_QUERY       lpFindData
);

Parameters

lFindHandle
[in] 人流量统计信息查找句柄，NET_DVR_FindPDCInfo的返回值
lpFindData
[out] 保存人流量统计信息的指针

Return Values

-1表示失败，其他值表示当前的获取状态等信息，详见下表。获取错误码调用NET_DVR_GetLastError

宏定义 | 宏定义值 | 含义
NET_DVR_FILE_SUCCESS | 1000 | 获取人流量统计信息成功
NET_DVR_FILE_NOFIND | 1001 | 未查找到人流量统计信息
NET_DVR_ISFINDING | 1002 | 正在查找请等待
NET_DVR_NOMOREFILE | 1003 | 没有更多的信息，查找结束
NET_DVR_FILE_EXCEPTION | 1004 | 查找信息时异常

Remarks

在调用该接口获取查找文件之前，必须先调用NET_DVR_FindPDCInfo得到当前的查找句柄。

See Also

NET_DVR_FindPDCInfo


NET_DVR_FindPDCClose

关闭人流量信息查找，释放资源。

BOOL NET_DVR_FindPDCClose(
  LONG   lFindHandle
);

Parameters

lFindHandle
[in] 人流量信息查找句柄NET_DVR_FindPDCInfo的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_FindPDCInfo


NET_DVR_ResetCounter

人流量统计重置。

BOOL NET_DVR_ResetCounter(
  LONG    lUserID,
  LONG    lChannel
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_IVMS_STREAMCFG | 获取智能分析仪(iDS-52XX)前端取流参数 | 有效 | NET_IVMS_STREAMCFG | 163
NET_DVR_GET_IVMS_BEHAVIORCFG | 获取智能分析仪(iDS-52XX)行为规则参数 | 有效 | NET_IVMS_BEHAVIORCFG | 177
NET_DVR_GET_IVMS_MASK_REGION | 获取智能分析仪(iDS-52XX)屏蔽区域参数 | 有效 | NET_IVMS_MASK_REGION_LIST | 173
NET_DVR_GET_IVMS_ENTER_REGION | 获取智能分析仪(iDS-52XX)ATM进入区域参数 | 有效 | NET_IVMS_ENTER_REGION | 175

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_IVMS_STREAMCFG | 设置智能分析仪(iDS-5200xx)前端取流参数 | 有效 | NET_IVMS_STREAMCFG | 162
NET_DVR_SET_IVMS_BEHAVIORCFG | 设置智能分析仪(iDS-5200xx)行为规则参数 | 有效 | NET_IVMS_BEHAVIORCFG | 176
NET_DVR_SET_IVMS_MASK_REGION | 设置智能分析仪(iDS-5200xx)屏蔽区域参数 | 有效 | NET_IVMS_MASK_REGION_LIST | 172
NET_DVR_SET_IVMS_ENTER_REGION | 设置智能分析仪(iDS-5200xx)ATM进入区域参数 | 有效 | NET_IVMS_ENTER_REGION | 174

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_TRACK_CFG | 获取双摄像机的配置参数 | 有效 | NET_DVR_TRACK_CFG | 161

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError.

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_TRACK_CFG | 设置双摄像机的配置参数 | 有效 | NET_DVR_TRACK_CFG | 160

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_GetTrackMode

获取双摄像机跟踪模式参数。

BOOL NET_DVR_GetTrackMode(
  LONG                   lUserID,
  LONG                   lChannel,
  LPNET_DVR_TRACK_MODE   lpTrackMode
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpTrackMode
[out] 获取的双摄像机跟踪模式参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_SetTrackMode


NET_DVR_SetTrackMode

设置双摄像机跟踪模式。

BOOL NET_DVR_SetTrackMode(
  LONG                   lUserID,
  LONG                   lChannel,
  LPNET_DVR_TRACK_MODE   lpTrackMode
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpTrackMode
[in] 双摄像机跟踪模式参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_GetTrackMode


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_TRACK_CFG | 获取智能球机的配置参数 | 有效 | NET_DVR_TRACK_CFG | 161
NET_DVR_GET_POSITION_TRACK | 获取场景跟踪的配置参数 | 有效 | NET_DVR_POSITION_TRACK_CFG | 181
NET_DVR_GET_TRACK_PARAMCFG | 获取本地菜单规则配置参数 | 有效 | NET_DVR_TRACK_PARAMCFG | 197
NET_DVR_GET_DOME_MOVEMENT_PARAM | 获取球机机芯参数 | 无效 | NET_DVR_DOME_MOVEMENT_PARAM | 198

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_TRACK_CFG | 设置智能球机的配置参数 | 有效 | NET_DVR_TRACK_CFG | 160
NET_DVR_SET_POSITION_TRACK | 设置场景跟踪的配置参数 | 有效 | NET_DVR_POSITION_TRACK_CFG | 180
NET_DVR_SET_TRACK_PARAMCFG | 设置本地菜单规则配置参数 | 有效 | NET_DVR_TRACK_PARAMCFG | 196

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_GetPositionRule

获取场景位置规则信息参数。

BOOL NET_DVR_GetPositionRule(
  LONG                          lUserID,
  LONG                          lChannel,
  LONG                          lPositionIndex,
  LPNET_DVR_POSITION_RULE_CFG   lpPositionRule
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lPositionIndex
[in] 场景索引
lpPositionRule
[out] 场景位置行为规则

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_SetPositionRule


NET_DVR_SetPositionRule

设置场景位置规则信息参数。

BOOL NET_DVR_SetPositionRule(
  LONG                          lUserID,
  LONG                          lChannel,
  LONG                          lPositionIndex,
  LPNET_DVR_POSITION_RULE_CFG   lpPositionRule
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lPositionIndex
[in] 场景索引
lpPositionRule
[in] 场景位置行为规则

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_GetPositionRule


NET_DVR_GetPositionLimitAngle

获取场景限位操作的参数。

BOOL NET_DVR_GetPositionLimitAngle(
  LONG                    lUserID,
  LONG                    lChannel,
  LONG                    lPositionIndex,
  LPNET_DVR_LIMIT_ANGLE   lpLimitAngle
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lPositionIndex
[in] 场景索引（目前设备支持10个场景）
lpLimitAngle
[out] 限位参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_SetPositionLimitAngle


NET_DVR_SetPositionLimitAngle

设置场景限位操作的参数。

BOOL NET_DVR_SetPositionLimitAngle(
  LONG                    lUserID,
  LONG                    lChannel,
  LONG                    lPositionIndex,
  LPNET_DVR_LIMIT_ANGLE   lpLimitAngle
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lPositionIndex
[in] 场景索引（目前设备支持10个场景）
lpLimitAngle
[in] 限位参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_GetPositionLimitAngle


NET_DVR_GetPtzPosition

获取本地场景PTZ位置参数。

BOOL NET_DVR_GetPtzPosition(
  LONG                     lUserID,
  LONG                     lChannel,
  LONG                     lPositionID,
  LPNET_DVR_PTZ_POSITION   lpPtzPosition
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lPositionID
[in] 场景位置ID
lpPtzPosition
[out] PTZ位置信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_SetPtzPosition


NET_DVR_SetPtzPosition

设置本地场景PTZ位置参数。

BOOL NET_DVR_SetPtzPosition(
  LONG                     lUserID,
  LONG                     lChannel,
  LONG                     lPositionID,
  LPNET_DVR_PTZ_POSITION   lpPtzPosition
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lPositionID
[in] 场景位置ID
lpPtzPosition
[in] PTZ位置信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_GetPtzPosition


NET_DVR_GetPatrolTrack

获取场景巡航路径信息参数。

BOOL NET_DVR_GetPatrolTrack(
  LONG                        lUserID,
  LONG                        lChannel,
  LONG                        lPatrolIndex,
  LPNET_DVR_PATROL_TRACKCFG   lpPatrolTrack
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lPatrolIndex
[in] 巡航索引
lpPatrolTrack
[out] 场景巡航跟踪信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_SetPatrolTrack


NET_DVR_SetPatrolTrack

设置场景巡航路径信息参数。

BOOL NET_DVR_SetPatrolTrack(
  LONG                        lUserID,
  LONG                        lChannel,
  LONG                        lPatrolIndex,
  LPNET_DVR_PATROL_TRACKCFG   lpPatrolTrack
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lPatrolIndex
[in] 巡航索引
lpPatrolTrack
[in] 场景巡航跟踪信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_GetPatrolTrack


NET_DVR_GetPatrolLimitAngle

获取场景巡航跟踪限位参数。

BOOL NET_DVR_GetPatrolLimitAngle(
  LONG                    lUserID,
  LONG                    lChannel,
  LONG                    lPatrolIndex,
  LPNET_DVR_LIMIT_ANGLE   lpLimitAngle
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lPatrolIndex
[in] 巡航索引
lpLimitAngle
[out] 限位信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_SetPatrolLimitAngle


NET_DVR_SetPatrolLimitAngle

设置场景巡航跟踪限位参数。

BOOL NET_DVR_SetPatrolLimitAngle(
  LONG                    lUserID,
  LONG                    lChannel,
  LONG                    lPatrolIndex,
  LPNET_DVR_LIMIT_ANGLE   lpLimitAngle
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lPatrolIndex
[in] 巡航索引
lpLimitAngle
[in] 限位信息

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30 NET_DVR_GetPatrolLimitAngle


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_REFERENCE_REGION | 获取参考区域 | 有效 | NET_DVR_REGION_LIST | 400
NET_DVR_GET_AID_RULECFG | 获取交通事件规则参数 | 无效 | NET_DVR_AID_RULECFG | 405
NET_DVR_GET_TPS_RULECFG | 获取交通统计规则参数 | 无效 | NET_DVR_TPS_RULECFG | 407
NET_DVR_GET_LANECFG | 获取车道规则 | 有效 | NET_DVR_LANE_CFG | 409

Remarks

参考区域即在图像区域选择一块或者多块用于自动检测区分昼夜场景切换的区域。

See Also

NET_DVR_SetDVRConfig


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError.

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_REFERENCE_REGION | 设置参考区域 | 有效 | NET_DVR_REGION_LIST | 401
NET_DVR_SET_AID_RULECFG | 设置交通事件规则参数 | 无效 | NET_DVR_AID_RULECFG | 404
NET_DVR_SET_TPS_RULECFG | 设置交通统计规则参数 | 无效 | NET_DVR_TPS_RULECFG | 406
NET_DVR_SET_LANECFG | 设置车道规则 | 有效 | NET_DVR_LANE_CFG | 408

See Also

NET_DVR_GetDVRConfig


NET_DVR_GetSceneMode

获取场景模式。

BOOL NET_DVR_GetSceneMode(
  LONG     lUserID
  LONG     lChannel
  DWORD    *pSceneMode
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
pSceneMode
[out] 场景模式
enum tagTRAFFIC_SCENE_MODE{
  FREEWAY  = 0,
  TUNNEL,
  BRIDGE
}TRAFFIC_SCENE_MODE
FREEWAY
高速户外场景
TUNNEL
高速隧道场景
BRIDGE
高速桥梁场景

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_SetSceneMode


NET_DVR_SetSceneMode

设置场景模式。

BOOL NET_DVR_SetSceneMode(
  LONG     lUserID
  LONG     lChannel
  DWORD    dwSceneMode
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
dwCaptureMode
[in] 场景模式
enum tagTRAFFIC_SCENE_MODE{
  FREEWAY  = 0,
  TUNNEL,
  BRIDGE
}TRAFFIC_SCENE_MODE
FREEWAY
高速户外场景
TUNNEL
高速隧道场景
BRIDGE
高速桥梁场景

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_GetSceneMode


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_RULECFG | 获取行为分析参数 | 有效 | NET_VCA_RULECFG | 153
NET_DVR_GET_FACEDETECT_RULECFG | 获取人脸检测规则 | 有效 | NET_DVR_FACEDETECT_RULECFG | 421

See Also

NET_DVR_SetDVRConfig


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError.

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_RULECFG | 设置行为分析参数 | 有效 | NET_VCA_RULECFG | 152
NET_DVR_SET_FACEDETECT_RULECFG | 设置人脸检测规则 | 有效 | NET_DVR_FACEDETECT_RULECFG | 420

Remarks

如果获取设备上传的人脸检测结果信息，需要设置报警回调（NET_DVR_SetDVRMessageCallBack_V30）和报警布防（NET_DVR_SetupAlarmChan_V30），在设置的回调中相应的消息类型为COMM_ALARM_FACE。

See Also

NET_DVR_GetDVRConfig


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_FACESNAPCFG | 获取人脸抓拍参数 | 有效 | NET_VCA_FACESNAPCFG | 5001
NET_DVR_GET_DEVACCESS_CFG | 获取接入设备参数 | 有效 | NET_DVR_DEV_ACCESS_CFG | 5005
NET_DVR_GET_SAVE_PATH_CFG | 获取存储信息参数 | 有效 | NET_VCA_SAVE_PATH_CFG | 5007

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_FACESNAPCFG | 设置人脸抓拍参数 | 有效 | NET_VCA_FACESNAPCFG | 5002
NET_DVR_SET_DEVACCESS_CFG | 设置接入设备参数 | 有效 | NET_DVR_DEV_ACCESS_CFG | 5006
NET_DVR_SET_SAVE_PATH_CFG | 设置存储信息参数 | 有效 | NET_VCA_SAVE_PATH_CFG | 5008

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_FindBackgroundPic

根据人脸子图的ID查找背景图。

BOOL NET_DVR_FindBackgroundPic(
  LONG        lUserID,
  DWORD       dwPicID,
  BYTE        *pPicBuffer,
  DWORD       *dwPicLen
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwPicID
[in] 人脸子图的ID号，通过报警信息回调（NET_DVR_SetDVRMessageCallBack_V30）获取
pPicBuffer
[in] 背景图数据指针
dwPicLen
[in] 背景图数据长度

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login_V30 NET_DVR_SetDVRMessageCallBack_V30


NET_DVR_FindFaceMatchAlarm

黑名单比对报警结果查询。

LONG NET_DVR_FindFaceMatchAlarm(
  LONG                         lUserID,
  LPNET_VCA_FIND_PICTURECOND   lpFindParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pFindCond
[in] 查找条件参数

Return Values

-1表示失败，其他值作为NET_DVR_FindNextFaceMatchAlarm等函数的参数。获取错误码调用NET_DVR_GetLastError

Remarks

该接口指定了要查找的录像文件的信息，调用成功后，就可以调用NET_DVR_FindNextFaceMatchAlarm接口来获取黑名单比对报警结果信息。

See Also

NET_DVR_Login_V30
NET_DVR_FindNextFaceMatchAlarm NET_DVR_FindFaceMatchAlarmClose


NET_DVR_FindNextFaceMatchAlarm

逐个查找黑名单信息。

LONG NET_DVR_FindNextFaceMatchAlarm(
  LONG                                 lFindHandle,
  LPNET_VCA_FACESNAP_MATCH_ALARM_LOG   lpFaceMatchAlarmLog
);

Parameters

lFindHandle
[in] 查找句柄，NET_DVR_FindFaceMatchAlarm的返回值
lpFindData
[out] 保存查找结果信息的指针

Return Values

-1表示失败，其他值表示当前的获取状态等信息，详见下表。获取错误码调用NET_DVR_GetLastError

宏定义 | 宏定义值 | 含义
NET_DVR_FILE_SUCCESS | 1000 | 获取文件信息成功
NET_DVR_FILE_NOFIND | 1001 | 未查找到文件
NET_DVR_ISFINDING | 1002 | 正在查找请等待
NET_DVR_NOMOREFILE | 1003 | 没有更多的文件，查找结束
NET_DVR_FILE_EXCEPTION | 1004 | 查找文件时异常

Remarks

在调用该接口获取查找文件之前，必须先调用NET_DVR_FindFaceMatchAlarm得到当前的查找句柄。此接口用于获取一条已查找到的黑白名单信息，若要获取全部的已查找到的黑白名单信息，需要循环调用此接口。

每次可查询黑名单数目最大为2000。

See Also

NET_DVR_FindFaceMatchAlarm


NET_DVR_FindFaceMatchAlarmClose

关闭黑名单比对报警结果查询。

BOOL NET_DVR_FindFaceMatchAlarmClose(
  LONG   lFindHandle
);

Parameters

lFindHandle
[in] 查找句柄，NET_DVR_FindFaceMatchAlarm的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_FindFaceMatchAlarm


NET_DVR_GetFaceMatchPic

根据抓拍人脸子图的ID、黑名单ID、黑名单比对人脸子图ID查找相应的图片。

BOOL NET_DVR_GetFaceMatchPic(
  LONG                          lUserID,
  LPNET_VCA_FACEMATCH_PICCOND   lpMatchCond,
  LPNET_VCA_FACEMATCH_PICTURE   lpMatchPic
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpMatchCond
[in] 查找条件参数
lpMatchPic
[out] 查找图片结果

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

Remark

搜索条件中的抓拍人脸子图ID(dwSnapFacePicID)、匹配的黑名单ID(dwRegisterID)和比对的黑名单人脸子图ID（dwBlackListPicID）可从查询结果 (NET_VCA_FACESNAP_MATCH_ALARM_LOG)中获得，且三个条件缺一不可，否则返回失败，无法查询。

See Also

NET_DVR_Login_V30


NET_DVR_DetectImage

单张图片检测。

BOOL NET_DVR_DetectImage(
  LONG                          lUserID,
  LPNET_VCA_FD_PROCIMG_CFG      lpFDProcImg,
  LPNET_VCA_FD_PROCIMG_RESULT   lpOutBuf
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpFDProcImg
[in] 图片信息参数
lpOutBuf
[out] 检测结果

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

Remark

不需要建模，只是记录大图信息，将大图上传给设备。

See Also

NET_DVR_Login_V30


NET_DVR_AddBlackList

添加黑白名单信息。

BOOL NET_DVR_AddBlackList(
  LONG                       lUserID,
  LONG                       lChannel,
  LPNET_VCA_BLACKLIST_PARA   lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpInter
[in] 黑白名单信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_Login_V30


NET_DVR_FastAddBlackList

快速注册黑白名单信息。

BOOL NET_DVR_FastAddBlackList(
  LONG                                    lUserID,
  LONG                                    lChannel,
  LPNET_VCA_BLACKLIST_FASTREGISTER_PARA   lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpInter
[in] 黑白名单信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

Remark

该接口于批量注册黑名单时使用，输出的图片为单张单人脸图片，若图片包含多个人脸，则以评分最高的人脸为黑名单对应的注册图片。

See Also

NET_DVR_Login_V30


NET_DVR_FindBlackList

黑白名单信息查询。

LONG NET_DVR_FindBlackList(
  LONG                       lUserID,
  LPNET_VCA_BLACKLIST_COND   lpBlackListCond
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpBlackListCond
[in] 查找条件参数

Return Values

-1表示失败，其他值作为NET_DVR_FindNextBlackList等函数的参数。获取错误码调用NET_DVR_GetLastError。

Remarks

该接口指定了要查找的黑白名单的信息，调用成功后，就可以调用NET_DVR_FindNextBlackList接口来获取黑白名单信息。

See Also

NET_DVR_FindNextBlackList NET_DVR_FindBlackListClose


NET_DVR_FindNextBlackList

逐个查找黑名单信息。

LONG NET_DVR_FindNextBlackList(
  LONG                       lFindHandle,
  LPNET_VCA_BLACKLIST_INFO   lpFindData
);

Parameters

lFindHandle
[in] 查找句柄，NET_DVR_FindBlackList的返回值
lpFindData
[out] 保存查找结果信息的指针

Return Values

-1表示失败，其他值表示当前的获取状态等信息，详见下表。获取错误码调用NET_DVR_GetLastError。

宏定义 | 宏定义值 | 含义
NET_DVR_FILE_SUCCESS | 1000 | 获取文件信息成功
NET_DVR_FILE_NOFIND | 1001 | 未查找到文件
NET_DVR_ISFINDING | 1002 | 正在查找请等待
NET_DVR_NOMOREFILE | 1003 | 没有更多的文件，查找结束
NET_DVR_FILE_EXCEPTION | 1004 | 查找文件时异常

Remarks

在调用该接口获取查找信息之前，必须先调用NET_DVR_FindBlackList得到当前的查找句柄。此接口用于获取一条已查找到的黑白名单信息，若要获取全部的已查找到的黑白名单信息，需要循环调用此接口。

每次可查询黑名单数目最大为2000。

See Also

NET_DVR_FindBlackList


NET_DVR_FindBlackListClose

关闭黑白名单信息查询。

BOOL NET_DVR_FindBlackListClose(
  LONG   lFindHandle
);

Parameters

lFindHandle
[in] 查找句柄，NET_DVR_FindBlackList的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_FindBlackList


NET_DVR_GetBlackListPicture

按黑名单ID下载图片。

BOOL NET_DVR_GetBlackListPicture(
  LONG                      lUserID,
  DWORD                     dwRegisterID,
  LPNET_VCA_BLACKLIST_PIC   lpOutBuffer
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwRegisterID
[in] 已注册的黑名单ID
lpOutBuffer
[out] 获取的图片数据

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

Remark

dwRegisterID是由接口NET_DVR_FindNextBlackList获得的结果中的ID。

See Also

NET_DVR_Login_V30 NET_DVR_FindNextBlackList


NET_DVR_UpdateBlackList

修改黑白名单信息。

BOOL NET_DVR_UpdateBlackList(
  LONG                         lUserID,
  LONG                         lChannel,
  LPNET_VCA_BLACKLIST_PARA     lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpInter
[in] 黑白名单修改参数信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

Remarks

dwRegisterID是由接口NET_DVR_FindNextBlackList获得的结果中的ID。

See Also

NET_DVR_Login_V30
NET_DVR_FindNextBlackList


NET_DVR_DelBlackList

删除黑白名单信息。

BOOL NET_DVR_DelBlackList(
  LONG         lUserID,
  LONG         lChannel,
  DWORD        dwRegisterID
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
dwRegisterID
[in] 黑白名单注册ID

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

Remarks

dwRegisterID是由接口NET_DVR_FindNextBlackList获得的结果中的ID。

See Also

NET_DVR_Login_V30 NET_DVR_FindNextBlackList


NET_DVR_FindSnapPicture

事后查找抓拍人脸图片。

LONG NET_DVR_FindSnapPicture(
  LONG                         lUserID,
  LPNET_VCA_FIND_PICTURECOND   lpFindParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpFindParam
[in] 查找条件参数

Return Values

-1表示失败，其他值作为NET_DVR_FindNextSnapPic等函数的参数。获取错误码调用NET_DVR_GetLastError

Remarks

该接口指定了要查找的图片信息，调用成功后，就可以调用NET_DVR_FindNextSnapPic接口来获取人脸图片信息。

See Also

NET_DVR_Login_V30
NET_DVR_FindNextSnapPic NET_DVR_FindSnapPicClose


NET_DVR_FindNextSnapPic

逐个查找人脸图片信息。

LONG NET_DVR_FindNextSnapPic(
  LONG                         lFindHandle,
  LPNET_VCA_SUB_SNAPPIC_DATA   lpFindData
);

Parameters

lFindHandle
[in] 查找句柄，NET_DVR_FindSnapPicture或NET_DVR_AdvanceFindSnapPicture的返回值
lpFindData
[out] 保存查找结果信息的指针

Return Values

-1表示失败，其他值表示当前的获取状态等信息，详见下表。获取错误码调用NET_DVR_GetLastError。

宏定义 | 宏定义值 | 含义
NET_DVR_FILE_SUCCESS | 1000 | 获取文件信息成功
NET_DVR_FILE_NOFIND | 1001 | 未查找到文件
NET_DVR_ISFINDING | 1002 | 正在查找请等待
NET_DVR_NOMOREFILE | 1003 | 没有更多的文件，查找结束
NET_DVR_FILE_EXCEPTION | 1004 | 查找文件时异常

Remarks

在调用该接口获取查找图片之前，必须先调用NET_DVR_FindSnapPicture或者NET_DVR_AdvanceFindSnapPicture得到当前的查找句柄。此接口用于获取一条已查找到的图片信息，若要获取全部的已查找到的图片信息，需要循环调用此接口。

每次可查询图片数目最大为2000。

See Also

NET_DVR_FindSnapPicture NET_DVR_AdvanceFindSnapPicture


NET_DVR_FindSnapPicClose

关闭事后查询。

BOOL NET_DVR_FindSnapPicClose(
  LONG   lFindHandle
);

Parameters

lFindHandle
[in] 查找句柄，NET_DVR_FindSnapPicture或NET_DVR_AdvanceFindSnapPicture的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_FindSnapPicture NET_DVR_AdvanceFindSnapPicture


NET_DVR_AdvanceFindSnapPicture

按通道、时间、阈值、图片ID等查询人脸图片（从抓拍数据库中查找）。

LONG NET_DVR_AdvanceFindSnapPicture(
  LONG                                 lUserID,
  LPNET_VCA_FIND_PICTURECOND_ADVANCE   lpFindParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpFindParam
[in] 查找条件参数

Return Values

-1表示失败，其他值作为NET_DVR_FindNextSnapPic等函数的参数。获取错误码调用NET_DVR_GetLastError。

Remarks

该接口指定了要查找的图片信息，调用成功后，就可以调用NET_DVR_FindNextSnapPic接口来获取人脸图片信息。

See Also

NET_DVR_Login_V30
NET_DVR_FindNextSnapPic NET_DVR_FindSnapPicClose


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_FTPCFG | 获取FTP上传参数 | 无效 | NET_DVR_FTPCFG | 134
NET_DVR_GET_PICCFG_V30 | 获取图象参数 | 有效 | NET_DVR_PICCFG_V30 | 1002
NET_DVR_GET_CCDPARAMCFG | 获取智能高清IPC前端参数 | 无效 | NET_DVR_CAMERAPARAMCFG | 1067
NET_DVR_GET_IOINCFG | 获取智能高清IPC的IO输入参数 | 有效 | NET_DVR_IO_INCFG | 1070
NET_DVR_GET_IOOUTCFG | 获取智能高清IPC的IO输出参数 | 有效 | NET_DVR_IO_OUTCFG | 1072
NET_DVR_GET_FLASHCFG | 获取智能高清IPC闪光灯参数 | 有效 | NET_DVR_FLASH_OUTCFG | 1074
NET_DVR_GET_LIGHTSNAPCFG | 获取智能高清IPC红绿灯功能参数 | 有效 | NET_DVR_LIGHTSNAPCFG | 1076
NET_DVR_GET_MEASURESPEEDCFG | 获取智能高清IPC测速功能参数 | 有效 | NET_DVR_MEASURESPEEDCFG | 1078
NET_DVR_GET_IMAGEOVERLAYCFG | 获取智能高清IPC图像叠加信息参数 | 无效 | NET_DVR_IMAGEOVERLAYCFG | 1080
NET_DVR_GET_SNAPCFG | 获取智能高清IPC单IO触发功能参数 | 有效 | NET_DVR_SNAPCFG | 1082
NET_DVR_GET_VTPPARAM | 获取智能高清IPC虚拟线圈参数 | 无效 | NET_DVR_VTPARAM | 1084
NET_DVR_GET_SNAPENABLECFG | 获取智能高清IPC使能参数 | 无效 | NET_DVR_SNAPENABLECFG | 1086
NET_DVR_GET_POSTEPOLICECFG | 获取智能高清IPC卡口电警参数 | 无效 | NET_DVR_POSTEPOLICECFG | 1088
NET_DVR_GET_JPEGCFG_V30 | 获取智能高清IPC的JPEG参数 | 无效 | NET_DVR_JPEGCFG_V3 | 1090
NET_DVR_GET_SPRCFG | 获取智能高清IPC车牌识别参数 | 无效 | NET_DVR_SPRCFG | 1092
NET_DVR_GET_PLCCFG | 获取智能高清IPC车牌亮度补偿参数 | 无效 | NET_DVR_PLCCFG | 1094
NET_DVR_GET_DEVICESTATECFG | 获取智能高清IPC设备状态参数 | 无效 | NET_DVR_DEVICESTATECFG | 1096
NET_ITC_GET_TRIGGERCFG | 获取触发参数（3.1及之后版本） | 有效 | NET_ITC_TRIGGERCFG | 3003
NET_ITC_GET_IOOUT_PARAM_CFG | 获取IO输出参数（3.1及之后版本） | 有效 | NET_ITC_IOOUT_PARAM | 3005
NET_ITC_GET_TRIGGER_DEFAULTCFG | 获取触发模式推荐参数（3.1及之后版本） | 有效 | NET_ITC_SINGLE_TRIGGERCFG | 3013
NET_DVR_GET_STATUS_DETECTCFG | 获取状态检测使能参数 | 有效 | NET_DVR_STATUS_DETECTCFG | 3015

当命令为NET_ITC_GET_TRIGGERCFG或NET_ITC_GET_TRIGGER_DEFAULTCFG时，lChannel有效，0表示获取当前启用的触发模式参数，其他值详见ITC_TRIGGERMODE_TYPE。

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_FTPCFG | 设置FTP上传参数 | 无效 | NET_DVR_FTPCFG | 135
NET_DVR_SET_PICCFG_V30 | 设置图象参数 | 有效 | NET_DVR_PICCFG_V30 | 1003
NET_DVR_SET_CCDPARAMCFG | 设置智能高清IPC前端参数 | 无效 | NET_DVR_CAMERAPARAMCFG | 1068
NET_DVR_SET_IOINCFG | 设置智能高清IPC的IO输入参数 | 有效 | NET_DVR_IO_INCFG | 1071
NET_DVR_SET_IOOUTCFG | 设置智能高清IPC的IO输出参数 | 有效 | NET_DVR_IO_OUTCFG | 1073
NET_DVR_SET_FLASHCFG | 设置智能高清IPC闪光灯参数 | 有效 | NET_DVR_FLASH_OUTCFG | 1075
NET_DVR_SET_LIGHTSNAPCFG | 设置智能高清IPC红绿灯功能参数 | 有效 | NET_DVR_LIGHTSNAPCFG | 1077
NET_DVR_SET_MEASURESPEEDCFG | 设置智能高清IPC测速功能参数 | 有效 | NET_DVR_MEASURESPEEDCFG | 1079
NET_DVR_SET_IMAGEOVERLAYCFG | 设置智能高清IPC图像叠加信息参数 | 无效 | NET_DVR_IMAGEOVERLAYCFG | 1081
NET_DVR_SET_SNAPCFG | 设置智能高清IPC单IO触发功能参数 | 有效 | NET_DVR_SNAPCFG | 1083
NET_DVR_SET_VTPPARAM | 设置智能高清IPC虚拟线圈参数 | 无效 | NET_DVR_VTPARAM | 1085
NET_DVR_SET_SNAPENABLECFG | 设置智能高清IPC使能参数 | 无效 | NET_DVR_SNAPENABLECFG | 1087
NET_DVR_SET_POSTEPOLICECFG | 设置智能高清IPC卡口电警参数 | 无效 | NET_DVR_POSTEPOLICECFG | 1089
NET_DVR_SET_JPEGCFG_V30 | 设置智能高清IPC的JPEG参数 | 无效 | NET_DVR_JPEGCFG_V30 | 1091
NET_DVR_SET_SPRCFG | 设置智能高清IPC车牌识别参数 | 无效 | NET_DVR_SPRCFG | 1093
NET_DVR_SET_PLCCFG | 设置智能高清IPC车牌亮度补偿参数 | 无效 | NET_DVR_PLCCFG | 1095
NET_ITC_SET_TRIGGERCFG | 设置触发参数（3.1及之后版本） | 有效 | NET_ITC_TRIGGERCFG | 3004
NET_ITC_SET_IOOUT_PARAM_CFG | 设置IO输出参数（3.1含之后版本） | 有效 | NET_ITC_IOOUT_PARAM | 3006
NET_DVR_SET_STATUS_DETECTCFG | 设置状态检测使能参数 | 有效 | NET_DVR_STATUS_DETECTCFG | 3016

1. 限速值：如果没有设置IO测速模式，卡口电警（NET_DVR_POSTEPOLICECFG）中限速值有效；如果设置IO测速模式，则测速模式（NET_DVR_MEASURESPEEDCFG）中限速值有效。

2. 当命令为NET_ITC_SET_TRIGGERCFG时，lChannel有效，0表示设置当前启用的触发模式参数，其他值详见ITC_TRIGGERMODE_TYPE。

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_GetHistoricDataInfo

获取历史数据信息。

BOOL NET_DVR_GetHistoricDataInfo(
  LONG                         lUserID
  LONG                         lChannel
  LPNET_DVR_HISTORICDATACFG    lpHisData
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpHisData
[out] 历史数据信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError


NET_DVR_GetHistoricData

获取单条历史数据。

BOOL NET_DVR_GetHistoricData(
  LONG                      lUserID,
  LONG                      lChannel,
  LPNET_DVR_PLATE_RESULT    lpOuter
);

Parameters

lUserID
[in]NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in]通道号
lpOuter
[out]历史数据信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError


NET_DVR_ClearHistoricData

清除历史数据信息。

BOOL NET_DVR_ClearHistoricData(
  LONG   lUserID
  LONG   lChannel
);

Parameters

lUserID
[in]NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in]通道号

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError


NET_DVR_FocusOnePush

控制一键聚焦。

BOOL NET_DVR_FocusOnePush(
  LONG    lUserID,
  LONG    lChannel
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_Login_V30


NET_DVR_ResetLens

恢复镜头电机默认位置。

BOOL NET_DVR_ResetLens(
  LONG    lUserID,
  LONG    lChannel
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_Login_V30


NET_DVR_RemoteControl

遥控器控制。

BOOL NET_DVR_RemoteControl(
  LONG      lUserID,
  DWORD     dwCommand,
  LPVOID    lpInBuffer,
  DWORD     dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 控制命令，详见列表
lpInBuffer
[in] 输入参数，具体内容跟控制命令相关，详见列表
dwInBufferSize
[in] 输入参数长度

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

不同的控制功能对应不同的命令号，同时lpInBuffer对应不同的结构体，如下表所示：

dwCommand宏定义 | 宏定义值 | 控制功能 | lpInBuffer对应结构体
NET_DVR_REMOTECONTROL_ALARM | 3205 | 远程控制遥控器布防 | NET_DVR_REMOTECONTROL_ALARM_PARAM
NET_DVR_REMOTECONTROL_DISALARM | 3206 | 远程控制遥控器撤防 | NET_DVR_REMOTECONTROL_ALARM_PARAM
NET_DVR_REMOTECONTROL_STUDY | 3207 | 远程控制遥控器学习 | NET_DVR_REMOTECONTROL_STUDY_PARAM
NET_DVR_WIRELESS_ALARM_STUDY | 3208 | 远程控制无线报警学习 | NET_DVR_WIRELESS_ALARM_STUDY_PARAM

See Also

NET_DVR_Login_V30


NET_DVR_GetDeviceAbility

获取设备能力集。

BOOL NET_DVR_GetDeviceAbility(
  LONG     lUserID,
  DWORD    dwAbilityType,
  char     *pInBuf,
  DWORD    dwInLength,
  char     *pOutBuf,
  DWORD    dwOutLength
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwAbilityType
[in] 能力类型，具体定义见下表：
宏定义 | 宏定义值 | 含义
SNAPCAMERA_ABILITY | 0x300 | 智能高清IPC能力
ITC_TRIGGER_MODE_ABILITY | 0x301 | 智能高清IPC（V3.1及以后版本）能力
pInBuf
[in] 输入缓冲区指针（按照设备规定的能力参数的描述方式组合，可以是XML文本字符串指针或结构体指针形式）
dwInLength
[in] 输入缓冲区的长度
pOutBuf
[out] 输出缓冲区指针
dwOutLength
[in] 接收数据的缓冲区的长度

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

接口中pInBuf参数的具体定义格式按照不同的设备规定有所不同，可以是以结构体的形式或者XML描述方式。同样地，参数pOutBuf的输出表达格式也按不同的设备规定可以是以结构体的形式或者XML描述方式。下表给出了获取智能高清IPC能力集时，需要输入参数和输出参数的格式定义。

能力类型宏定义 | 能力类型说明 | pInBuf | pOutBuf
SNAPCAMERA_ABILITY | 获取智能高清IPC的能力 | 无 | NET_DVR_SNAP_ABILITY
ITC_TRIGGER_MODE_ABILITY | 获取智能高清IPC（V3.1及以后版本）的设备能力 | 无 | NET_ITC_TRIGGERMODE_ABILITY

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_ManualSnap

手动触发抓拍。

BOOL NET_DVR_ManualSnap(
  LONG                      lUserID,
  LPNET_DVR_MANUALSNAP      lpInter,
  LPNET_DVR_PLATE_RESULT    lpOuter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInter
[in] 手动抓拍参数结构，保留
lpOuter
[out] 识别结果参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_ContinuousShoot

手动触发连拍。

BOOL NET_DVR_ContinuousShoot(
  LONG                 lUserID,
  LPNET_DVR_SNAPCFG    lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInter
[in] 手动连拍参数结构

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

Remarks

使用手动触发连拍接收图片，需要先对设备进行布防（NET_DVR_SetupAlarmChan_V30）并设置回调函数（NET_DVR_SetDVRMessageCallBack_V30），通过回调获取抓拍的图片数据。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_ShutterCompensation

热成像仪手动快门补偿。

BOOL NET_DVR_ShutterCompensation(
  LONG     lUserID
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError


NET_DVR_CorrectDeadPixel

热成像仪坏点校正。

BOOL NET_DVR_CorrectDeadPixel(
  LONG                                 lUserID,
  LONG                                 lChannel,
  LPNET_DVR_CORRECT_DEADPIXEL_PARAM    lpInParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
lpInParam
[in] 坏点校正参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError


NET_DVR_InquestGetCDRWScheme

获取设备刻录参数。

BOOL NET_DVR_InquestGetCDRWScheme(
  LONG                         lUserID,
  LPNET_DVR_INQUEST_CDRW_CFG   lpCDRWCfg
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpCDRWCfg
[out] 刻录参数结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestSetCDRWScheme
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_InquestSetCDRWScheme

设置设备刻录参数。

BOOL NET_DVR_InquestSetCDRWScheme(
  LONG                         lUserID,
  LPNET_DVR_INQUEST_CDRW_CFG   lpCDRWCfg
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpCDRWCfg
[in] 刻录参数结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestGetCDRWScheme
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_InquestGetPIPStatus_V30

获取画中画状态。

BOOL NET_DVR_InquestGetPIPStatus_V30(
  LONG                           lUserID,
  LPNET_DVR_INQUEST_ROOM         lpInquestRoom,
  LPNET_DVR_INQUEST_PIP_STATUS   pStatus
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pInquestRoom
[in] 审讯室信息
pStatus
[out] 画中画状态结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestSetPIPStatus_V30
NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于
NET_DVR_InquestGetPIPStatus


NET_DVR_InquestSetPIPStatus_V30

设置画中画状态。

BOOL NET_DVR_InquestSetPIPStatus_V30(
  LONG                           lUserID,
  LPNET_DVR_INQUEST_ROOM         lpInquestRoom,
  LPNET_DVR_INQUEST_PIP_STATUS   pStatus
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInquestRoom
[in] 审讯室信息
pStatus
[in] 画中画状态结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestGetPIPStatus_V30
NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于
NET_DVR_InquestSetPIPStatus


NET_DVR_InquestCheckSecretKey

获取设备码流加密状态。

BOOL NET_DVR_InquestCheckSecretKey(
  LONG   lUserID,
  BOOL   *bSecretSet
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
bSecretSet
[out] 指向设备码流加密状态值的指针：TRUE-已设置；FALSE-未设置

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestSetSecretKey
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_InquestSetSecretKey

设置设备码流加密密钥。

BOOL NET_DVR_InquestSetSecretKey(
  LONG                            lUserID,
  LPNET_DVR_INQUEST_SECRET_INFO   pSecretInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pSecretInfo
[in] 密钥信息结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

在设置设备码流加密密钥之前，先调用NET_DVR_InquestCheckSecretKey接口获取当前的加密状态。

See Also

NET_DVR_InquestCheckSecretKey
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_InquestGetEncryptState

获取设备码流加密状态。

BOOL NET_DVR_InquestGetEncryptState(
  LONG   lUserID,
  LONG   lChannel,
  BOOL   *bEncrypt
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
bEncrypt
[out] 加密标记：TRUE-加密；FALSE-不加密

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestStreamEncrypt
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_SetSDKSecretKey

设置SDK用户码流解密密钥。

BOOL NET_DVR_SetSDKSecretKey(
  LONG    lUserID
  char    *sSecretKey
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
sSecretKey
[in] 16字节密钥

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_InquestStreamEncrypt

设置设备码流加密密钥。

BOOL NET_DVR_InquestStreamEncrypt(
  LONG   lUserID,
  LONG   lChannel,
  BOOL   bEncrypt
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
bEncrypt
[in] 加密标记：TRUE-加密；FALSE-不加密

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestGetEncryptState
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_InquestGetSystemInfo

获取系统信息。

BOOL NET_DVR_InquestGetSystemInfo(
  LONG                             lUserID,
  LPNET_DVR_INQUEST_SYSTEM_INFO    lpSystemInfo,
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpSystemInfo
[out] 系统信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestSetSystemInfo
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_InquestSetSystemInfo

设置系统信息。

BOOL NET_DVR_InquestSetSystemInfo(
  LONG                             lUserID,
  LPNET_DVR_INQUEST_SYSTEM_INFO    lpSystemInfo,
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpSystemInfo
[in] 系统信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestGetSystemInfo
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_InquestGetDeviceVersion

获取设备版本信息。

BOOL NET_DVR_InquestGetDeviceVersion(
  LONG                               lUserID,
  LPNET_DVR_INQUEST_DEVICE_VERSION   lpVersionInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpVersionInfo
[out] 设备版本信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError


NET_DVR_InquestFindFile_V30

搜索审讯文件。

LONG NET_DVR_InquestFindFile_V30(
  LONG                     lUserID
  LPNET_DVR_INQUEST_ROOM   lpInquestRoom
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInquestRoom
[in] 审讯室信息

Return Values

-1表示失败，其他值作为NET_DVR_InquestFindNextFile等函数的参数。获取错误码调用NET_DVR_GetLastError

Remarks

该接口调用成功后，可以调用NET_DVR_FindNextFile接口来获取文件信息。

See Also

NET_DVR_InquestFindNextFile NET_DVR_InquestFindClose
NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于
NET_DVR_InquestFindFile


NET_DVR_InquestFindNextFile

逐个获取查找到的审讯文件信息。

LONG NET_DVR_InquestFindNextFile(
  LONG                         lFindHandle,
  LPNET_DVR_INQUEST_FILEINFO   lpFindData
);

Parameters

lFindHandle
[in] 文件查找句柄，NET_DVR_FindFile的返回值
lpFindData
[out] 保存文件信息的指针

Return Values

-1表示失败，其他值表示当前的获取状态等信息，详见下表。获取错误码调用NET_DVR_GetLastError

宏定义 | 宏定义值 | 含义
NET_DVR_FILE_SUCCESS | 1000 | 获取文件信息成功
NET_DVR_FILE_NOFIND | 1001 | 未查找到文件
NET_DVR_ISFINDING | 1002 | 正在查找请等待
NET_DVR_NOMOREFILE | 1003 | 没有更多的文件，查找结束
NET_DVR_FILE_EXCEPTION | 1004 | 查找文件时异常

Remarks

在调用该接口获取查找文件之前，必须先调用NET_DVR_InquestFindFile得到当前的查找句柄。此接口用于获取一条已查找到的文件信息，若要获取全部的已查找到的文件信息，需要循环调用此接口。

See Also

NET_DVR_InquestFindFile


NET_DVR_InquestFindClose

停止搜索审讯文件，释放资源。

BOOL NET_DVR_InquestFindClose(
  LONG   lFindHandle
);

Parameters

lFindHandle
[in] 文件查找句柄，NET_DVR_InquestFindFile或NET_DVR_InquestFindFile_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestFindFile_V30 NET_DVR_InquestFindFile


NET_DVR_InquestDeleteFile_V30

删除审讯文件。

BOOL NET_DVR_InquestDeleteFile_V30(
  LONG                      lUserID,
  LPNET_DVR_INQUEST_ROOM    lpInquestRoom,
  LPNET_DVR_INQUEST_FILES   lpDeleteFile
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInquestRoom
[in] 审讯室信息
lpDeleteFile
[in] 要删除的审讯文件信息指针

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

刻录文件的信息可以通过接口NET_DVR_InquestFindFile和NET_DVR_InquestFindNextFile获取。

See Also

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于
NET_DVR_InquestDeleteFile


NET_DVR_InquestCDWByFile

按文件名刻录文件。

BOOL NET_DVR_InquestCDWByFile(
  LONG                      lUserID,
  LPNET_DVR_INQUEST_FILES   lpCdrwFile
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpCdrwFile
[in] 刻录文件信息的指针

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

刻录文件的信息可以通过接口NET_DVR_InquestFindFile和NET_DVR_InquestFindNextFile获取。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_InquestUploadFile_V30

向设备上传审讯文件。

LONG NET_DVR_InquestUploadFile_V30(
  LONG                     lUserID,
  LPNET_DVR_INQUEST_ROOM   lpInquestRoom,
  char                     *sFileName
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInquestRoom
[in] 审讯室信息
sFileName
[in] 要上传的文件名（全路径格式），最多128字节，文件名最多32字节，含最后的‘\0’

Return Values

-1表示失败，其他值作为NET_DVR_InquestUploadClose等函数的参数。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestUploadClose
NET_DVR_InquestGetUploadState
NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于

NET_DVR_InquestUploadFile


NET_DVR_InquestGetUploadState

获取文件上传的进度值和状态值。

int NET_DVR_InquestGetUploadState(
  LONG      lUpgradeHandle,
  LPDWORD   pProgress
);

Parameters

lUpgradeHandle
[in] NET_DVR_InquestUploadFile或NET_DVR_InquestUploadFile_V30的返回值
pProgress
[out] 上传文件的进度值，范围（0,100）

Return Values

-1表示失败，其他状态值定义如下：
1－上传成功
2－正在上传
3－上传失败
4－网络断开，状态未知
5—等待获取上传机会
6—硬盘错误
7—无审讯文件存放盘
8—容量不足
9—设备资源不足
10—文件个数超过40
获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestUploadFile_V30 NET_DVR_InquestUploadFile


NET_DVR_InquestUploadClose

停止上传审讯文件。

BOOL NET_DVR_InquestUploadClose(
  LONG   lUploadHandle
);

Parameters

lUploadHandle
[in] 上传文件句柄，NET_DVR_InquestUploadFile或NET_DVR_InquestUploadFile_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestUploadFile_V30 NET_DVR_InquestUploadFile


NET_DVR_InquestStartCDW_V30

审讯中开始刻录。

BOOL NET_DVR_InquestStartCDW_V30(
  LONG                      lUserID,
  LPNET_DVR_INQUEST_ROOM    lpInquestRoom,
  BOOL                      bPause
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInquestRoom
[in] 审讯室信息
bPause
[in] 是否暂停(暂未使用, 保留)

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestStopCDW_V30
NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于

NET_DVR_InquestStartCDW


NET_DVR_InquestStopCDW_V30

审讯中停止刻录。

BOOL NET_DVR_InquestStopCDW_V30(
  LONG                      lUserID,
  LPNET_DVR_INQUEST_ROOM    lpInquestRoom,
  BOOL                      bCancelWrite
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInquestRoom
[in] 审讯室信息
bCancelWrite
[in] 正常的情况在结束后会对光盘封盘；代表庭审暂停，这样设备不会对光盘进行封盘。TRUE-不封盘；FALSE-封盘

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestStartCDW_V30
NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于

NET_DVR_InquestStopCDW


NET_DVR_InquestGetCDWState_V30

获取刻录状态。

BOOL NET_DVR_InquestGetCDWState_V30(
  LONG                            lUserID,
  LPNET_DVR_INQUEST_ROOM          lpInquestRoom,
  LPNET_DVR_INQUEST_CDRW_STATUS   pStatus
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInquestRoom
[in] 审讯室信息
pStatus
[out] 刻录状态信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

该接口扩展源于

NET_DVR_InquestGetCDWState


NET_DVR_InquestSendMessage

发送重点标记信息。

BOOL NET_DVR_InquestSendMessage(
  LONG                      lUserID,
  LPNET_DVR_INQUEST_ROOM    lpInquestRoom,
  LPNET_DVR_INQUEST_MESSAGE  lpInquestMessage
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInquestRoom
[in] 审讯室信息
lpInquestMessage
[in] 重点标记信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_InquestResumeEvent

恢复审讯事件。

LONG NET_DVR_InquestResumeEvent(
  LONG                              lUserID,
  LPNET_DVR_INQUEST_RESUME_EVENT    lpResumeEvent,
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpResumeEvent
[in] 需恢复的事件信息

Return Values

-1表示失败，其他值作为NET_DVR_InquestGetResumeProgress等函数的句柄。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestGetResumeProgress
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_InquestGetResumeProgress

获取恢复过程状态和进度。

BOOL NET_DVR_InquestGetResumeProgress(
  LONG                      lHandle,
  DWORD                     *pState,
);

Parameters

lHandle
[in] 文件查找句柄，NET_DVR_InquestResumeEvent的返回值
pState
[in] 返回的刻录状态,1-99表示备份进度，100表示备份完成。其他定义如下：
宏定义 | 宏定义值 | 含义
备份刚刚开始, 设备初始化操作
BACKUP_SEARCH_DEVICE | 300 | 正在搜索备份设备
BACKUP_SEARCH_FILE | 301 | 正在搜索录像文件
备份出错
BACKUP_EXCEPTION | 400 | 备份异常
BACKUP_FAIL | 500 | 备份失败
BACKUP_TIME_SEG_NO_FILE | 501 | 时间段内无录像文件
BACKUP_NO_RESOURCE | 502 | 申请不到资源
BACKUP_DEVICE_LOW_SPACE | 503 | 备份设备容量不足
BACKUP_DISK_FINALIZED | 504 | 刻录光盘封盘
BACKUP_DISK_EXCEPTION | 505 | 刻录光盘异常
BACKUP_DEVICE_NOT_EXIST | 506 | 备份设备不存在
BACKUP_OTHER_BACKUP_WORK | 507 | 有其他备份操作在进行
BACKUP_USER_NO_RIGHT | 508 | 用户没有操作权限
BACKUP_OPERATE_FAIL | 509 | 操作失败

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

在进度为100或者备份出错时, 需调用NET_DVR_InquestStopResume停止恢复。

See Also

NET_DVR_InquestResumeEvent NET_DVR_InquestStopResume


NET_DVR_InquestStopResume

停止恢复审讯事件。

BOOL NET_DVR_InquestStopResume(
  LONG   lHandle,
);

Parameters

lUserID
[in] 文件查找句柄，NET_DVR_InquestResumeEvent的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestResumeEvent


NET_DVR_GetDeviceAbility

获取设备能力集。

BOOL NET_DVR_GetDeviceAbility(
  LONG     lUserID,
  DWORD    dwAbilityType,
  char     *pInBuf,
  DWORD    dwInLength,
  char     *pOutBuf,
  DWORD    dwOutLength
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwAbilityType
[in] 能力类型，具体定义见下表：
宏定义 | 宏定义值 | 含义
ALARMHOST_ABILITY | 0x500 | 报警主机设备能力集
pInBuf
[in] 输入缓冲区指针（按照设备规定的能力参数的描述方式组合，可以是XML文本或结构体形式）
dwInLength
[in] 输入缓冲区的长度
pOutBuf
[out] 输出缓冲区指针（按照设备规定的能力集的描述方式，可以是XML文本或结构体形式）
dwOutLength
[in] 接收数据的缓冲区的长度

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

接口中pInBuf参数的具体定义格式按照不同的设备规定有所不同，可以是以结构体的形式或者XML描述方式。同样地，参数pOutBuf的输出表达格式也按不同的设备规定可以是以结构体的形式或者XML描述方式。前6种能力描述都是以XML格式给出，详见各产品的能力描述解析方法，这里不进行详细说明。下表列出了其余能力类型获取时，需要输入参数和输出参数的格式定义。

能力类型宏定义 | 能力类型说明 | pInBuf | pOutBuf
ALARMHOST_ABILITY | 获取报警主机设备能力集 | 无 | NET_DVR_ALARMHOST_ABILITY

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError。

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_RS232CFG_V30 | 获取232串口参数 | 有效 | NET_DVR_RS232CFG_V30 | 1036
NET_DVR_GET_SENSOR_CFG | 获取模拟量参数 | 有效 | NET_DVR_SENSOR_INFO | 1181
NET_DVR_GET_ALARMIN_PARAM | 获取报警输入参数 | 无效 | NET_DVR_ALARMIN_PARAM | 1183
NET_DVR_GET_ALARMOUT_PARAM | 获取报警输出参数 | 无效 | NET_DVR_ALARMOUT_PARAM | 1185
NET_DVR_GET_SIREN_PARAM | 获取警号参数 | 无效 | NET_DVR_SIREN_PARAM | 1187
NET_DVR_GET_ALARM_RS485CFG | 获取报警主机RS485参数 | 有效 | NET_DVR_ALARM_RS485CFG | 1189
NET_DVR_GET_ALARMHOST_MAIN_STATUS | 获取报警主机主要状态 | 无效 | NET_DVR_ALARMHOST_MAIN_STATUS | 1190
NET_DVR_GET_ALARMHOST_OTHER_STATUS | 获取报警主机其他状态 | 无效 | NET_DVR_ALARMHOST_OTHER_STATUS | 1191
NET_DVR_GET_ALARMHOST_ENABLECFG | 获取报警主机使能状态 | 无效 | NET_DVR_ALARMHOST_ENABLECFG | 1193
NET_DVR_GET_GATEWAY_CFG | 获取门禁参数 | 有效 | NET_DVR_GATEWAY_CFG | 1196
NET_DVR_GET_ALARMDIALMODECFG | 获取报警主机拨号参数 | 无效 | NET_DVR_ALARMHOSTDIALCFG | 1198
NET_DVR_GET_ALARMHOSTDIALSETUPMODE | 获取报警主机拨号启用方式 | 无效 | NET_DVR_ALARMHOSTDIALSETUPMODE | 1204
NET_DVR_GET_ALARMHOSTSUBSYSTEM_CFG | 获取子系统参数，子系统的数量从能力集获取 | 有效 | NET_DVR_ALARMSUBSYSTEMPARAM | 2001
NET_DVR_GET_ALARMHOST_GPRSCFG | 获取GPRS参数配置 | 无效 | NET_DVR_ALARMHOST_GPRS_CFG | 2005
NET_DVR_GET_ALARMHOST_NETCFG | 获取网络参数配置 | 无效 | NET_DVR_ALARMHOST_NETCFG | 2007

See Also

NET_DVR_SetDVRConfig


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_RS232CFG_V30 | 设置232串口参数 | 有效 | NET_DVR_RS232CFG_V30 | 1037
NET_DVR_SET_SENSOR_CFG | 设置模拟量参数 | 有效 | NET_DVR_SENSOR_INFO | 1180
NET_DVR_SET_ALARMIN_PARAM | 设置报警输入参数 | 无效 | NET_DVR_ALARMIN_PARAM | 1182
NET_DVR_SET_ALARMOUT_PARAM | 设置报警输出参数 | 无效 | NET_DVR_ALARMOUT_PARAM | 1184
NET_DVR_SET_SIREN_PARAM | 设置警号参数 | 无效 | NET_DVR_SIREN_PARAM | 1186
NET_DVR_SET_ALARM_RS485CFG | 设置报警主机RS485参数 | 有效 | NET_DVR_ALARM_RS485CFG | 1188
NET_DVR_SET_ALARMHOST_ENABLECFG | 设置报警主机使能状态 | 无效 | NET_DVR_ALARMHOST_ENABLECFG | 1192
NET_DVR_SET_GATEWAY_CFG | 设置门禁参数 | 有效 | NET_DVR_GATEWAY_CFG | 1197
NET_DVR_SET_ALARMDIALMODECFG | 设置报警主机拨号参数 | 无效 | NET_DVR_ALARMHOSTDIALCFG | 1199
NET_DVR_SET_ALARMHOSTDIALSETUPMODE | 设置报警主机拨号启用方式 | 无效 | NET_DVR_ALARMHOSTDIALSETUPMODE | 1205
NET_DVR_SET_ALARMHOSTSUBSYSTEM_CFG | 设置子系统参数，子系统的数量从能力集获取 | 有效 | NET_DVR_ALARMSUBSYSTEMPARAM | 2002
NET_DVR_SET_ALARMHOST_GPRSCFG | 设置GPRS参数 | 无效 | NET_DVR_ALARMHOST_GPRS_CFG | 2006
NET_DVR_SET_ALARMHOST_NETCFG | 设置网络参数配置 | 无效 | NET_DVR_ALARMHOST_NETCFG | 2008

See Also

NET_DVR_GetDVRConfig


NET_DVR_GetAlarmDeviceUser

获取报警主机设备用户配置信息。

BOOL NET_DVR_GetAlarmDeviceUser(
  LONG                        lUserID,
  LONG                        lUserIndex,
  NET_DVR_ALARM_DEVICE_USER   *lpDeviceUser
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lUserIndex
[in] 报警主机用户索引
lpDeviceUser
[out] 设备用户配置参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_SetAlarmDeviceUser
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_SetAlarmDeviceUser

报警主机设备用户配置。

BOOL NET_DVR_SetAlarmDeviceUser(
  LONG                        lUserID,
  LONG                        lUserIndex,
  NET_DVR_ALARM_DEVICE_USER   *lpDeviceUser
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lUserIndex
[in] 报警主机用户索引
lpDeviceUser
[in] 设备用户配置

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_GetAlarmDeviceUser
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetOperateUser

获取操作用户配置信息。

BOOL NET_DVR_GetOperateUser(
  LONG                        lUserID,
  LONG                        lUserIndex,
  NET_DVR_OPERATE_USER   *lpOperateUser
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lUserIndex
[in] 操作用户索引
lpOperateUser
[out] 操作用户配置参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_SetOperateUser
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_SetOperateUser

设置操作用户配置参数。

BOOL NET_DVR_SetOperateUser(
  LONG                        lUserID,
  LONG                        lUserIndex,
  NET_DVR_OPERATE_USER   *lpOperateUser
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lUserIndex
[in] 操作用户索引
lpOperateUser
[in] 操作用户配置参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_GetOperateUser
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetDeviceTypeList

获取485前端设备能力列表。

BOOL NET_DVR_GetDeviceTypeList(
  LONG                       lUserID,
  NET_DVR_DEVICE_TYPE_LIST   *lpDeviceTypeList
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpOperateUser
[out] 485前端设备类型列表

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetDeviceProtoList

获取485前端设备支持的协议列表。

BOOL NET_DVR_GetDeviceProtoList(
  LONG                            lUserID,
  LONG                            lDeviceType,
  NET_DVR_DEVICE_PROTO_LIST   *lpDeviceProtoList
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lDeviceType
[in] 设备类型
lpDeviceProtoList
[out] 485前端设备支持的协议列表

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_AlarmHostSerialStart

和报警主机设备建立透明通道。

LONG NET_DVR_AlarmHostSerialStart(
  LONG                            lUserID,
  LONG                            lSerialType,
  fAlarmHostSerialDataCallBack    cbSerialDataCallBack,
  DWORD                           dwUser
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lSerialType
[in] 建立透明通道类型：1- 建立232通道，2- 建立485通道
cbSerialDataCallBack
[in] 回调函数，用于接收透明通道数据
dwUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *fAlarmHostSerialDataCallBack)(
  LONG     lSerialHandle,
  LONG     lPort,
  LONG     lDateType,
  char     *pRecvDataBuffer,
  DWORD    dwBufSize,
  DWORD    dwUser
);

Callback Function Parameters

lSerialHandle
[out] NET_DVR_AlarmHostSerialStart的返回值
lPort
[out] 接收数据的槽位号，从1开始
lDateType
[out] 数据类型：0-表示数据接收正常，1-表示通道不支持透明通道（针对485口）
pRecvDataBuffer
[out] 存放数据的缓冲区指针
dwBufSize
[out] 数据大小
dwUser
[out] 用户数据

Return Values

-1表示失败，其他值作为NET_DVR_AlarmHostSerialSend等函数的句柄参数。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_AlarmHostSerialStop NET_DVR_AlarmHostSerialSend
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_AlarmHostSerialSend

向透明通道指定的485口或者232口发送数据。

BOOL NET_DVR_AlarmHostSerialSend(
  LONG     lSerialHandle,
  LONG     lPort,
  char     *pSendBuf,
  DWORD    dwBufSize
);

Parameters

lSerialHandle
[in] NET_DVR_AlarmHostSerialStart的返回值
lPort
[in] 槽位号，从1开始
pSendBuf
[in] 发送数据的缓冲区指针
dwBufSize
[in] 缓冲区的大小

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_AlarmHostSerialStart


NET_DVR_AlarmHostSerialStop

断开透明通道。

BOOL NET_DVR_AlarmHostSerialStop(
  LONG  lSerialHandle
);

Parameters

lSerialHandle
[in] NET_DVR_AlarmHostSerialStart的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_AlarmHostSerialStart


NET_DVR_AlarmHostSetupAlarmChan

对报警输入口布防。

BOOL NET_DVR_AlarmHostSetupAlarmChan(
  LONG                        lUserID,
  NET_DVR_ALARMIN_SETUP       *lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInter
[in] 报警输入口参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_AlarmHostCloseAlarmChan
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_AlarmHostCloseAlarmChan

对报警输入口撤防。

BOOL NET_DVR_AlarmHostCloseAlarmChan(
  LONG                        lUserID,
  NET_DVR_ALARMIN_SETUP       *lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInter
[in] 报警输入口参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_AlarmHostSetupAlarmChan
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_BypassAlarmChan

对报警输入口旁路。

BOOL NET_DVR_BypassAlarmChan(
  LONG                        lUserID,
  NET_DVR_ALARMIN_SETUP       *lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInter
[in] 报警输入口参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_UnBypassAlarmChan
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_UnBypassAlarmChan

对报警输入口撤销旁路。

BOOL NET_DVR_UnBypassAlarmChan(
  LONG                        lUserID,
  NET_DVR_ALARMIN_SETUP       *lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInter
[in] 报警输入口参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_BypassAlarmChan
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_SetAlarmHostOut

设置报警输出(报警主机和报警板类)。

BOOL NET_DVR_SetAlarmHostOut(
  LONG     lUserID,
  LONG     lAlarmOutPort,
  LONG     lAlarmOutStatic
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lAlarmOutPort
[in] 报警输出口。初始输出口从0开始，0xffffffff表示全部报警输出口。
lAlarmOutStatic
[in] 报警输出状态：0－停止输出，1－输出

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_AlarmHostAssistantControl

辅助功能控制。

BOOL NET_DVR_AlarmHostAssistantControl(
  LONG      lUserID,
  DWORD     dwType,
  DWORD     dwNumber,
  DWORD     dwCmdParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwType
[in] 辅助功能类型：1- 电锁，2- 移动门，3- 语音输出，4- 警号
dwNumber
[in] 控制号。对于电锁、移动门，按位表示，从第零位开始；对于语音输出，不按位，对应的是语音输出号；对于警号(警号输出只有一个)，赋值为1。
dwCmdParam
[in] 命令参数：0- 关闭，1- 开启

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

对该接口调用前需要先对相应的功能使能，例如：要控制警号1开启，先要用是能状态配置将警号1使能。在不使能的情况下调用该接口，将返回错误29（设备操作失败）。


NET_DVR_AlarmHostArrayBypass

对报警输入口进行组旁路。

BOOL NET_DVR_AlarmHostArrayBypass(
  LONG     lUserID,
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_AlarmHostArrayBypassResume


NET_DVR_AlarmHostArrayBypassResume

对报警输入口进行组旁路恢复。

BOOL NET_DVR_AlarmHostArrayBypassResume(
  LONG     lUserID,
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_AlarmHostArrayBypass


NET_DVR_AlarmHostSubSystemSetupAlarmChan

对报警输入子系统布防。

BOOL NET_DVR_AlarmHostSubSystemSetupAlarmChan(
  LONG     lUserID,
  DWORD    dwSubSystemNum
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwSubSystemNum
[in] 子系统号，oxffffffff表示全部子系统

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_AlarmHostSubSystemCloseAlarmChan


NET_DVR_AlarmHostSubSystemCloseAlarmChan

对报警输入子系统撤防。

BOOL NET_DVR_AlarmHostSubSystemCloseAlarmChan(
  LONG     lUserID,
  DWORD    dwSubSystemNum
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwSubSystemNum
[in] 子系统号，oxffffffff表示全部子系统

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_AlarmHostSubSystemSetupAlarmChan


NET_DVR_AlarmHostClearAlarm

对报警输入子系统进行消警。

BOOL NET_DVR_AlarmHostClearAlarm(
  LONG     lUserID,
  DWORD    dwSubSystemNum
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwSubSystemNum
[in] 子系统号，oxffffffff表示全部子系统

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_AlarmHostSubSystemSetupAlarmChan

NET_DVR_AlarmHostSubSystemCloseAlarmChan


NET_DVR_AlarmHostGetReportMode

获取报警上传方式及参数。

BOOL NET_DVR_AlarmHostGetReportMode(
  LONG     lUserID,
  LPVOID   lpOutputBuf,
  DWORD    dwOutputBufLen,
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpOutputBuf
[out] 输出缓冲区指针
dwOutputBufLen
[in] 输出缓冲区大小，上层分配缓冲区时应该按能力集中心组最大个数来分配，即N*sizeof(NET_DVR_ALARMHOST_REPORTCENTER_CFG)

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_AlarmHostSetReportMode

NET_DVR_ALARMHOST_REPORTCENTER_CFG


NET_DVR_AlarmHostSetReportMode

设置报警上传方式及参数。

BOOL NET_DVR_AlarmHostSetReportMode(
  LONG     lUserID,
  LONG     lCenterNum,
  LPVOID   lpInputBuf,
  DWORD    dwInputBufLen,
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lCenterNum
[in] 中心组个数，lCenterNum从能力集获取（中心组个数）
lpInputBuf
[in] 输入缓冲区指针
dwInputBufLen
[in] 输入缓冲区长度，缓冲区大小为lCenterNum * sizeof(NET_DVR_ALARMHOST_REPORTCENTER_CFG)

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_AlarmHostGetReportMode

NET_DVR_ALARMHOST_REPORTCENTER_CFG


NET_DVR_SetAirCondition

控制空调遥控器。

BOOL NET_DVR_SetAirCondition(
  LONG                          lUserID,
  LONG                          l485Index,
  NET_DVR_AIR_CONDITION_PARAM   *lpAirConditionParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
l485Index
[in] 485索引
lpAirConditionParam
[in] 空调遥控器参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetBatteryVoltage

蓄电池电压查询。

BOOL NET_DVR_GetBatteryVoltage(
  LONG            lUserID,
  float           *pVoltage
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pVoltage
[out] 蓄电池电压值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_FindAlarmHostLog

查找报警主机的日志信息。

LONG NET_DVR_FindAlarmHostLog(
  LONG                                  lUserID,
  LONG                                  lSelectMode,
  NET_DVR_ALARMHOST_SEARCH_LOG_PARAM    *lpSearchParam,
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lSelectMode
[in] 查询方式：0－全部；1－按类型；2－按时间；3－按时间和类型
lpSearchParam
[in] 日志信息查找结构体

Return Values

-1表示失败，其他值作为NET_DVR_FindNextAlarmHostLog等函数的参数。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_FindNextAlarmHostLog

NET_DVR_FindAlarmHostLogClose


NET_DVR_FindNextAlarmHostLog

逐条获取查找到的报警主机日志信息。

LONG NET_DVR_FindNextAlarmHostLog(
  LONG                        lFindHandle,
  NET_DVR_ALARMHOST_LOG_RET   *lpFindData
);

Parameters

lFindHandle
[in] 日志查找句柄，NET_DVR_FindAlarmHostLog的返回值
lpFindData
[out] 保存日志信息的指针

Return Values

-1表示失败，其他值表示当前的获取状态等信息，详见下表。获取错误码调用NET_DVR_GetLastError

宏定义 | 宏定义值 | 含义
NET_DVR_FILE_SUCCESS | 1000 | 获取日志信息成功
NET_DVR_FILE_NOFIND | 1001 | 未查找到日志
NET_DVR_ISFINDING | 1002 | 正在查找请等待
NET_DVR_NOMOREFILE | 1003 | 没有更多的日志，查找结束
NET_DVR_FILE_EXCEPTION | 1004 | 查找日志时异常

Remarks

在调用该接口获取查找日志之前，必须先调用NET_DVR_FindAlarmHostLog得到当前的查找句柄。

See Also

NET_DVR_FindAlarmHostLog


NET_DVR_FindAlarmHostLogClose

关闭报警主机日志查找，释放资源。

BOOL NET_DVR_FindAlarmHostLogClose(
  LONG   lFindHandle
);

Parameters

lFindHandle
[in] 查找句柄，NET_DVR_FindAlarmHostLog的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_FindAlarmHostLog


NET_DVR_StartUploadAudio

将语音上传给设备。

BOOL NET_DVR_StartUploadAudio(
  LONG       lUserID,
  DWORD      dwAudioNum,
  DWORD      dwAudioType,
  char       *sAudioFileName
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwAudioNum
[in] 语音号：1- 进门欢迎提示音，2- 出门离开提示音，3- 有人提示音，4- ATM暂停使用，5- 门未关提示音， 6- （保留）
dwAudioType
[in] 语音格式：0- wave
sAudioFileName
[in] 语音文件的绝对路径，包括文件名

Return Values

-1表示失败，其他值作为NET_DVR_GetAudioProgress、NET_DVR_StopAudioOperate等函数的参数。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_Login_V30


NET_DVR_StartDownloadAudio

从设备下载语音。

BOOL NET_DVR_StartDownloadAudio(
  LONG       lUserID,
  DWORD      dwAudioNum,
  char       *sAudioFileName
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwAudioNum
[in] 语音号：1- 进门欢迎提示音，2- 出门离开提示音，3- 有人提示音，4- ATM暂停使用，5- 门未关提示音， 6- （保留）
sAudioFileName
[in] 保存语音文件的绝对路径，包括文件名

Return Values

-1表示失败，其他值作为NET_DVR_GetAudioProgress、NET_DVR_StopAudioOperate等函数的参数。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_Login_V30


NET_DVR_GetAudioProgress

获取语音上传或者下载的进度。

BOOL NET_DVR_GetAudioProgress(
  LONG    lAudioHandle
);

Parameters

lAudioHandle
[in] 上传或下载句柄，NET_DVR_StartUploadAudio或者NET_DVR_StartDownloadAudio的返回值

Return Values

-1失败，0～100表示语音上传或者下载的进度。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_StartUploadAudio NET_DVR_StartDownloadAudio


NET_DVR_StopAudioOperate

停止语音上传或者下载。

BOOL NET_DVR_StopAudioOperate(
  LONG   lAudioHandle
);

Parameters

lAudioHandle
[in] 上传或下载句柄，NET_DVR_StartUploadAudio或者NET_DVR_StartDownloadAudio的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_StartUploadAudio NET_DVR_StartDownloadAudio


NET_DVR_AudioCtrl

语音控制。

BOOL NET_DVR_AudioCtrl(
  LONG    lUserID,
  DWORD   dwAudioNum,
  DWORD   dwCtrlParam,
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwAudioNum
[in] 语音号：1- 进门欢迎提示音，2- 出门离开提示音，3- 有人提示音，4- ATM暂停使用，5- 门未关提示音， 6- （保留）
dwCtrlParam
[in] 控制参数：1- 播放语音，2- 清空语音

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_Login_V30


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_SCREEN_WINCFG | 获取单个窗口参数 | 有效 | NET_DVR_SCREEN_WINCFG | 1603
NET_DVR_LAYOUTLIST_GET | 获取布局列表 | 有效 | NET_DVR_LAYOUT_LIST | 1605
NET_DVR_INPUTLIST_GET | 获取输入信号源列表 | 有效 | NET_DVR_INPUTSTREAM_LIST | 1608
NET_DVR_OUTPUT_GET | 获取输出参数 | 有效 | NET_DVR_OUTPUTCFG | 1611
NET_DVR_GET_OSDCFG | 获取OSD参数 | 有效 | NET_DVR_OSDCFG | 1613

dwCommand命令为NET_DVR_GET_SCREEN_WINCFG时，lChannel通道号：对于大屏服务器，高两字节表示设备号，低两字节表示窗口号；对于海康大屏控制器，表示窗口号。

dwCommand命令为NET_DVR_LAYOUTLIST_GET，NET_DVR_INPUTLIST_GET和NET_DVR_OUTPUT_GET时，lChannel通道号：对于大屏服务器，高两字节表示设备号，低两字节保留；对于海康大屏控制器，4字节保留

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError.

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_LAYOUTCFG | 布局设置 | 有效 | NET_DVR_LAYOUTCFG | 1606
NET_DVR_LAYOUTCTRL | 布局控制 | 有效 | 4字节的变量，为1时表示open，2表示close | 1607
NET_DVR_SET_INPUTSTREAMCFG | 设置输入信号源 | 有效 | NET_DVR_INPUTSTREAMCFG | 1609
NET_DVR_OUTPUT_SET | 设置输出参数 | 有效 | NET_DVR_OUTPUTCFG | 1610
NET_DVR_SET_OSDCFG | 设置OSD参数 | 有效 | NET_DVR_OSDCFG | 1612

dwCommand命令为NET_DVR_SET_LAYOUTCFG和NET_DVR_LAYOUTCTRL时，lChannel通道号：对于大屏服务器，高两字节表示设备号，低两字节表示布局号；对于海康大屏控制器，4字节表示布局号，布局最多为16个，布局号0~15。

dwCommand命令为NET_DVR_SET_INPUTSTREAMCFG时，lChannel通道号：对于大屏服务器，高两字节表示设备号，低两字节表示信号源序号；对于海康大屏控制器，4字节表示信号源序号，信号源序号范围1~224。

dwCommand命令为NET_DVR_OUTPUT_SET时，lChannel通道号：对于大屏服务器，高两字节表示设备号，低两字节保留；对于海康大屏控制器，4字节保留

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_GetAllValidWinInfo

获取所有有效窗口信息。

BOOL NET_DVR_GetAllValidWinInfo(
  LONG                lUserID,
  LPNET_DVR_WINLIST   lpWinListInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpWinListInfo
[in] 窗口列表结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_ScreenWinCtrl


NET_DVR_ScreenWinCtrl

窗口控制。

BOOL NET_DVR_ScreenWinCtrl(
  LONG                     lUserID,
  DWORD                    dwWinIndex,
  DWORD                    dwCommand,
  LPNET_DVR_SCREEN_WINCFG  lpInter
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwWinIndex
[in] 窗口序号，对于大屏服务器，高两字节表示设备号，低两字节表示窗口号；对于海康大屏控制器，表示窗口号
dwCommand
[in] 命令值1-open，2-close（窗口号0xffff表示对所有窗口的操作）3-top(窗口置顶)
lpInter
[in] NET_DVR_ScreenWinCtrl结构指针，命令值为open时传入的参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError


NET_DVR_PicUpload

底图上传。

LONG NET_DVR_PicUpload(
  LONG                    lUserID,
  char const              *sFileName,
  LPNET_DVR_PICTURECFG    lpPictureCfg
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
sFileName
[in] 上传图片的图片路径
lpPictureCfg
[in] 图片参数

Return Values

-1表示失败，其他值作为NET_DVR_GetPicUploadState函数的参数。获取错误码调用NET_DVR_GetLastError。

Remarks

底图由上层切割并传送，例如：2*2的大屏，上传底图时需要客户端将底图切割成4块，并分成4次发送底图数据，每次发送时都需要发送结构体NET_DVR_BASEMAP_CFG。

设备端在收到屏幕序号为0的底图时，表示是新的底图。例如，用户将一幅图切割成4份，当传完前两块以后又要传另一幅底图，此时应该将屏幕序号置为0。这时设备就能知道是另一幅底图，并将第一幅底图的前两块数据丢弃。

See Also

NET_DVR_GetPicUploadProgress NET_DVR_CloseUploadHandle


NET_DVR_GetPicUploadProgress

获取图片上传的进度。

LONG NET_DVR_GetPicUploadProgress(
  LONG    lUploadHandle
);

Parameters

lUploadHandle
[in] 图片上传句柄，NET_DVR_PicUpload的返回值

Return Values

-1表示失败，0～100表示图片上传进度。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_PicUpload


NET_DVR_CloseUploadHandle

关闭上传句柄，释放资源。

BOOL NET_DVR_CloseUploadHandle(
  LONG    lUploadHandle
);

Parameters

lUploadHandle
[in] NET_DVR_PicUpload的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_PicUpload


NET_DVR_PicControl

图片控制。

BOOL NET_DVR_PicControl(
  LONG    lUserID,
  BYTE    byUseType,
  BYTE    byPicIndex,
  BYTE    byCtrlCmd
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
byUseType
[in] 图片用途：1- OSD，2- 底图
byPicIndex
[in] 图片序号
byCtrlCmd
[in] 控制命令：1- 显示，2- 隐藏

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。


NET_DVR_StartScreenPic

开始图片回显。

LONG NET_DVR_StartScreenPic(
  LONG               lUserID,
  DWORD              nInputNum,
  SCREENPICDATACB    PicDataCallback,
  LPVOID             pUserData
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
nInputNum
[in] 输入源索引
PicDataCallback
[in] 图片回调函数
pUserData
[in] 用户数据

Callback Function

typedef void(CALLBACK *SCREENPICDATACB)(
  LONG      nScreenPicHandle,
  DWORD     dwDataType,
  BYTE      *pBuffer,
  DWORD     dwBufSize,
  void      *pUser
);

Callback Function Parameters

nScreenPicHandle
[out] 图片回显句柄
dwDataType
[out] 数据类型
宏定义 | 宏定义值 | 含义
DATA_BMP | 0 | BMP图片
STREAM_SYSHEAD | 1 | 系统头数据
STREAM_DATA | 2 | 流数据
pBuffer
[out] 存放数据的缓冲区指针
dwBufSize
[out] 缓冲区大小
pUser
[out] 用户数据

Return Values

-1表示失败，其他值作为NET_DVR_StopScreenPic等函数的句柄参数。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_StopScreenPic


NET_DVR_StopScreenPic

停止图像回显。

BOOL NET_DVR_StopScreenPic(
  LONG    nScreenPicHandle
);

Parameters

nScreenPicHandle
[in] 图片回显句柄，NET_DVR_StartScreenPic的返回值

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_StartScreenPic


NET_DVR_MatrixPicAdjust

显示通道图像位置微调。

BOOL NET_DVR_MatrixPicAdjust(
  LONG    lUserID,
  DWORD   dwDispChan,
  DWORD   dwPicAdjust,
  DWORD   dwCmdParam
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDispChan
[in] 显示通道号
dwPicAdjust
[in] 微调命令
宏定义 | 宏定义值 | 含义
DECODEPIC_LEFTADJUST | 1 | 图像左移
DECODEPIC_RIGHTADJUST | 2 | 图像右移
DECODEPIC_UPADJUST | 3 | 图像上移
DECODEPIC_DOWNADJUST | 4 | 图像下移
DECODEPIC_REDUCEADJUST | 5 | 图像缩小
dwCmdParam
[in] 图像微调参数，大于0的整型值，表示移动距离，单位为：个（像素）。例如，dwPicAdjust = DECODEPIC_LEFTADJUST，dwCmdParam = 1，表示图片向左移动一个像素点。

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

Remarks

对于集中式大屏控制器V1.1，dwCmdParam取值范围如下：
当信号源是VGA时，水平左右最大都为50，上最大4，下最大20；
当信号源时BNC时，BNC左右最大都为8，上下最大都为8；
其他信号源不支持微调。
微调参数超过最大值时设备端当最大值来处理。

See Also

NET_DVR_Login_V30


NET_DVR_ScreenCtrl

屏幕控制。

BOOL NET_DVR_ScreenCtrl(
  LONG                        lUserID,
  DWORD                       dwDeviceNum,
  LPNET_DVR_SCREEN_CONTROL    lpStruScreenCtrl
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwDeviceNum
[in] 高的2个字节表示设备号，低2字节表示屏幕序号（0xffff表示所有屏幕）
lpStruScreenCtrl
[in] 屏幕控制结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。


NET_DVR_SetRegisterCallBack

设置设备上下线回调，接收设备消息。

BOOL NET_DVR_SetRegisterCallBack(
  REGCallBack    fRegCallBack,
  void           *pUser
);

Parameters

fRegCallBack
[in] 回调函数
pUser
[in] 用户数据

Callback Function

typedef LONG(CALLBACK *fRegCallBack)(
  LONG                         lUserID,
  LPNET_DVR_REGCALLBACKPARAM   pRegCallbackParam,
  LPNET_DVR_LOGONREPONSEPARAM  pInterParam,
  void                         *pUser
);

Callback Function Parameters

lUserID
[out] 用户ID
pRegCallbackParam
[out] 注册回调信息结构
pInterParam
[in] 注册响应参数，在回调上来后用于上层修改，设置每个用户的心跳超时时间和超时次数。
pUser
[out] 用户数据

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError.

回调函数返回0表示校验用户通过，下线时需调用NET_DVR_Logout_V30删除SDK的用户信息。


NET_DVR_StartServer

启动服务器监听。

LONG NET_DVR_StartServer(
  char     *sLocalIP,
  WORD     wLocalPort,
  BYTE     byMode
);

Parameters

sLocalIP
[in] 本地IP地址，为NULL表示SDK自动获取PC当前的IP地址。
wLocalPort
[in] 本地监听端口号，由用户设置
byMode
[in] 监听模式，0-TCP监听，1-UDP监听(现在不支持)，UDP监听用于设备查询其外网地址。

Return Values

-1表示失败，其他值作为NET_DVR_StopServer函数的句柄参数。获取错误码调用NET_DVR_GetLastError。

Remarks

该接口主要用于启动服务器监听，接收设备主动上传的主动注册、预览请求、回放请求、语音对讲请求、布防请求等信息。须将设备的CMS服务器地址设置成PC机的IP地址（与接口中的sLocalIP参数一致），CMS端口设置成PC机的监听端口号（与接口中的wLocalPort参数一致）。

See Also

NET_DVR_StopServer


NET_DVR_StopServer

停止服务器监听。

BOOL NET_DVR_StopServer(
  LONG     lServerHandle
);

Parameters

lServerHandle
[in] 监听句柄，NET_DVR_StartServer的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_StartServer


NET_DVR_PreviewRequest

预览请求。

BOOL NET_DVR_PreviewRequest(
  LONG                         lUserID,
  LONG                         lChannel,
  LPNET_DVR_PREVIEWPARAM       lpPreviewParam,
  LPNET_DVR_DEVICENATINFO      lpOuter
);

Parameters

lUserID
[in] 设备注册ID，由NET_DVR_SetRegisterCallBack注册的REGCallBack回调获取
lChannel
[in] 编码通道
lpPreviewParam
[in] 预览参数
lpOuter
[out] PU端NAT模式下网络信息，NAT预览请求时使用

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SetRegisterCallBack


NET_DVR_PlaybackRequest

回放请求。

BOOL NET_DVR_PlaybackRequest(
  LONG                            lUserID,
  LPNET_DVR_PLAYBACKREQUESTPARAM  lpPlayBackRequestParam
);

Parameters

lUserID
[in] 设备注册ID，由NET_DVR_SetRegisterCallBack注册的REGCallBack回调获取
lpPlayBackRequestParam
[in] 回放请求参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SetRegisterCallBack


NET_DVR_VoiceRequest

对讲请求。

BOOL NET_DVR_VoiceRequest(
  LONG                         lUserID,
  LPNET_DVR_VOICEREQUESTPARAM  lpVoiceParam
);

Parameters

lUserID
[in] 设备注册ID，由NET_DVR_SetRegisterCallBack注册的REGCallBack回调获取
lpVoiceParam
[in] 对讲参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SetRegisterCallBack


NET_DVR_AlarmSetupRequest

布防请求。

BOOL NET_DVR_AlarmSetupRequest(
  LONG                              lUserID,
  LPNET_DVR_ALARMSETUPREQUESTPARAM  lpAlarmSetupParam
);

Parameters

lUserID
[in] 设备注册ID，由NET_DVR_SetRegisterCallBack注册的REGCallBack回调获取
lpAlarmSetupParam
[in] 布防参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_SetRegisterCallBack


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] 设备注册ID，由NET_DVR_SetRegisterCallBack注册的REGCallBack回调获取
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_CMSPARA | 获取CMS平台参数 | 无效 | NET_DVR_CMSPARAM | 1170
NET_DVR_GET_DIALSTATUS | 获取拨号状态参数 | 无效 | NET_DVR_DIALSTATUS | 1172
NET_DVR_GET_SMSRELATIVEPARA | 获取短信相关参数 | 无效 | NET_DVR_SMSRELATIVEPARAM | 1173
NET_DVR_GET_PINSTATUS | 获取PIN状态 | 无效 | NET_DVR_PINSTATUS | 1175
NET_DVR_GET_MB_POWERCTRLPARA | 获取启动控制参数 | 无效 | NET_DVR_MB_POWERCTRLPARA | 8000
NET_DVR_GET_AUTOBACKUPPARA | 获取自动备份参数 | 无效 | NET_DVR_MB_AUTOBACKUPPARA | 8002
NET_DVR_GET_MB_GPSPARA | 获取GPS参数 | 无效 | NET_DVR_MB_GPSPARA | 8004
NET_DVR_GET_MB_SENSORINPARA | 获取SENSOR参数 | 无效 | NET_DVR_MB_SENSORINPARA | 8006
NET_DVR_GET_MB_DOWNLOADSVRPARA | 获取下载服务器参数 | 无效 | NET_DVR_MB_DOWNLOADSVRPARA | 8010
NET_DVR_GET_PLATERECOG_PARA | 获取车牌识别参数 | 无效 | NET_DVR_PLATERECOG_PARA | 8012
NET_DVR_GET_ENFORCESYS_PARA | 获取车辆稽查参数 | 无效 | NET_DVR_ENFORCESYS_PARA | 8014

See Also

NET_DVR_SetRegisterCallBack NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] 设备注册ID，由NET_DVR_SetRegisterCallBack注册的REGCallBack回调获取
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_CMSPARA | 设置CMS平台参数 | 无效 | NET_DVR_CMSPARAM | 1171
NET_DVR_SET_SMSRELATIVEPARA | 设置短信相关参数 | 无效 | NET_DVR_SMSRELATIVEPARAM | 1174
NET_DVR_SET_PINCMD | 设置PIN命令 | 无效 | NET_DVR_PINCODEPARAM | 1176
NET_DVR_SET_MB_POWERCTRLPARA | 设置启动控制参数 | 无效 | NET_DVR_MB_POWERCTRLPARA | 8001
NET_DVR_SET_AUTOBACKUPPARA | 设置自动备份参数 | 无效 | NET_DVR_MB_AUTOBACKUPPARA | 8003
NET_DVR_SET_MB_GPSPARA | 设置GPS参数 | 无效 | NET_DVR_MB_GPSPARA | 8005
NET_DVR_SET_MB_SENSORINPARA | 设置SENSOR参数 | 无效 | NET_DVR_MB_SENSORINPARA | 8007
NET_DVR_SET_GSENSORPARA | 设置GSENSOR参数 | 无效 | NET_DVR_GSENSORPARA | 8009
NET_DVR_SET_MB_DOWNLOADSVRPARA | 设置下载服务器参数 | 无效 | NET_DVR_MB_DOWNLOADSVRPARA | 8011
NET_DVR_SET_PLATERECOG_PARA | 设置车牌识别参数 | 无效 | NET_DVR_PLATERECOG_PARA | 8013
NET_DVR_SET_ENFORCESYS_PARA | 设置车辆稽查参数 | 无效 | NET_DVR_ENFORCESYS_PARA | 8015

See Also

NET_DVR_SetRegisterCallBack NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_GetDialParam

获取拨号参数。

BOOL NET_DVR_GetDialParam(
  LONG                     lUserID,
  LPNET_DVR_DIALREQUEST    lpDialRequest,
  LPNET_DVR_DIALPARAM      lpDialParam
);

Parameters

lUserID
[in] 设备注册ID，由REGCallBack回调获取
lpDialRequest
[in] 拨号参数请求结构
lpDialParam
[out] 拨号参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_SetRegisterCallBack
NET_DVR_SetDialParam


NET_DVR_SetDialParam

设置拨号参数。

BOOL NET_DVR_SetDialParam(
  LONG                     lUserID,
  LPNET_DVR_DIALREQUEST    lpDialRequest,
  LPNET_DVR_DIALPARAM      lpDialParam
);

Parameters

lUserID
[in] 设备注册ID，由REGCallBack回调获取
lpDialRequest
[in] 拨号参数请求结构
lpDialParam
[in] 拨号参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

See Also

NET_DVR_SetRegisterCallBack NET_DVR_GetDialParam


NET_DVR_SetPushModeParam

推模式参数设置

BOOL NET_DVR_SetPushModeParam(
  LPNET_DVR_PUSHMODEPARAM     pPushParam,
);

Parameters

pPushParam
[in] 推模式参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError。


NET_DVR_SpringJPEGPicture

触发设备抓图。

BOOL NET_DVR_SpringJPEGPicture(
  LONG                        lUserID,
  LONG                        lChannel,
  NET_DVR_PUSHJPEGPARA const  *lpJpegPara
);

Parameters

lUserID
[in] 设备注册ID，由REGCallBack回调获取
lChannel
[in] 通道号
lpJpegPara
[in] 图片质量

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_SetRegisterCallBack


NET_DVR_SetPreviewResponseCallBack

设置设备端推码流回应回调函数。

BOOL NET_DVR_SetPreviewResponseCallBack(
  PREVIEWRESPONSECallBack   fPreviewResponseCallBack,
  void                      *pUser
);

Parameters

fPreviewResponseCallBack
[in] 推码流回应回调函数
pUser
[in] 用户数据

Callback Function

typedef LONG(CALLBACK *PREVIEWRESPONSECallBack)(
  LONG                             lUserID,
  LONG                             lStreamHandle,
  LPNET_DVR_PREVIEWCALLBACKPARAM   pPewviewCallbackParam,
  void                             *pUser
);

Callback Function Parameters

lUserID
[out] 用户ID
lStreamHandle
[out] 预览句柄
pPewviewCallbackParam
[out] 预览回调参数
pUser
[out] 用户数据

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError.

回调函数返回0表示上层通过预览请求验证。

Remarks

客户端调用该接口设置推码流回应回调函数之后需要调用NET_DVR_SetRealDataCallBack获取实时流数据。

See Also

NET_DVR_SetRealDataCallBack NET_DVR_StopRealPlay


NET_DVR_SetPlaybackResponseCallBack

设置设备端回放推码流回应回调函数。

BOOL NET_DVR_SetPlaybackResponseCallBack(
  PLAYBACKRESPONSECallBack  fPlaybackResponseCallBack,
  void                      *pUser
);

Parameters

fPlaybackResponseCallBack
[in] 回放推码流回应回调函数
pUser
[in] 用户数据

Callback Function

typedef LONG(CALLBACK *PLAYBACKRESPONSECallBack)(
  LONG                             lUserID,
  LONG                             lPlaybackHandle,
  LPNET_DVR_PLAYBACKCALLBACKPARAM  lpPlaybackParam,
  void                             *pUser
);

Callback Function Parameters

lUserID
[out] 用户ID
lStreamHandle
[out] 回放句柄
pPewviewCallbackParam
[out] 回放回调参数
pUser
[out] 用户数据

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError.

回调函数返回0表示上层通过回放请求验证。

Remarks

客户端调用该接口设置推码流回应回调函数之后需要调用NET_DVR_PlayBackControl开始播放命令（NET_DVR_PLAYSTART）才能实现回放，而后调用NET_DVR_SetPlayDataCallBack获取回放数据。

See Also

NET_DVR_PlayBackControl NET_DVR_SetPlayDataCallBack NET_DVR_StopPlayBack


NET_DVR_SetVoiceResponseCallBack

设置设备端对讲回应回调函数。

BOOL NET_DVR_SetVoiceResponseCallBack(
  VOICERESPONSECallBack  fVoiceResponseCallBack,
  void                   *pUser
);

Parameters

fVoiceResponseCallBack
[in] 对讲回应回调函数
pUser
[in] 用户数据

Callback Function

typedef LONG(CALLBACK *VOICERESPONSECallBack)(
  LONG                             lUserID,
  LONG                             lVoiceHandle,
  LONG                             lVoiceChannel,
  BYTE                             nAudioType,
  void                             *pUser
);

Callback Function Parameters

lUserID
[out] 用户ID
lVoiceHandle
[out] 对讲句柄
lVoiceChannel
[out] 对讲通道号
nAudioType
[out] 音频类型，0- G722，1- G711
pUser
[out] 用户数据

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError.

回调函数返回0表示上层通过对讲请求验证。

See Also

NET_DVR_StopVoiceCom


NET_DVR_SetDVRMessageCallBack_V30

注册回调函数，接收设备报警消息等。

BOOL NET_DVR_SetDVRMessageCallBack_V30(
  MSGCallBack    fMessageCallBack,
  void           *pUser
);

Parameters

fMessageCallBack
[in] 回调函数
pUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *MSGCallBack)(
  LONG               lCommand,
  NET_DVR_ALARMER    *pAlarmer,
  char               *pAlarmInfo,
  DWORD              dwBufLen,
  void               *pUser
);

Callback Function Parameters

lCommand
[out] 上传的消息类型，见下表
宏定义 | 宏定义值 | 含义
COM_PUSHALARM | 0x1200 | V3.0以下设备基本报警信息上传
COM_PUSHALARM_V30 | 0x1201 | V3.0以上设备基本报警信息上传
COMM_ALARM_ALARMGPS | 0x1202 | GPS报警信息上传
pAlarmer
[out] 报警设备信息
pAlarmInfo
[out] 报警信息
dwBufLen
[out] 报警信息缓存大小
pUser
[out] 用户数据

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

该接口中回调函数的第一个参数（lCommand）和第三个参数（pAlarmInfo）是密切关联的，其关系见下表：
消息类型（lCommand） | 上传内容 | pAlarmInfo对应的结构体
COM_PUSHALARM | V3.0以下设备基本报警信息 | NET_DVR_PUSHALARMINFO
COM_PUSHALARM_V30 | V3.0以上设备基本报警信息 | NET_DVR_PUSHALARMINFO_V30
COMM_ALARM | GPS报警信息 | NET_DVR_GPSALARMINFO

See Also

NET_DVR_SetAlarmSetupResponseCallBack

NET_DVR_StartListen_V30


NET_DVR_SetAlarmSetupResponseCallBack

设置设备端布防请求回调函数。

BOOL NET_DVR_SetAlarmSetupResponseCallBack(
  ALARMSETUPRESPONSECallBack  fAlarmSetupResponseCallBack,
  void                        *pUser
);

Parameters

fAlarmSetupResponseCallBack
[in] 布防请求回调函数
pUser
[in] 用户数据

Callback Function

typedef LONG(CALLBACK *ALARMSETUPRESPONSECallBack)(
  LONG              lUserID,
  LONG              lAlarmHandle,
  void              *pUser
);

Callback Function Parameters

lUserID
[out] 用户ID
lAlarmHandle
[out] 布防句柄
pUser
[out] 用户数据

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

回调函数返回0表示上层通过布防请求验证。

See Also

NET_DVR_CloseAlarmChan_V30


NET_DVR_StartListen_V30

启动监听，接收设备主动上传的报警等信息（支持多线程）。

LONG NET_DVR_StartListen_V30(
  char           *sLocalIP,
  WORD           wLocalPort,
  MSGCallBack    DataCallback,
  void           *pUserData
);

Parameters

sLocalIP
[in] PC机本地IP地址，可以置为NULL
wLocalPort
[in] PC本地监听端口号。由用户设置，必须和设备端设置的一致
DataCallback
[in] 回调函数，不能为NULL
pUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *MSGCallBack)(
  LONG               lCommand,
  NET_DVR_ALARMER    *pAlarmer,
  char               *pAlarmInfo,
  DWORD              dwBufLen,
  void               *pUser
);

Callback Function Parameters

lCommand
[out] 上传的消息类型，见下表
宏定义 | 宏定义值 | 含义
COM_PUSHALARM | 0x1200 | V3.0以下设备基本报警信息上传
COM_PUSHALARM_V30 | 0x1201 | V3.0以上设备基本报警信息上传
COMM_ALARM_ALARMGPS | 0x1202 | GPS报警信息上传
COMM_UPLOAD_PICTUREINFO | 0x2900 | 上传图片信息
pAlarmer
[out] 报警设备信息
pAlarmInfo
[out] 报警信息
dwBufLen
[out] 报警信息缓存大小
pUser
[out] 用户数据

Return Values

-1表示失败，其他值作为NET_DVR_StopListen_V30函数的句柄参数。获取错误码调用NET_DVR_GetLastError

Remarks

要使PC能够收到设备主动发过来的报警等信息，必须将设备的网络配置中的“远程管理主机地址”或者“远程报警主机地址”设置成PC机的IP地址（与接口中的sLocalIP参数一致），“远程管理主机端口号”或者“远程报警主机端口号”设置成PC机的监听端口号（与接口中的wLocalPort参数一致）。

如何要正常获取图片信息，需要在平台参数配置中把图片服务器的地址和端口配置好，然后再调用NET_DVR_StartListen()接口进行监听，设置好回调函数。

该接口中的回调函数优先级高于其他回调函数，即设置了该接口中的回调函数，其他回调函数将接收不到报警信息。

该接口中回调函数的第一个参数（lCommand）和第三个参数（pAlarmInfo）是密切关联的，其关系见下表：

消息类型（lCommand） | 上传内容 | pAlarmInfo对应的结构体
COM_PUSHALARM | V3.0以下设备基本报警信息 | NET_DVR_PUSHALARMINFO
COM_PUSHALARM_V30 | V3.0以上设备基本报警信息 | NET_DVR_PUSHALARMINFO_V30
COMM_ALARM | GPS报警信息 | NET_DVR_GPSALARMINFO
COMM_UPLOAD_PICTUREINFO | 图片信息 | NET_DVR_PICTUREINFO

See Also

NET_DVR_StopListen_V30


注意事项

  • 优先使用带“_V30”后缀的接口与结构
V3.0版本中，对函数和结构做了较多变更和改善，在执行同一功能时，优先推荐使用带“_V30”标识的函数或者结构体
  • 需重启操作
  • 导入配置参数文件（NET_DVR_SetConfigFile_EX和NET_DVR_SetConfigFile）：
    DS-90xx设备会自动重启并生效，其他设备需要手动重启才能生效；
  • 启用/禁用模拟通道（参数配置NET_DVR_IPPARACFG）：
    DS-90xx设备会自动重启并生效，其他设备无此功能；
  • 硬盘参数，盘组参数
    DS-90xx设备需要手动重启才能生效，其他设备无此功能；
  • 远程设备升级（NET_DVR_Upgrade）：
    所有设备需要手动重启才能生效；
  • 串口RS232传输模式切换-透明通道（参数配置NET_DVR_RS232CFG_V30和NET_DVR_RS232CFG）：
    所有设备需要手动重启才能生效；
  • 录像计划（参数配置NET_DVR_RECORD_V30和参数配置NET_DVR_RECORD）：
    1.是否启动录像：DS-90xx设备直接生效，其他设备需要手动重启才能生效；
    2.全天录像的启用或不启用切换：DS-90xx设备直接生效，其他设备需要手动重启才能生效；
    3.录像类型的更改：DS-90xx设备直接生效，其他设备需要手动重启才能生效；
    4.录像时间的更改：DS-90xx设备直接生效，其他设备需要手动重启才能生效。
  • 基本网络配置（参数配置NET_DVR_NETCFG_V30和NET_DVR_NETCFG）：
    1.设备通讯端口修改（默认8000）：所有设备需要手动重启才能生效；
    2.DHCP配置修改：DS-90xx设备需要手动重启才能生效，其他设备无此功能；
    3.HTTP端口，网卡类型，设备IP地址：DS-90xx设备直接生效，其他设备需要手动重启才能生效；
    4.PPPOE参数配置：DS-90xx设备需要手动重启才能生效，其他设备直接生效。
  • 报警输入的报警器类型更改（参数配置NET_DVR_ALARMINCFG）：
    报警输入配置参数中的“常开”、“常闭”，所有设备需要手动重启才能生效，DS-90xx设备的数字通道对应的IP设备会被自动重启。
  • 压缩参数（参数配置NET_DVR_COMPRESSIONCFG_V30）：
    更改压缩参数的视频编码类型时，需要手动重启才能生效。


常见问题解答

设备网络SDK开发使用手册

关于报警

Question 1  从报警接口NET_DVR_SetDVRMessCallBack返回的回调函数中如何得知是哪个通道的报警？

Answer 1

调用接口NET_DVR_SetDVRMessCallBack设置的回调函数返回的第三个参数可以获得报警信息（即NET_DVR_ALARMINFO结构体），该结构体中的 dwAlarmType参数表示报警类型：0是信号量报警，1是硬盘满，2是信号丢失，3是移动侦测，4是硬盘未格式化，5是读写硬盘出错，6是遮挡报警，7是制式不匹配，8是非法访问。而当报警类型为信号丢失和移动侦测时，可以通过结构体中的参数dwChannel来获得报警的通道，例如：dwChannel[0]值为1时表示当前报警的通道为第一通道。

Question 2  获取报警的方式及调用方法？

Answer 2

所谓布防就是SDK主动连接设备，并发起报警上传命令，设备一旦发生报警立即发送给SDK。因此，除了配置报警输入信息和设备回调函数以外，还需要调用NET_DVR_SetupAlarmChan接口建立SDK与设备的连接。 主动上传报警是指在设备端配置上传主机地址和端口，上传主机（即客户端PC机）在该端口上监听接收设备主动上传的报警信息。所以首先调用NET_DVR_StartListen()函数，开启客户端的监听端口，准备接收设备上传的报警信息，调用NET_DVR_NETCFG配置设备的主动上传主机和端口号。该方式适用于多个设备向一台客户端上传报警，而且不需要设备登录即可，设备重启后不影响报警上传；缺点是设备只支持一个上传主机和端口号的配置。

Question 3  报警配置成功后，设备本地能收到报警信号，客户端为什么收不到报警信号？

Answer 3

导致客户端接收不到报警信息的原因如下：1）网络连接是否正常；2）当报警模式为主动上传时，设备端的上传中心是否已经设置；3）当报警模式为布防时，是否已经正确设置布防。

关于抓图

Question 4  如何将捕获的图片保存在内存中以供后续处理？

Answer 4

可以通过解码库函数PlayM4_GetBMP和PlayM4_GetJPEG 把图片保存在内存中。注意，这两个函数需要参数LONG nPort（即当前该路实时播放的播放库句柄），而该参数可以通过NET_DVR_GetRealPlayerIndex获得。

关于回放和下载

Question 5  按时间回放和下载的文件起始位置如何定位？

Answer 5

按时间回放和下载是在设定的时间附近的一个关键帧开始下载。

Question 6  按时间回放和下载时获取文件进度为何只有0和100？

Answer 6

按时间回放和下载时，设备仅提供两种状态的进度查询：未完成时进度为0；完成时进度为100。

Question 7  为何调用回放接口后仍无视频图像？

Answer 7

在调用NET_DVR_PlayBackByName()或NET_DVR_PlayBackByTime()后必须要调用NET_DVR_PlayBackControl()发送开始播放命令(NET_DVR_PLAYSTART)才开始播放。

Question 8  关于NET_DVR_PlayBackByName()和NET_DVR_PlayBackByTime()的播放控制功能？

Answer 8

如果这两个接口中的参数hWnd为空值时，仅播放控制中的“开始播放（该宏值NET_DVR_PLAYSTART）”执行有效，其余播放控制命令执行无效，因此若欲实现回放文件时的播放控制功能该处两个接口的窗口句柄不能设置为空值。

Question 9  按时间回放时为什么立即调用丢B帧和打开声音等操作容易失败？

Answer 9

这是因为在按时间回放时等待设备返回播放40字节头数据需要时间，所以相对打开播放库也就慢，这种情况下立即调用丢B帧和打开声音等操作容易出现失败。

关于透明通道

Question 10  在使用232串口作为透明通道时，调用透明通道发送数据为什么不成功？

Answer 10

这是因为在232串口配置中没有将该串口设置成透明通道模式，配置的相关结构体是NET_DVR_RS232CFG，可通过设置该结构中的参数dwWorkMode为透明通道模式。

Question 11  使用485或者232进行透明通道发送数据给解码器却无法在回调中得到解码器返回的数据？

Answer 11

透明通道中设备只是一个转发的作用，不会做任何处理，如果回调中没有数据返回的话那么说明解码器本身就不支持数据回传。

Question 12  除通过232和485透明通道外，是否还有其他方法控制云台？

Answer 12

除了利用232和485串口作为透明通道控制云台外，调用NET_DVR_TransPTZ()和NET_DVR_TransPTZ_Other()可以不需要建立透明通道直接发送控制码。

关于参数配置

Question 13  使用NET_DVR_SetDVRConfig()配置参数要注意什么？

Answer 13

因为NET_DVR_SetDVRConfig()需要输入完整赋值的结构体，否则容易导致设置出错。所以为了避免这个问题，一般地，在调用NET_DVR_SetDVRConfig()设置之前先调用NET_DVR_GetDVRConfig()给需要修改的结构体赋一个初始值，在此基础上修改对应参数，最后再调用NET_DVR_SetDVRConfig()。

Question 14  NET_DVR_PTZControl发送控制命令，为什么对某些云台无效？

Answer 14

设备会根据目前设置的解码器类型和解码器地址向云台发送控制码，如果目前设置的解码器不匹配，则需要在设备端设置相应的解码器，如果设备不支持该解码器，则无法用这几个接口来控制云台。

Question 15  NET_DVR_PICCFG中的参数NET_DVR_HIDEALARM遮挡报警中的一些参数有些重复？

Answer 15

NET_DVR_PICCFG中的参数NET_DVR_SHELTER是设置设备上的遮盖区域，若设置启动遮盖，所有客户端都将无法预览该区域的视频图像。而NET_DVR_HIDEALARM中是设置在设备上的，是只要在设置的区域内有被东西遮挡后就会报警。

Question 16  如何获取PPPoE相关信息？

Answer 16

可以通过ipserver软件获取；也可以通过SDK中的NET_DVR_GetDVRIPByResolveSvr()接口实现。

关于语音对讲和转发

Question 17  语音对讲和转发是针对设备还是通道？

Answer 17

语音对讲和转发是针对设备并非通道，因此决定与该设备的语音对讲和转发的最大路数并不是由设备的通道数决定。

Question 18  语音转发是什么？主要用于什么情况下？

Answer 18

语音转发，是语音对讲的网络部分功能，即接收和发送声音数据部分，可以将设备的声音回调处理，同时也可以调用NET_DVR_VoiceComSendData()发送音频数据到设备。音频数据的来源比语音对讲更加自如，可以来自自行采集、声音文件等。

Question 19  语音对讲的回调函数是否可以设置为NULL？

Answer 19

可以，这样做语音依然正常，但是用户无法自行处理数据。

Question 20  语音转发开始后，一段时间未发送数据到设备，设备会主动断开连接？

Answer 20

因为设备一段时间接收不到客户端发去的数据会认为连接中断，所以开始语音转发一定要调用NET_DVR_VoiceComSendData()向服务器发送数据。

Question 21  语音广播的功能？

Answer 21

语音广播是指向多台设备发送需要广播的音频数据，但是对设备发过来的声音不作处理；一台设备同时只能在进行语音广播、语音对讲、语音转发中的一种。

Question 22  语音广播实现步骤？

Answer 22

先调用NET_DVR_ClientAudioStart()，再调用NET_DVR_AddDVR()来实现。

关于预览

Question 23  实时预览无视频图像？

Answer 23

导致实时预览无视频图像的原因可能有以下几种状况：网络传输无数据；解码库与设备或者网络SDK版本不匹配；预览用户数达到设备最大支持的路数。

Question 24  如何解决设备最大连接路数受限的问题？

Answer 24

除81XX, 72XXHV，71XXHV等系列基于6467平台的设备目前最多支持18路同时连接外，设备的每个通道最多支持6路同时连接，每台设备最多支持24路同时连接。所以要想解决设备的连接路数受限，可以使用流媒体模式。

Question 25  实时预览过程必须调用的接口及顺序？

Answer 25

正确调用顺序如下：NET_DVR_Init() ——> NET_DVR_Login() ——> NET_DVR_RealPlay() ——> NET_DVR_StopRealPlay() ——> NET_DVR_Logout() ——> NET_DVR_Cleanup()。

Question 26  支持哪些预览方式？多播预览模式如何设置？

Answer 26

支持的预览方式有：TCP、UDP、RTP、MULTICAST。在调用开始预览的接口NET_DVR_RealPlay中的参数lpClientInfo，该参数是NET_DVR_CLIENTINFO结构体，只要将lLinkMode设置为多播模式即可。

关于设备升级

Question 27  远程设备升级时为什么会出现网络异常中断？

Answer 27

原因一：网络阻塞；原因二，由于PC打开卡巴斯基等防火墙软件后，导致PC端无法接受到部分报文，从而升级失败。

关于监听

Question 28  设备的“远程管理主机地址”和“远程报警主机地址”有什么区别？

Answer 28

管理主机IP在V3.0以上版本支持的设备中命名为“远程报警主机地址”，而V3.0以下版本支持的设备依然使用远程管理主机地址。两者是同样的含义。

Question 29  NET_DVR_StartListen_V30()可以监听几个端口？

Answer 29

NET_DVR_StartListen_V30()可以最多监听10个端口。

关于检查是否有视频信号输入

Question 30  如何检查视频输入口是否有信号输入？

Answer 30

想判断前端是否有视频信号输入，可以通过NET_DVR_GetDVRWorkState_V30()接口获取到的NET_DVR_CHANNELSTATE_V30结构体中的bySignalStatic 参数来判断。

关于连接数限制

Question 31  SDK 支持的预览、回放、报警和对讲等的连接数限制？

Answer 28

设备网络SDK支持的预览、回放和下载、报警、对讲等长连接数最大值均为512。


设备网络SDK

使用手册

V4.1.0


NET_DVR_AddDVR

添加设备到可以接收PC机声音的广播组。

BOOL NET_DVR_AddDVR(
  LONG    lUserID
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

Remarks

实现语音广播功能需先调用NET_DVR_ClientAudioStart或者NET_DVR_ClientAudioStart_V30接口采集本地PC的音频数据，再调用NET_DVR_AddDVR或者NET_DVR_AddDVR_V30逐个添加设备同时将采集到的数据发送给设备。

SDK最大支持添加512个设备。

See Also

NET_DVR_DelDVR

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见

NET_DVR_AddDVR_V30


NET_DVR_ClientAudioStart

启动语音广播的PC端声音捕获。

BOOL NET_DVR_ClientAudioStart(
);

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。

Remarks

Windows 7操作系统下，如果不外接音频设备，该接口将返回失败。
实现语音广播功能需先调用NET_DVR_ClientAudioStart或者NET_DVR_ClientAudioStart_V30接口采集本地PC的音频数据，再调用NET_DVR_AddDVR或者NET_DVR_AddDVR_V30逐个添加设备同时将采集到的数据发送给设备。

See Also

NET_DVR_ClientAudioStop

Reference Interface

扩展接口可见

NET_DVR_ClientAudioStart_V30


NET_DVR_CloseAlarmChan

撤销报警上传通道。

BOOL NET_DVR_CloseAlarmChan(
  LONG   lAlarmHandle
);

Parameters

lAlarmHandle
[in] NET_DVR_SetupAlarmChan的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。

See Also

NET_DVR_SetupAlarmChan

Reference Interface

扩展接口可见

NET_DVR_CloseAlarmChan_V30


NET_DVR_DelDVR

从可接收PC机声音的广播组里删除设备。

BOOL NET_DVR_DelDVR(
  LONG   lUserID
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_AddDVR

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见

NET_DVR_DelDVR_V30


NET_DVR_FindClose

关闭文件查找，释放资源。

BOOL NET_DVR_FindClose(
  LONG   lFindHandle
);

Parameters

lFindHandle
[in] 文件查找句柄NET_DVR_FindFile的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

See Also

NET_DVR_FindFile


NET_DVR_FindDVRLog

查找设备的日志信息。

LONG NET_DVR_FindDVRLog(
  LONG              lUserID,
  LONG              lSelectMode,
  DWORD             dwMajorType,
  DWORD             dwMinorType,
  LPNET_DVR_TIME    lpStartTime,
  LPNET_DVR_TIME    lpStopTime
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lSelectMode
[in] 查询方式：0－全部；1－按类型；2－按时间；3－按时间和类型
dwMajorType
[in] 日志主类型（S.M.A.R.T搜索时无效），0表示全部类型，其他类型定义如下：
宏定义 | 宏定义值 | 含义
MAJOR_ALARM | 0x1 | 报警
MAJOR_EXCEPTION | 0x2 | 异常
MAJOR_OPERATION | 0x3 | 操作
MAJOR_INFORMATION | 0x4 | 日志附加信息
dwMinorType
[in] 日志次类型（S.M.A.R.T搜索时无效），0表示全部类型，根据不同的主类型的次类型定义如下：
主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_ALARM | 0x1 | 报警
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_ALARM_IN | 0x1 | 报警输入
MINOR_ALARM_OUT | 0x2 | 报警输出
MINOR_MOTDET_START | 0x3 | 移动侦测报警开始
MINOR_MOTDET_STOP | 0x4 | 移动侦测报警结束
MINOR_HIDE_ALARM_START | 0x5 | 遮挡报警开始
MINOR_HIDE_ALARM_STOP | 0x6 | 遮挡报警结束
MINOR_VCA_ALARM_START | 0x7 | 智能报警开始
MINOR_VCA_ALARM_STOP | 0x8 | 智能报警结束

主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_EXCEPTION | 0x2 | 异常
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_VI_LOST | 0x21 | 视频信号丢失
MINOR_ILLEGAL_ACCESS | 0x22 | 非法访问
MINOR_HD_FULL | 0x23 | 硬盘满
MINOR_HD_ERROR | 0x24 | 硬盘错误
MINOR_DCD_LOST | 0x25 | MODEM 掉线(保留)
MINOR_IP_CONFLICT | 0x26 | IP地址冲突
MINOR_NET_BROKEN | 0x27 | 网络断开
MINOR_REC_ERROR | 0x28 | 录像出错
MINOR_IPC_NO_LINK | 0x29 | IPC连接异常
MINOR_VI_EXCEPTION | 0x2a | 视频输入异常(只针对模拟通道)
MINOR_IPC_IP_CONFLICT | 0x2b | IPC的IP地址冲突

主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_OPERATION | 0x3 | 操作
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_START_DVR | 0x41 | 开机
MINOR_STOP_DVR | 0x42 | 关机
MINOR_STOP_ABNORMAL | 0x43 | 异常关机
MINOR_REBOOT_DVR | 0x44 | 本地重启设备
MINOR_LOCAL_LOGIN | 0x50 | 本地登陆
MINOR_LOCAL_LOGOUT | 0x51 | 本地注销登陆
MINOR_LOCAL_CFG_PARM | 0x52 | 本地配置参数
MINOR_LOCAL_PLAYBYFILE | 0x53 | 本地按文件回放或下载
MINOR_LOCAL_PLAYBYTIME | 0x54 | 本地按时间回放或下载
MINOR_LOCAL_START_REC | 0x55 | 本地开始录像
MINOR_LOCAL_STOP_REC | 0x56 | 本地停止录像
MINOR_LOCAL_PTZCTRL | 0x57 | 本地云台控制
MINOR_LOCAL_PREVIEW | 0x58 | 本地预览(保留不使用)
MINOR_LOCAL_MODIFY_TIME | 0x59 | 本地修改时间(保留不使用)
MINOR_LOCAL_UPGRADE | 0x5a | 本地升级
MINOR_LOCAL_RECFILE_OUTPUT | 0x5b | 本地备份录象文件
MINOR_LOCAL_FORMAT_HDD | 0x5c | 本地初始化硬盘
MINOR_LOCAL_CFGFILE_OUTPUT | 0x5d | 导出本地配置文件
MINOR_LOCAL_CFGFILE_INPUT | 0x5e | 导入本地配置文件
MINOR_LOCAL_COPYFILE | 0x5f | 本地备份文件
MINOR_LOCAL_LOCKFILE | 0x60 | 本地锁定录像文件
MINOR_LOCAL_UNLOCKFILE | 0x61 | 本地解锁录像文件
MINOR_LOCAL_DVR_ALARM | 0x62 | 本地手动清除和触发报警
MINOR_IPC_ADD | 0x63 | 本地添加IPC
MINOR_IPC_DEL | 0x64 | 本地删除IPC
MINOR_IPC_SET | 0x65 | 本地设置IPC
MINOR_LOCAL_START_BACKUP | 0x66 | 本地开始备份
MINOR_LOCAL_STOP_BACKUP | 0x67 | 本地停止备份
MINOR_LOCAL_COPYFILE_START_TIME | 0x68 | 本地备份开始时间
MINOR_LOCAL_COPYFILE_END_TIME | 0x69 | 本地备份结束时间
MINOR_LOCAL_ADD_NAS | 0x6a | 本地添加网络硬盘
MINOR_LOCAL_DEL_NAS | 0x6b | 本地删除NAS盘
MINOR_LOCAL_SET_NAS | 0x6c | 本地设置NAS盘
MINOR_REMOTE_LOGIN | 0x70 | 远程登录
MINOR_REMOTE_LOGOUT | 0x71 | 远程注销登陆
MINOR_REMOTE_START_REC | 0x72 | 远程开始录像
MINOR_REMOTE_STOP_REC | 0x73 | 远程停止录像
MINOR_START_TRANS_CHAN | 0x74 | 开始透明传输
MINOR_STOP_TRANS_CHAN | 0x75 | 停止透明传输
MINOR_REMOTE_GET_PARM | 0x76 | 远程获取参数
MINOR_REMOTE_CFG_PARM | 0x77 | 远程配置参数
MINOR_REMOTE_GET_STATUS | 0x78 | 远程获取状态
MINOR_REMOTE_ARM | 0x79 | 远程布防
MINOR_REMOTE_DISARM | 0x7a | 远程撤防
MINOR_REMOTE_REBOOT | 0x7b | 远程重启
MINOR_START_VT | 0x7c | 开始语音对讲
MINOR_STOP_VT | 0x7d | 停止语音对讲
MINOR_REMOTE_UPGRADE | 0x7e | 远程升级
MINOR_REMOTE_PLAYBYFILE | 0x7f | 远程按文件回放
MINOR_REMOTE_PLAYBYTIME | 0x80 | 远程按时间回放
MINOR_REMOTE_PTZCTRL | 0x81 | 远程云台控制
MINOR_REMOTE_FORMAT_HDD | 0x82 | 远程格式化硬盘
MINOR_REMOTE_STOP | 0x83 | 远程关机
MINOR_REMOTE_LOCKFILE | 0x84 | 远程锁定文件
MINOR_REMOTE_UNLOCKFILE | 0x85 | 远程解锁文件
MINOR_REMOTE_CFGFILE_OUTPUT | 0x86 | 远程导出配置文件
MINOR_REMOTE_CFGFILE_INTPUT | 0x87 | 远程导入配置文件
MINOR_REMOTE_RECFILE_OUTPUT | 0x88 | 远程导出录象文件
MINOR_REMOTE_DVR_ALARM | 0x89 | 远程手动清除和触发报警
MINOR_REMOTE_IPC_ADD | 0x8a | 远程添加IPC
MINOR_REMOTE_IPC_DEL | 0x8b | 远程删除IPC
MINOR_REMOTE_IPC_SET | 0x8c | 远程设置IPC
MINOR_REBOOT_VCA_LIB | 0x8d | 重启智能库
MINOR_REMOTE_ADD_NAS | 0x8e | 远程添加NAS盘
MINOR_REMOTE_DEL_NAS | 0x8f | 远程删除NAS盘
MINOR_REMOTE_SET_NAS | 0x90 | 远程设置NAS盘

主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_INFORMATION | 0x4 | 附加信息
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_HDD_INFO | 0xa1 | 硬盘信息
MINOR_SMART_INFO | 0xa2 | S.M.A.R.T信息
MINOR_REC_START | 0xa3 | 开始录像
MINOR_REC_STOP | 0xa4 | 停止录像
MINOR_REC_OVERDUE | 0xa5 | 过期录像删除
MINOR_LINK_START | 0xa6 | 连接前端设备
MINOR_LINK_STOP | 0xa7 | 断开前端设备
MINOR_NET_DISK_INFO | 0xa8 | 网络硬盘信息
lpStartTime
[in] 文件的开始时间
lpStopTime
[in] 文件结束时间

Return Values

-1表示失败，其他值作为NET_DVR_FindNextLog等函数的参数。获取错误码调用NET_DVR_GetLastError

Remarks

该接口用于搜索普通日志信息支持2000条。

See Also

NET_DVR_FindNextLog

NET_DVR_FindLogClose

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见

NET_DVR_FindDVRLog_V30


NET_DVR_FindFile

根据文件类型、时间查找设备录像文件。

LONG NET_DVR_FindFile(
  LONG               lUserID,
  LONG               lChannel,
  DWORD              dwFileType,
  LPNET_DVR_TIME     lpStartTime,
  LPNET_DVR_TIME     lpStopTime
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lChannel
[in] 通道号
dwFileType
[in] 要查找的文件类型：0xff-全部；0-定时录像；1-移动侦测；2-报警触发；3-报警或动测；4-报警和动测；5-命令触发；6-手动录像；7-智能录像
lpStartTime
[in] 文件的开始时间
lpStopTime
[in] 文件的结束时间

Return Values

-1表示失败，其他值作为NET_DVR_FindClose等函数的参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOENOUGHPRI | 2 | 权限不足。该注册用户没有权限执行当前对设备的操作，可以与远程用户参数配置做对比。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_CHANNEL_ERROR | 4 | 通道号错误。设备没有对应的通道号。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NODISK | 19 | 设备无硬盘。当设备无硬盘时，对设备的录像文件、硬盘配置等操作失败。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

该接口指定了要查找的录像文件的类型和查找时间范围，调用成功后，就可以调用NET_DVR_FindNextFile接口来获取文件信息。

See Also

NET_DVR_FindNextFile NET_DVR_FindClose

Reference Interface

扩展接口可见
NET_DVR_FindFile_V30


NET_DVR_FindLogClose

释放查找日志的资源。

BOOL NET_DVR_FindLogClose(
  LONG   lLogHandle
);

Parameters

lLogHandle
[in] 日志查找句柄，NET_DVR_FindDVRLog的返回值

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_FindDVRLog

Reference Interface

扩展接口可见

NET_DVR_FindLogClose_V30


NET_DVR_FindNextFile

逐个获取查找到的文件信息。

LONG NET_DVR_FindNextFile(
  LONG                   lFindHandle,
  LPNET_DVR_FIND_DATA    lpFindData
);

Parameters

lFindHandle
[in] 文件查找句柄，NET_DVR_FindFile的返回值
lpFindData
[out] 保存文件信息的指针

Return Values

-1表示失败，其他值表示当前的获取状态等信息，详见下表。获取错误码调用NET_DVR_GetLastError

宏定义 | 宏定义值 | 含义
NET_DVR_FILE_SUCCESS | 1000 | 获取文件信息成功
NET_DVR_FILE_NOFIND | 1001 | 未查找到文件
NET_DVR_ISFINDING | 1002 | 正在查找请等待
NET_DVR_NOMOREFILE | 1003 | 没有更多的文件，查找结束
NET_DVR_FILE_EXCEPTION | 1004 | 查找文件时异常

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

Remarks

在调用该接口获取查找文件之前，必须先调用NET_DVR_FindFile得到当前的查找句柄。此接口用于获取一条已查找到的文件信息，若要获取全部的已查找到的文件信息，需要循环调用此接口。

See Also

NET_DVR_FindFile

Reference Interface

扩展接口可见
NET_DVR_FindNextFile_V30


NET_DVR_FindNextLog

逐条获取查找到的日志信息。

LONG NET_DVR_FindNextLog(
  LONG             lLogHandle,
  LPNET_DVR_LOG    lpLogData
);

Parameters

lLogHandle
[in] 日志查找句柄，NET_DVR_FindDVRLog的返回值
lpLogData
[out] 保存日志信息的指针

Return Values

-1表示失败，其他值表示当前的获取状态等信息，详见下表。获取错误码调用NET_DVR_GetLastError

宏定义 | 宏定义值 | 含义
NET_DVR_FILE_SUCCESS | 1000 | 获取日志信息成功
NET_DVR_FILE_NOFIND | 1001 | 未查找到日志
NET_DVR_ISFINDING | 1002 | 正在查找请等待
NET_DVR_NOMOREFILE | 1003 | 没有更多的日志，查找结束
NET_DVR_FILE_EXCEPTION | 1004 | 查找日志时异常

Remarks

在调用该接口获取查找日志之前，必须先调用NET_DVR_FindDVRLog得到当前的查找句柄。

See Also

NET_DVR_FindDVRLog

Reference Interface

扩展接口可见

NET_DVR_FindNextLog_V30


NET_DVR_GetConfigFile_EX

导出配置文件。

BOOL NET_DVR_GetConfigFile_EX(
  LONG    lUserID,
  char    *sOutBuffer,
  DWORD   dwOutSize
);

Parameters

lUserID
[in] 用户ID号，NET_DVR_Login或NET_DVR_Login_V30的返回值
sOutBuffer
[out] 存放配置参数的缓冲区
dwOutSize
[in] 缓冲区大小

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见

NET_DVR_GetConfigFile_V30


NET_DVR_GetDVRConfig

获取设备的配置信息。

BOOL NET_DVR_GetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpOutBuffer,
  DWORD    dwOutBufferSize,
  LPDWORD  lpBytesReturned
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpOutBuffer
[out] 接收数据的缓冲指针
dwOutBufferSize
[in] 接收数据的缓冲长度(以字节为单位)，不能为0
lpBytesReturned
[out] 实际收到的数据长度指针，不能为NULL

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpOutBuffer对应结构体 | 宏定义值
NET_DVR_GET_DEVICECFG | 获取设备参数 | 无效 | NET_DVR_DEVICECFG | 100
NET_DVR_GET_TIMECFG | 获取时间参数 | 无效 | NET_DVR_TIME | 118
NET_DVR_GET_NETCFG | 获取网络参数 | 无效 | NET_DVR_NETCFG | 102
NET_DVR_GET_PICCFG | 获取图像参数 | 有效 | NET_DVR_PICCFG | 104
NET_DVR_GET_PICCFG_EX | 获取图像参数（扩展） | 有效 | NET_DVR_PICCFG_EX | 200
NET_DVR_GET_COMPRESSCFG | 获取压缩参数 | 有效 | NET_DVR_COMPRESSIONCFG | 106
NET_DVR_GET_EVENTCOMPCFG | 获取事件触发录像参数 | 有效 | NET_DVR_COMPRESSIONCFG | 132
NET_DVR_GET_COMPRESSCFG_EX | 获取压缩参数（扩展） | 有效 | NET_DVR_COMPRESSIONCFG_EX | 204
NET_DVR_GET_RECORDCFG | 获取录像参数 | 有效 | NET_DVR_RECORD | 108
NET_DVR_GET_DECODERCFG | 获取（云台）解码器参数 | 有效 | NET_DVR_DECODERCFG | 110
NET_DVR_GET_RS232CFG | 获取232串口参数 | 无效 | NET_DVR_RS232CFG | 112
NET_DVR_GET_ALARMINCFG | 获取报警输入参数 | 有效 | NET_DVR_ALARMINCFG | 114
NET_DVR_GET_ALARMOUTCFG | 获取报警输出参数 | 有效 | NET_DVR_ALARMOUTCFG | 116
NET_DVR_GET_PREVIEWCFG | 获取本地预览参数 | 无效 | NET_DVR_PREVIEWCFG | 120
NET_DVR_GET_PREVIEWCFG_AUX | 获取辅助预览参数 | 无效 | NET_DVR_PREVIEWCFG | 142
NET_DVR_GET_VIDEOOUTCFG | 获取视频输出参数 | 无效 | NET_DVR_VIDEOOUT | 122
NET_DVR_GET_USERCFG | 获取用户参数 | 无效 | NET_DVR_USER | 124
NET_DVR_GET_USERCFG_EX | 获取用户参数 | 无效 | NET_DVR_USER_EX | 202
NET_DVR_GET_EXCEPTIONCFG | 获取异常参数 | 无效 | NET_DVR_EXCEPTION | 126
NET_DVR_GET_ZONEANDDST | 获取时区和夏时制参数 | 无效 | NET_DVR_ZONEANDDST | 128
NET_DVR_GET_SHOWSTRING | 获取叠加字符参数 | 有效 | NET_DVR_SHOWSTRING | 130
NET_DVR_GET_SHOWSTRING_EX | 获取叠加字符参数 | 有效 | NET_DVR_SHOWSTRING_EX | 238
NET_DVR_GET_AUXOUTCFG | 获取报警触发辅助输出参数 | 无效 | NET_DVR_AUXOUTCFG | 140
NET_DVR_GET_NETAPPCFG | 获取网络应用参数(NTP/DDNS) | 无效 | NET_DVR_NETAPPCFG | 222
NET_DVR_GET_NTPCFG | 获取网络应用参数(NTP) | 无效 | NET_DVR_NTPPARA | 224
NET_DVR_GET_DDNSCFG | 获取网络应用参数(DDNS) | 无效 | NET_DVR_DDNSPARA | 226
NET_DVR_GET_DDNSCFG_EX | 获取网络应用参数(DDNS) | 无效 | NET_DVR_DDNSPARA_EX | 274
NET_DVR_GET_EMAILPARACFG | 获取网络应用参数(EMAIL) | 无效 | NET_DVR_EMAILCFG | 250
NET_DVR_GET_NFSCFG | 获取NFS（网络文件系统）参数 | 无效 | NET_DVR_NFSCFG | 230
NET_DVR_GET_IPPARACFG | 获取IP接入配置参数 | 无效 | NET_DVR_IPPARACFG | 1048
NET_DVR_GET_IPALARMINCFG | 获取IP报警输入接入配置参数 | 无效 | NET_DVR_IPALARMINCFG | 1050
NET_DVR_GET_IPALARMOUTCFG | 获取IP报警输出接入配置参数 | 无效 | NET_DVR_IPALARMOUTCFG | 1052
NET_DVR_GET_HDCFG | 获取硬盘管理参数 | 无效 | NET_DVR_HDCFG | 1054
NET_DVR_GET_HDGROUP_CFG | 获取盘组管理参数 | 无效 | NET_DVR_HDGROUP_CFG | 1056
NET_DVR_GET_PTZPOS | 获取IP快球PTZ参数 | 有效 | NET_DVR_PTZPOS | 293
NET_DVR_GET_PTZSCOPE | 获取IP快球PTZ范围参数 | 有效 | NET_DVR_PTZSCOPE | 294
NET_DVR_GET_CRUISE | 获取巡航参数 | 有效 | NET_DVR_CRUISE_PARA | 1020
NET_DVR_GET_COMPRESSCFG_AUD | 获取语音对讲音频参数 | 无效 | NET_DVR_COMPRESSION_AUDIO | 1058
NET_DVR_GET_AP_INFO_LIST | 获取无线网络资源参数 | 无效 | NET_DVR_AP_INFO_LIST | 305
NET_DVR_GET_WIFI_CFG | 获取IP监控设备无线参数 | 无效 | NET_DVR_WIFI_CFG | 307
NET_DVR_GET_WIFI_WORKMODE | 获取IP监控设备网口参数 | 无效 | NET_DVR_WIFI_WORKMODE | 309
NET_DVR_GET_NET_DISKCFG | 获取网络硬盘接入参数 | 无效 | NET_DVR_NET_DISKCFG | 1038
NET_DVR_GET_CCDPARAMCFG | 获取前端参数 | 无效 | NET_DVR_CAMERAPARAMCFG | 1067
NET_DVR_GET_ZEROCHANCFG | 获取零通道压缩参数 | 有效 | NET_DVR_ZEROCHANCFG | 1102
NET_DVR_GET_ZERO_ZOOM | 获取零通道缩放参数 | 有效 | NET_DVR_ZERO_ZOOMCFG | 1107

上述配置结构是V3.0版本以下的SDK支持的接口，建议使用V3.0版本以上SDK支持的扩展结构，参见NET_DVR_GetDVRConfig、NET_DVR_SetDVRConfig

See Also

NET_DVR_SetDVRConfig NET_DVR_GetLastError


NET_DVR_GetDVRIPByResolveSvr

通过解析服务器，获取设备的动态IP地址。

BOOL NET_DVR_GetDVRIPByResolveSvr(
  char     *sServerIP,
  WORD     wServerPort,
  BYTE     *sDVRName,
  WORD     wDVRNameLen,
  BYTE     *sDVRSerialNumber,
  WORD     wDVRSerialLen,
  char     *sGetIP
);

Parameters

sServerIP
[in] 解析服务器的IP地址
wServerPort
[in] 解析服务器的端口号，我们提供的解析服务器端口号为7071
sDVRName
[in] 设备名称
wDVRNameLen
[in] 设备名称的长度
sDVRSerialNumber
[in] 设备的序列号
wDVRSerialLen
[in] 设备序列号的长度
sGetIP
[out] 获取到的设备IP地址指针

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

该接口中的设备名称和设备序列号不能同时为空。
IPServer是我公司提供的一款域名解析服务器软件。

Reference Interface

扩展接口可见 NET_DVR_GetDVRIPByResolveSvr_EX


NET_DVR_GetDVRWorkState

获取设备的工作状态。

BOOL NET_DVR_GetDVRWorkState(
  LONG                   lUserID,
  LPNET_DVR_WORKSTATE    lpWorkState
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
lpWorkState
[out] 获取的设备工作状态结构体参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见

NET_DVR_GetDVRWorkState_V30


NET_DVR_GetFileByTime_V40

按时间下载录像文件。

LONG NET_DVR_GetFileByTime_V40(
  LONG                  lUserID,
  char                  *sSavedFileName
  LPNET_DVR_PLAYCOND    pDownloadCond
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_V30的返回值
sSavedFileName
[in] 下载后保存到PC机的文件路径，需为绝对路径
pDownloadCond);
[in] 下载条件

Return Values

-1表示失败，其他值作为NET_DVR_StopGetFile等函数的参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_PASSWORD_ERROR | 1 | 用户名密码错误。注册时输入的用户名或者密码错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_OVER_MAXLINK | 5 | 连接到设备的用户个数超过最大。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_COMMANDTIMEOUT | 14 | 设备命令执行超时。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_CREATEFILE_ERROR | 34 | 创建文件出错。本地录像、保存图片、获取配置文件和远程下载录像时创建文件失败。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

该接口指定了当前要下载的录像文件，调用成功后，还需要调用NET_DVR_PlayBackControl_V40接口的开始播放控制命令（NET_DVR_PLAYSTART）才能实现下载。

See Also

NET_DVR_PlayBackControl_V40 NET_DVR_StopGetFile
NET_DVR_Login NET_DVR_Login_V30


NET_DVR_GetPictureModel

获取单张图片模型。

BOOL NET_DVR_GetPictureModel(
  LONG                          lUserID,
  LPNET_VCA_REGISTER_PIC        lpInBuf,
  LPNET_VCA_PICMODEL_RESULT     lpOutBuf
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpInBuf
[in] 图片信息参数
lpOutBuf
[out] 单张图片的模型结果

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError。

Remark

需要建模，返回单张图片的模型结果。

See Also

NET_DVR_Login_V30


NET_DVR_GetPTZProtocol_Ex

按通道获取设备支持的云台协议。

BOOL NET_DVR_GetPTZProtocol_Ex(
  LONG               lUserID,
  LONG               lChannel,
  NET_DVR_PTZCFG     *pPtzcfg
);

Parameters

lUserID
[in] 登录编码子系统的返回值
lChannel
[in] 子系统编码通道号
pPtzcfg
[out] 云台协议参数

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError


NET_DVR_InquestDeleteFile

删除审讯文件。

BOOL NET_DVR_InquestDeleteFile(
  LONG                      lUserID,
  LPNET_DVR_INQUEST_FILES   lpDeleteFile
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpDeleteFile
[in] 要删除的审讯文件信息指针

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

刻录文件的信息可以通过接口NET_DVR_InquestFindFile和NET_DVR_InquestFindNextFile获取。

See Also

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见
NET_DVR_InquestDeleteFile_V30


NET_DVR_InquestFindFile

搜索审讯文件。

LONG NET_DVR_InquestFindFile(
  LONG   lUserID
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值

Return Values

-1表示失败，其他值作为NET_DVR_InquestFindNextFile等函数的参数。获取错误码调用NET_DVR_GetLastError

Remarks

该接口调用成功后，可以调用NET_DVR_FindNextFile接口来获取文件信息。

See Also

NET_DVR_InquestFindNextFile NET_DVR_InquestFindClose
NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见
NET_DVR_InquestFindFile_V30


NET_DVR_InquestGetCDWState

获取刻录状态。

BOOL NET_DVR_InquestGetCDWState(
  LONG                            lUserID,
  LPNET_DVR_INQUEST_CDRW_STATUS   pStatus
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pStatus
[out] 刻录状态信息

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见
NET_DVR_InquestGetCDWState_V30


NET_DVR_InquestGetPIPStatus

获取画中画状态。

BOOL NET_DVR_InquestGetPIPStatus(
  LONG                           lUserID,
  LPNET_DVR_INQUEST_PIP_STATUS   pStatus
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pStatus
[out] 画中画状态结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestSetPIPStatus
NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见
NET_DVR_InquestGetPIPStatus_V30


NET_DVR_InquestSetPIPStatus

设置画中画状态。

BOOL NET_DVR_InquestSetPIPStatus(
  LONG                           lUserID,
  LPNET_DVR_INQUEST_PIP_STATUS   pStatus
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
pStatus
[in] 画中画状态结构体

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestGetPIPStatus
NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见
NET_DVR_InquestSetPIPStatus_V30


NET_DVR_InquestStartCDW

审讯中开始刻录。

BOOL NET_DVR_InquestStartCDW(
  LONG   lUserID,
  BOOL   bPause
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
bPause
[in] 是否暂停(暂未使用, 保留)

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestStopCDW
NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见
NET_DVR_InquestStartCDW_V30


NET_DVR_InquestStopCDW

审讯中停止刻录。

BOOL NET_DVR_InquestStopCDW(
  LONG   lUserID,
  BOOL   bCancelWrite
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
bCancelWrite
[in] TRUE-不封盘；FALSE-封盘

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestStartCDW
NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见
NET_DVR_InquestStopCDW_V30


NET_DVR_InquestUploadFile

向设备上传审讯文件。

LONG NET_DVR_InquestUploadFile(
  LONG   lUserID,
  char   *sFileName
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
sFileName
[in] 要上传的文件名（全路径格式），最多128字节，文件名最多32字节

Return Values

-1表示失败，其他值作为NET_DVR_InquestUploadClose等函数的参数。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_InquestUploadClose
NET_DVR_InquestGetUploadState
NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见
NET_DVR_InquestUploadFile_V30


NET_DVR_Login

用户注册设备。

LONG NET_DVR_Login(
  char                   *sDVRIP,
  WORD                   wDVRPort,
  char                   *sUserName,
  char                   *sPassword,
  LPNET_DVR_DEVICEINFO   lpDeviceInfo
);

Parameters

sDVRIP
[in] 设备IP地址
wDVRPort
[in] 设备端口号
sUserName
[in] 登录的用户名
sPassword
[in] 用户密码
lpDeviceInfo
[out] 设备信息

Return Values

-1表示失败，其他值表示返回的用户ID值。该用户ID具有唯一性，后续对设备的操作都需要通过此ID实现。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_PASSWORD_ERROR | 1 | 用户名密码错误。注册时输入的用户名或者密码错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_COMMANDTIMEOUT | 14 | 设备命令执行超时。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_MAX_USERNUM | 52 | 登录设备的用户数达到最大。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

如DS-7116、DS-81xx、DS-90xx、DS-91xx等系列设备允许有32个注册用户名，且同时最多允许128个用户注册；如DS-80xx等设备允许有16个注册用户名，且同时最多允许128个用户注册。

客户端发生异常离线时，设备端保留用户ID的有效时间是5分钟。

See Also

NET_DVR_Logout

Reference Interface

扩展接口可见
NET_DVR_Login_V30


NET_DVR_Logout_V30

用户注销。

BOOL NET_DVR_Logout_V30(
  LONG    lUserID
);

Parameters

lUserID
[in] 用户ID号，NET_DVR_Login或NET_DVR_Login_V30的返回值

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_COMMANDTIMEOUT | 14 | 设备命令执行超时。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

该接口强制停止该用户的所有操作和释放所有的资源，确保该ID对应的线程都安全退出，资源得到释放。建议使用NET_DVR_Logout接口实现注销功能。

See Also

NET_DVR_Login_V30

Reference Interface

该接口扩展源于
NET_DVR_Logout


NET_DVR_MatrixGetCodeSplitter

获取码分器配置参数。

BOOL NET_DVR_MatrixGetCodeSplitter(
  LONG                           lUserID,
  DWORD                          dwCodeChan,
  LPNET_DVR_CODESPLITTERINFO     lpInter
);

Parameters

lUserID
[in] 登录编码子系统的返回值
dwCodeChan
[in] 子系统编码通道号
lpInter
[out] 码分器配置参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_MatrixSetCodeSplitter NET_DVR_Login NET_DVR_Login_V30


NET_DVR_MatrixGetSubDecSystemJoinInfo

获取视频综合平台解码子系统的关联信息。

BOOL NET_DVR_MatrixGetSubDecSystemJoinInfo(
  LONG                                 lUserID,
  LPNET_DVR_ALLDECSUBSYSTEMJOININFO    lpInter
);

Parameters

lUserID
[in] 登录中央主控板的返回值
lpInter
[out] 解码子系统关联信息参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_Login NET_DVR_Login_V30


NET_DVR_MatrixSetCodeSplitter

设置码分器参数。

BOOL NET_DVR_MatrixSetCodeSplitter(
  LONG                           lUserID,
  DWORD                          dwDecChanNum,
  LPNET_DVR_CODESPLITTERINFO     lpInter
);

Parameters

lUserID
[in] 登录编码子系统的返回值
dwCodeChan
[in] 子系统编码通道号
lpInter
[in] 码分器配置参数

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

See Also

NET_DVR_MatrixGetCodeSplitter NET_DVR_Login NET_DVR_Login_V30


NET_DVR_PlayBackControl

控制录像回放的状态。

BOOL NET_DVR_PlayBackControl(
  LONG     lPlayHandle,
  DWORD    dwControlCode,
  DWORD    dwInValue,
  DWORD    *lpOutValue
);

Parameters

lPlayHandle
[in] 播放句柄，NET_DVR_PlayBackByName或NET_DVR_PlayBackByTime的返回值
推模式：回放句柄lStreamHandle，由NET_DVR_SetPlaybackResponseCallBack注册的回调函数返回。
dwControlCode
[in] 控制录像回放状态命令，见下表
宏定义 | 宏定义值 | 含义
NET_DVR_PLAYSTART | 1 | 开始播放
NET_DVR_PLAYPAUSE | 3 | 暂停播放
NET_DVR_PLAYRESTART | 4 | 恢复播放
NET_DVR_PLAYFAST | 5 | 快放
NET_DVR_PLAYSLOW | 6 | 慢放
NET_DVR_PLAYNORMAL | 7 | 正常速度播放（在暂停后调用将恢复暂停前的速度播放）
NET_DVR_PLAYFRAME | 8 | 单帧放（恢复正常回放使用NET_DVR_PLAYNORMAL命令）
NET_DVR_PLAYSTARTAUDIO | 9 | 打开声音
NET_DVR_PLAYSTOPAUDIO | 10 | 关闭声音
NET_DVR_PLAYAUDIOVOLUME | 11 | 调节音量，取值范围[0,0xffff]
NET_DVR_PLAYSETPOS | 12 | 改变文件回放的进度
NET_DVR_PLAYGETPOS | 13 | 获取文件回放的进度
NET_DVR_PLAYGETTIME | 14 | 获取当前已经播放的时间(按文件回放的时候有效)
NET_DVR_PLAYGETFRAME | 15 | 获取当前已经播放的帧数(按文件回放的时候有效)
NET_DVR_GETTOTALFRAMES | 16 | 获取当前播放文件总的帧数(按文件回放的时候有效)
NET_DVR_GETTOTALTIME | 17 | 获取当前播放文件总的时间(按文件回放的时候有效)
NET_DVR_THROWBFRAME | 20 | 丢B帧
dwInValue
[in] 设置的参数，如设置文件回放的进度(命令值NET_DVR_PLAYSETPOS)时，此参数表示进度值；如开始播放(命令值NET_DVR_PLAYSTART)时，此参数表示断点续传的文件位置（Byte）
lpOutValue
[out] 获取的参数，如获取当前播放文件总的时间（命令值NET_DVR_GETTOTALTIME ），此参数就是得到的总时间

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_PASSWORD_ERROR | 1 | 用户名密码错误。注册时输入的用户名或者密码错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_OVER_MAXLINK | 5 | 连接到设备的用户个数超过最大。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_COMMANDTIMEOUT | 14 | 设备命令执行超时。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_NOSUPPORT | 23 | 设备不支持。
NET_DVR_NOSPECFILE | 33 | 回放时设备没有指定的文件。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_LOADPLAYERSDKFAILED | 64 | 载入当前目录下Player Sdk出错。
NET_DVR_LOADPLAYERSDKPROC_ERROR | 65 | 找不到Player Sdk中某个函数入口。
NET_DVR_LOADDSSDKFAILED | 66 | 载入当前目录下DSsdk出错。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

该接口中的第三个参数是否需要输入数值与控制命令有关，详见下表所示。特别指出，当控制命令是开始播放（即NET_DVR_PLAYSTART）时，第三个参数的值表示播放当前文件的偏移量，若该值为0表示从文件的起始位置播放，若该值不为0则表示断点续传的文件位置（Byte）。
该接口中的第四个参数表示当前控制命令操作所获取到的相应的参数，控制命令中的NET_DVR_PLAYGETPOS、NET_DVR_PLAYGETTIME、NET_DVR_PLAYGETFRAME、NET_DVR_GETTOTALFRAMES和NET_DVR_GETTOTALTIME都能通过该参数得到对应的值，详见下表所示。其中当命令值为NET_DVR_PLAYGETPOS时，获取文件回放或者下载进度时，0-100表示正常的进度值，大于100的值表示回放或者下载异常。
状态命令宏定义 | 状态命令说明 | dwInValue | lpOutValue
NET_DVR_PLAYSTART | 开始播放 | 一个4字节整型的偏移量 | 无
NET_DVR_PLAYSETPOS | 改变回放的进度 | 一个4字节整型的进度值（0-100） | 无
NET_DVR_PLAYGETPOS | 获取回放的进度 | 无 | 一个4字节整型的进度值（0-100）
NET_DVR_PLAYGETTIME | 获取当前已播放的时间（按文件回放有效） | 无 | 一个4字节整型值
NET_DVR_PLAYGETFRAME | 获取当前已播放的帧数（按文件回放有效） | 无 | 一个4字节整型值
NET_DVR_GETTOTALFRAMES | 获取当前播放文件总的帧数（按文件回放有效） | 无 | 一个4字节整型值
NET_DVR_GETTOTALTIME | 获取当前播放文件总的时间（按文件回放有效） | 无 | 一个4字节整型值

See Also

NET_DVR_PlayBackByName NET_DVR_PlayBackByTime

NET_DVR_SetPlaybackResponseCallBack

Reference Interface

扩展接口可见

NET_DVR_PlayBackControl_V40


NET_DVR_PTZControl_EX

云台控制操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZControl好，RTSP预览时不支持此功能）。

BOOL NET_DVR_PTZControl_EX(
  LONG     lRealHandle,
  DWORD    dwPTZCommand,
  DWORD    dwStop
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
dwPTZCommand
[in] 云台控制命令，见下表：
宏定义 | 宏定义值 | 含义
LIGHT_PWRON | 2 | 接通灯光电源
WIPER_PWRON | 3 | 接通雨刷开关
FAN_PWRON | 4 | 接通风扇开关
HEATER_PWRON | 5 | 接通加热器开关
AUX_PWRON1 | 6 | 接通辅助设备开关
AUX_PWRON2 | 7 | 接通辅助设备开关
ZOOM_IN | 11 | 焦距变大(倍率变大)
ZOOM_OUT | 12 | 焦距变小(倍率变小)
FOCUS_NEAR | 13 | 焦点前调
FOCUS_FAR | 14 | 焦点后调
IRIS_OPEN | 15 | 光圈扩大
IRIS_CLOSE | 16 | 光圈缩小
TILT_UP | 21 | 云台上仰
TILT_DOWN | 22 | 云台下俯
PAN_LEFT | 23 | 云台左转
PAN_RIGHT | 24 | 云台右转
UP_LEFT | 25 | 云台上仰和左转
UP_RIGHT | 26 | 云台上仰和右转
DOWN_LEFT | 27 | 云台下俯和左转
DOWN_RIGHT | 28 | 云台下俯和右转
PAN_AUTO | 29 | 云台左右自动扫描
dwStop
[in] 云台停止动作或开始动作：0－开始；1－停止

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

对云台实施的每一个动作都需要调用该接口两次，分别是开始和停止控制，由接口中的最后一个参数（dwStop）决定。在调用此接口之前需要先开启预览。与设备之间的云台各项操作的命令都对应于设备与云台之间的控制码，设备会根据目前设置的解码器种类和解码器地址向云台发送控制码。如果目前设备上设置的解码器与云台设备的不匹配，需要重新配置设备的解码器。如果云台设备所需的解码器设备不支持，则无法用该接口控制。

云台默认以最大速度动作。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_PTZCruise_EX

云台巡航操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZCruise好，RTSP预览时不支持此功能）。

BOOL NET_DVR_PTZCruise_EX(
  LONG     lRealHandle,
  DWORD    dwPTZCruiseCmd,
  BYTE     byCruiseRoute,
  BYTE     byCruisePoint,
  WORD     wInput
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
dwPTZCruiseCmd
[in] 操作云台巡航命令，见下表：
宏定义 | 宏定义值 | 含义
FILL_PRE_SEQ | 30 | 将预置点加入巡航序列
SET_SEQ_DWELL | 31 | 设置巡航点停顿时间
SET_SEQ_SPEED | 32 | 设置巡航速度
CLE_PRE_SEQ | 33 | 将预置点从巡航序列中删除
RUN_SEQ | 37 | 开始巡航
STOP_SEQ | 38 | 停止巡航
byCruiseRoute
[in] 巡航路径，最多支持32条路径（序号从1开始）
byCruisePoint
[in] 巡航点，最多支持32个点（序号从1开始）
wInput
[in] 不同巡航命令时的值不同，预置点(最大255)、时间(最大255)、速度(最大40)

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

与设备之间的云台各项操作的命令都对应于设备与云台之间的控制码，设备会根据目前设置的解码器种类和解码器地址向云台发送控制码。如果目前设备上设置的解码器与云台设备的不匹配，需要重新配置设备的解码器。如果云台设备所需的解码器设备不支持，则无法用该接口控制。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_PTZPreset_EX

云台预置点操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZPreset好，RTSP预览时不支持此功能）。

BOOL NET_DVR_PTZPreset_EX(
  LONG     lRealHandle,
  DWORD    dwPTZPresetCmd,
  DWORD    dwPresetIndex
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
dwPTZPresetCmd
[in] 操作云台预置点命令，见下表：
宏定义 | 宏定义值 | 含义
SET_PRESET | 8 | 设置预置点
CLE_PRESET | 9 | 清除预置点
GOTO_PRESET | 39 | 转到预置点
dwPresetIndex
[in] 预置点的序号（从1开始），最多支持255个预置点

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

与设备之间的云台各项操作的命令都对应于设备与云台之间的控制码，设备会根据目前设置的解码器种类和解码器地址向云台发送控制码。如果目前设备上设置的解码器与云台设备的不匹配，需要重新配置设备的解码器。如果云台设备所需的解码器设备不支持，则无法用该接口控制。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_PTZTrack_EX

云台轨迹操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_PTZTrack好，RTSP预览时不支持此功能）。

BOOL NET_DVR_PTZTrack_EX(
  LONG     lRealHandle,
  DWORD    dwPTZTrackCmd
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
dwPTZTrackCmd
[in] 操作云台轨迹命令，见下表：
宏定义 | 宏定义值 | 含义
STA_MEM_CRUISE | 34 | 开始记录轨迹
STO_MEM_CRUISE | 35 | 停止记录轨迹
RUN_CRUISE | 36 | 开始轨迹

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

与设备之间的云台各项操作的命令都对应于设备与云台之间的控制码，设备会根据目前设置的解码器种类和解码器地址向云台发送控制码。如果目前设备上设置的解码器与云台设备的不匹配，需要重新配置设备的解码器。如果云台设备所需的解码器设备不支持，则无法用该接口控制。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


NET_DVR_RealPlay

实时预览。

LONG NET_DVR_RealPlay(
  LONG                   lUserID,
  LPNET_DVR_CLIENTINFO   lpClientInfo
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
lpClientInfo
[in] 预览参数

Return Values

-1表示失败，其他值作为NET_DVR_StopRealPlay等函数的句柄参数。获取错误码调用NET_DVR_GetLastError

Remarks

在调用此接口成功后，若需要捕获实时码流数据，可以调用接口NET_DVR_SetRealDataCallBack或NET_DVR_SetStandardDataCallBack注册捕获码流数据的回调函数，并在回调函数中自行处理回调上来的码流数据。

客户端异常离线时，设备端对取流连接的保持时间为10秒。

See Also

NET_DVR_StopRealPlay NET_DVR_GetRealPlayerIndex NET_DVR_ClientSetVideoEffect
NET_DVR_ClientGetVideoEffect NET_DVR_RigisterDrawFun NET_DVR_SetPlayerBufNumber
NET_DVR_ThrowBFrame NET_DVR_OpenSound NET_DVR_OpenSoundShare
NET_DVR_CloseSoundShare NET_DVR_Volume NET_DVR_SetRealDataCallBack
NET_DVR_SetStandardDataCallBack NET_DVR_SaveRealData NET_DVR_StopSaveRealData

Reference Interface

扩展接口可见
NET_DVR_RealPlay_V30


NET_DVR_SaveRealData_V30

按指定的目标封装格式捕获数据并存放到指定的文件中。

BOOL NET_DVR_SaveRealData_V30(
  LONG    lRealHandle,
  DWORD   dwTransType,
  char    *sFileName
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
dwTransType
[in] 存储的码流封装格式，见STREAM_TYPE定义
enum STREAM_TYPE{
  STREAM_PRIVT  = 0x0,
  STREAM_PS     = 0x1,
  STREAM_3GPP   = 0x2
}
STREAM_PRIVT
私有文件层，可用于传输和存储
STREAM_PS
PS文件层，主要用于存储，也可用于传输
STREAM_3GPP
3GPP文件层，用于存储
sFileName
[in] 文件路径指针

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

该接口目前仅对支持RTSP协议取流的设备有效

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30 NET_DVR_StopSaveRealData


NET_DVR_SetDVRConfig

设置设备的配置信息。

BOOL NET_DVR_SetDVRConfig(
  LONG     lUserID,
  DWORD    dwCommand,
  LONG     lChannel,
  LPVOID   lpInBuffer,
  DWORD    dwInBufferSize
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
dwCommand
[in] 设备配置命令，参见配置命令
lChannel
[in] 通道号，如果命令不需要通道号，该参数无效，置为0xFFFFFFFF即可
lpInBuffer
[in] 输入数据的缓冲指针
dwInBufferSize
[in] 输入数据的缓冲长度(以字节为单位)

Return Values

TRUE表示成功，FALSE表示失败，获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。
NET_DVR_PROGRAM_EXCEPTION | 76 | 程序异常。

Remarks

不同的获取功能对应不同的结构体和命令号，如下表所示：

dwCommand宏定义 | dwCommand含义 | 通道号 | lpInBuffer对应结构体 | 宏定义值
NET_DVR_SET_DEVICECFG | 设置设备参数 | 无效 | NET_DVR_DEVICECFG | 101
NET_DVR_SET_TIMECFG | 设置时间参数 | 无效 | NET_DVR_TIME | 119
NET_DVR_SET_NETCFG | 设置网络参数 | 无效 | NET_DVR_NETCFG | 103
NET_DVR_SET_PICCFG | 设置图像参数 | 有效 | NET_DVR_PICCFG | 105
NET_DVR_SET_PICCFG_EX | 设置图像参数（扩展） | 有效 | NET_DVR_PICCFG_EX | 201
NET_DVR_SET_COMPRESSCFG | 设置压缩参数 | 有效 | NET_DVR_COMPRESSIONCFG | 107
NET_DVR_SET_EVENTCOMPCFG | 设置事件触发录像参数 | 有效 | NET_DVR_COMPRESSIONCFG | 133
NET_DVR_SET_COMPRESSCFG_EX | 设置压缩参数（扩展） | 有效 | NET_DVR_COMPRESSIONCFG_EX | 205
NET_DVR_SET_RECORDCFG | 设置录像参数 | 有效 | NET_DVR_RECORD | 109
NET_DVR_SET_DECODERCFG | 设置（云台）解码器参数 | 有效 | NET_DVR_DECODERCFG | 111
NET_DVR_SET_RS232CFG | 设置232串口参数 | 无效 | NET_DVR_RS232CFG | 113
NET_DVR_SET_ALARMINCFG | 设置报警输入参数 | 有效 | NET_DVR_ALARMINCFG | 115
NET_DVR_SET_ALARMOUTCFG | 设置报警输出参数 | 有效 | NET_DVR_ALARMOUTCFG | 117
NET_DVR_SET_PREVIEWCFG | 设置本地预览参数 | 无效 | NET_DVR_PREVIEWCFG | 121
NET_DVR_SET_PREVIEWCFG_AUX | 设置辅助预览参数 | 无效 | NET_DVR_PREVIEWCFG | 143
NET_DVR_SET_VIDEOOUTCFG | 设置视频输出参数 | 无效 | NET_DVR_VIDEOOUT | 123
NET_DVR_SET_USERCFG | 设置用户参数 | 无效 | NET_DVR_USER | 125
NET_DVR_SET_USERCFG_EX | 设置用户参数 | 无效 | NET_DVR_USER_EX | 203
NET_DVR_SET_EXCEPTIONCFG | 设置异常参数 | 无效 | NET_DVR_EXCEPTION | 127
NET_DVR_SET_ZONEANDDST | 设置时区和夏时制参数 | 无效 | NET_DVR_ZONEANDDST | 129
NET_DVR_SET_SHOWSTRING | 设置叠加字符参数 | 有效 | NET_DVR_SHOWSTRING | 131
NET_DVR_SET_SHOWSTRING_EX | 设置叠加字符参数 | 有效 | NET_DVR_SHOWSTRING_EX | 239
NET_DVR_SET_AUXOUTCFG | 设置报警触发辅助输出参数 | 无效 | NET_DVR_AUXOUTCFG | 141
NET_DVR_SET_NETAPPCFG | 设置网络应用参数(NTP/DDNS) | 无效 | NET_DVR_NETAPPCFG | 223
NET_DVR_SET_NTPCFG | 设置网络应用参数(NTP) | 无效 | NET_DVR_NTPPARA | 225
NET_DVR_SET_DDNSCFG | 设置网络应用参数(DDNS) | 无效 | NET_DVR_DDNSPARA | 227
NET_DVR_SET_DDNSCFG_EX | 设置网络应用参数(DDNS) | 无效 | NET_DVR_DDNSPARA_EX | 275
NET_DVR_SET_EMAILPARACFG | 设置网络应用参数(EMAIL) | 无效 | NET_DVR_EMAILCFG | 251
NET_DVR_SET_NFSCFG | 设置NFS（网络文件系统）参数 | 无效 | NET_DVR_NFSCFG | 231
NET_DVR_SET_IPPARACFG | 设置IP接入配置参数 | 无效 | NET_DVR_IPPARACFG | 1049
NET_DVR_SET_HDCFG | 设置硬盘管理参数 | 无效 | NET_DVR_HDCFG | 1055
NET_DVR_SET_HDGROUP_CFG | 设置盘组管理参数 | 无效 | NET_DVR_HDGROUP_CFG | 1057
NET_DVR_SET_PTZPOS | 设置IP快球PTZ参数 | 有效 | NET_DVR_PTZPOS | 292
NET_DVR_SET_CRUISE | 设置巡航参数 | 有效 | NET_DVR_CRUISE_PARA | 1021
NET_DVR_SET_COMPRESSCFG_AUD | 设置语音对讲音频参数 | 无效 | NET_DVR_COMPRESSION_AUDIO | 1059
NET_DVR_SET_WIFI_CFG | 设置IP监控设备无线参数 | 无效 | NET_DVR_WIFI_CFG | 306
NET_DVR_SET_WIFI_WORKMODE | 设置IP监控设备网口参数 | 无效 | NET_DVR_WIFI_WORKMODE | 308
NET_DVR_SET_NET_DISKCFG | 设置网络硬盘接入参数 | 无效 | NET_DVR_NET_DISKCFG | 1039
NET_DVR_SET_CCDPARAMCFG | 设置前端参数 | 无效 | NET_DVR_CAMERAPARAMCFG | 1068
NET_DVR_SET_ZEROCHANCFG | 设置零通道压缩参数 | 有效 | NET_DVR_ZEROCHANCFG | 1103
NET_DVR_SET_ZERO_ZOOM | 设置零通道缩放参数 | 有效 | NET_DVR_ZERO_ZOOMCFG | 1106

上述配置结构是V3.0版本以下的SDK支持的接口，建议使用V3.0版本以上SDK支持的扩展结构，参见NET_DVR_GetDVRConfig、NET_DVR_SetDVRConfig

See Also

NET_DVR_GetDVRConfig NET_DVR_GetLastError


NET_DVR_SetDVRMessageCallBack

注册回调函数，接收设备报警消息等（同时回调设备IP地址和用户数据，用以区分不同设备）。

BOOL NET_DVR_SetDVRMessageCallBack(
  fMessageCallBack    cbMessageCallBack
  DWORD               dwUser
);

Parameters

cbMessCallBack
[in] 回调函数
dwUser
[in] 用户数据

Callback Function

BOOL(CALLBACK *fMessageCallBack)(
  LONG     lCommand,
  char     *sDVRIP,
  char     *pBuf,
  DWORD    dwBufLen,
  DWORD    dwUser
);

Callback Function Parameters

lCommand
[out] 上传的消息类型，见下表
宏定义 | 宏定义值 | 含义
COMM_ALARM | 0x1100 | V3.0以下版本支持的设备的报警信息上传
COMM_ALARM_RULE | 0x1102 | 行为分析信息上传
COMM_ALARM_PDC | 0x1103 | 人流量统计报警上传
COMM_TRADEINFO | 0x1500 | ATM DVR交易信息上传
COMM_UPLOAD_PLATE_RESULT | 0x2800 | 智能高清IPC报警上传
COMM_ALARM_V30 | 0x4000 | V3.0以上版本支持的设备的报警信息上传
COMM_IPCCFG | 0x4001 | 混合型DVR在IPC接入配置改变时的报警信息上传
COMM_IPCCFG_V31 | 0x4002 | 混合型DVR在IPC接入配置改变时的报警信息上传（扩展）
sDVRIP
[out] 设备IP地址
pBuf
[out] 报警信息
dwBufLen
[out] 报警信息缓存大小
dwUser
[out] 用户数据

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

该接口中回调函数的第一个参数（lCommand）和第三个参数（pBuf）是密切关联的，其关系见下表：
消息类型（lCommand） | 上传内容 | pAlarmInfo对应的结构体
COMM_ALARM | V3.0以下版本支持的设备的报警信息 | NET_DVR_ALARMINFO
COMM_ALARM_RULE | 行为分析信息 | NET_VCA_RULE_ALARM
COMM_ALARM_PDC | 人流量统计报警上传 | NET_DVR_PDC_ALRAM_INFO
COMM_TRADEINFO | ATM DVR交易信息 | NET_DVR_TRADEINFO
COMM_UPLOAD_PLATE_RESULT | 智能高清IPC报警上传 | NET_DVR_PLATE_RESULT
COMM_ALARM_V30 | V3.0以上版本支持的设备的报警信息 | NET_DVR_ALARMINFO_V30
COMM_IPCCFG | 混合型DVR在IPC接入配置改变时的报警信息 | NET_DVR_IPALARMINFO
COMM_IPCCFG_V31 | 混合型DVR在IPC接入配置改变时的报警信息（扩展） | NET_DVR_IPALARMINFO_V31

See Also

NET_DVR_SetupAlarmChan_V30

NET_DVR_SetupAlarmChan

NET_DVR_StartListen

Reference Interface

其他设置报警回调函数的接口可见

NET_DVR_SetDVRMessageCallBack_V30

NET_DVR_SetDVRMessCallBack

NET_DVR_SetDVRMessCallBack_EX

NET_DVR_SetDVRMessCallBack_NEW


NET_DVR_SetDVRMessCallBack

注册回调函数，接收设备报警消息等（同时回调IP地址，用以区分不同设备）。

BOOL NET_DVR_SetDVRMessCallBack(
  fMessCallBack    cbMessCallBack
);

Parameters

cbMessCallBack
[in] 回调函数

Callback Function

BOOL(CALLBACK *fMessCallBack)(
  LONG     lCommand,
  char     *sDVRIP,
  char     *pBuf,
  DWORD    dwBufLen
);

Callback Function Parameters

lCommand
[out] 上传的消息类型，见下表
宏定义 | 宏定义值 | 含义
COMM_ALARM | 0x1100 | V3.0以下版本支持的设备的报警信息上传
COMM_ALARM_RULE | 0x1102 | 行为分析信息上传
COMM_ALARM_PDC | 0x1103 | 人流量统计报警上传
COMM_TRADEINFO | 0x1500 | ATM DVR交易信息上传
COMM_UPLOAD_PLATE_RESULT | 0x2800 | 智能高清IPC报警上传
COMM_ALARM_V30 | 0x4000 | V3.0以上版本支持的设备的报警信息上传
COMM_IPCCFG | 0x4001 | 混合型DVR在IPC接入配置改变时的报警信息上传
COMM_IPCCFG_V31 | 0x4002 | 混合型DVR在IPC接入配置改变时的报警信息上传（扩展）
sDVRIP
[out] 设备的IP地址
pBuf
[out] 报警信息
dwBufLen
[out] 报警信息缓存大小

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

Remarks

该接口中回调函数的第一个参数（lCommand）和第三个参数（pBuf）是密切关联的，其关系见下表：
消息类型（lCommand） | 上传内容 | pAlarmInfo对应的结构体
COMM_ALARM | V3.0以下版本支持的设备的报警信息 | NET_DVR_ALARMINFO
COMM_ALARM_RULE | 行为分析信息 | NET_VCA_RULE_ALARM
COMM_ALARM_PDC | 人流量统计报警上传 | NET_DVR_PDC_ALRAM_INFO
COMM_TRADEINFO | ATM DVR交易信息 | NET_DVR_TRADEINFO
COMM_UPLOAD_PLATE_RESULT | 智能高清IPC报警上传 | NET_DVR_PLATE_RESULT
COMM_ALARM_V30 | V3.0以上版本支持的设备的报警信息 | NET_DVR_ALARMINFO_V30
COMM_IPCCFG | 混合型DVR在IPC接入配置改变时的报警信息 | NET_DVR_IPALARMINFO
COMM_IPCCFG_V31 | 混合型DVR在IPC接入配置改变时的报警信息（扩展） | NET_DVR_IPALARMINFO_V31

See Also

NET_DVR_SetupAlarmChan_V30

NET_DVR_SetupAlarmChan

NET_DVR_StartListen

Reference Interface

其他设置报警回调函数的接口可见

NET_DVR_SetDVRMessageCallBack_V30

NET_DVR_SetDVRMessCallBack_EX

NET_DVR_SetDVRMessCallBack_NEW

NET_DVR_SetDVRMessageCallBack


NET_DVR_SetDVRMessCallBack_EX

注册回调函数，接收设备报警消息等（同时回调登录ID，用以区分不同设备）。

BOOL NET_DVR_SetDVRMessCallBack_EX(
  fMessCallBack_EX    cbMessCallBack
);

Parameters

cbMessCallBack
[in] 回调函数

Callback Function

BOOL(CALLBACK *fMessCallBack_EX)(
  LONG     lCommand,
  LONG     lUserID,
  char     *pBuf,
  DWORD    dwBufLen
);

Callback Function Parameters

lCommand
[out] 上传的消息类型，见下表
宏定义 | 宏定义值 | 含义
COMM_ALARM | 0x1100 | V3.0以下版本支持的设备的报警信息上传
COMM_ALARM_RULE | 0x1102 | 行为分析信息上传
COMM_ALARM_PDC | 0x1103 | 人流量统计报警上传
COMM_TRADEINFO | 0x1500 | ATM DVR交易信息上传
COMM_UPLOAD_PLATE_RESULT | 0x2800 | 智能高清IPC报警上传
COMM_ALARM_V30 | 0x4000 | V3.0以上版本支持的设备的报警信息上传
COMM_IPCCFG | 0x4001 | 混合型DVR在IPC接入配置改变时的报警信息上传
COMM_IPCCFG_V31 | 0x4002 | 混合型DVR在IPC接入配置改变时的报警信息上传（扩展）
lUserID
[out] 用户登录ID，NET_DVR_Login或NET_DVR_Login_V30的返回值
pBuf
[out] 报警信息
dwBufLen
[out]报警信息缓存大小

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

Remarks

该接口中回调函数的第一个参数（lCommand）和第三个参数（pBuf）是密切关联的，其关系见下表：
消息类型（lCommand） | 上传内容 | pAlarmInfo对应的结构体
COMM_ALARM | V3.0以下版本支持的设备的报警信息 | NET_DVR_ALARMINFO
COMM_ALARM_RULE | 行为分析信息 | NET_VCA_RULE_ALARM
COMM_ALARM_PDC | 人流量统计报警上传 | NET_DVR_PDC_ALRAM_INFO
COMM_TRADEINFO | ATM DVR交易信息 | NET_DVR_TRADEINFO
COMM_UPLOAD_PLATE_RESULT | 智能高清IPC报警上传 | NET_DVR_PLATE_RESULT
COMM_ALARM_V30 | V3.0以上版本支持的设备的报警信息 | NET_DVR_ALARMINFO_V30
COMM_IPCCFG | 混合型DVR在IPC接入配置改变时的报警信息 | NET_DVR_IPALARMINFO
COMM_IPCCFG_V31 | 混合型DVR在IPC接入配置改变时的报警信息（扩展） | NET_DVR_IPALARMINFO_V31

See Also

NET_DVR_SetupAlarmChan_V30

NET_DVR_SetupAlarmChan

NET_DVR_StartListen

Reference Interface

其他设置报警回调函数的接口可见

NET_DVR_SetDVRMessageCallBack_V30

NET_DVR_SetDVRMessCallBack

NET_DVR_SetDVRMessCallBack_NEW

NET_DVR_SetDVRMessageCallBack


NET_DVR_SetDVRMessCallBack_NEW

注册回调函数，接收设备报警消息等（同时回调设备IP地址和与设备间连接的设备端口号，用以区分不同设备）。

BOOL NET_DVR_SetDVRMessCallBack_NEW(
  fMessCallBack_NEW    cbMessCallBack
);

Parameters

cbMessCallBack
[in] 回调函数

Callback Function

BOOL(CALLBACK *fMessCallBack_NEW)(
  LONG     lCommand,
  char     *sDVRIP,
  char     *pBuf,
  DWORD    dwBufLen,
  WORD     dwLinkDVRPort
);

Callback Function Parameters

lCommand
[out] 上传的消息类型，见下表
宏定义 | 宏定义值 | 含义
COMM_ALARM | 0x1100 | V3.0以下版本支持的设备的报警信息上传
COMM_ALARM_RULE | 0x1102 | 行为分析信息上传
COMM_ALARM_PDC | 0x1103 | 人流量统计报警上传
COMM_TRADEINFO | 0x1500 | ATM DVR交易信息上传
COMM_UPLOAD_PLATE_RESULT | 0x2800 | 智能高清IPC报警上传
COMM_ALARM_V30 | 0x4000 | V3.0以上版本支持的设备的报警信息上传
COMM_IPCCFG | 0x4001 | 混合型DVR在IPC接入配置改变时的报警信息上传
COMM_IPCCFG_V31 | 0x4002 | 混合型DVR在IPC接入配置改变时的报警信息上传（扩展）
sDVRIP
[out] 设备IP地址
pBuf
[out] 报警信息
dwBufLen
[out] 报警信息缓存大小
dwLinkDVRPort
[out] 与设备间连接的设备端口号

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

Remarks

该接口中回调函数的第一个参数（lCommand）和第三个参数（pBuf）是密切关联的，其关系见下表：
消息类型（lCommand） | 上传内容 | pAlarmInfo对应的结构体
COMM_ALARM | V3.0以下版本支持的设备的报警信息 | NET_DVR_ALARMINFO
COMM_ALARM_RULE | 行为分析信息 | NET_VCA_RULE_ALARM
COMM_ALARM_PDC | 人流量统计报警上传 | NET_DVR_PDC_ALRAM_INFO
COMM_TRADEINFO | ATM DVR交易信息 | NET_DVR_TRADEINFO
COMM_UPLOAD_PLATE_RESULT | 智能高清IPC机报警上传 | NET_DVR_PLATE_RESULT
COMM_ALARM_V30 | V3.0以上版本支持的设备的报警信息 | NET_DVR_ALARMINFO_V30
COMM_IPCCFG | 混合型DVR在IPC接入配置改变时的报警信息 | NET_DVR_IPALARMINFO
COMM_IPCCFG_V31 | 混合型DVR在IPC接入配置改变时的报警信息（扩展） | NET_DVR_IPALARMINFO_V31

See Also

NET_DVR_SetupAlarmChan_V30

NET_DVR_SetupAlarmChan

NET_DVR_StartListen

Reference Interface

其他设置报警回调函数的接口可见

NET_DVR_SetDVRMessageCallBack_V30

NET_DVR_SetDVRMessCallBack

NET_DVR_SetDVRMessCallBack_EX

NET_DVR_SetDVRMessageCallBack


NET_DVR_SetupAlarmChan

建立报警上传通道，获取报警等信息。

LONG NET_DVR_SetupAlarmChan(
  LONG   lUserID
);

Parameters

lUserID
[in] NET_DVR_Login或者NET_DVR_Login_30的返回值

Return Values

-1表示失败，其他值作为NET_DVR_CloseAlarmChan函数的句柄参数。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_NETWORK_FAIL_CONNECT | 7 | 连接设备失败。设备不在线或网络原因引起的连接超时等。
NET_DVR_NETWORK_SEND_ERROR | 8 | 向设备发送失败。
NET_DVR_NETWORK_RECV_ERROR | 9 | 从设备接收数据失败。
NET_DVR_NETWORK_RECV_TIMEOUT | 10 | 从设备接收数据超时。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_DVRNORESOURCE | 28 | 设备资源不足。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_NOENOUGH_BUF | 43 | 缓冲区太小。接收设备数据的缓冲区或存放图片缓冲区不足。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_MAX_NUM | 46 | 个数达到最大。分配的注册连接数、预览连接数超过SDK支持的最大数。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETCLOSE_ERROR | 73 | socket连接中断，此错误通常是由于连接中断或目的地不可达。

Remarks

启动布防前，需要调用注册回调函数的接口（仅需按需求调用NET_DVR_SetDVRMessageCallBack_V30、NET_DVR_SetDVRMessCallBack、NET_DVR_SetDVRMessCallBack_EX、NET_DVR_SetDVRMessCallBack_NEW和NET_DVR_SetDVRMessageCallBack其中的一个）才能获取到上传的报警等信息。

See Also

NET_DVR_CloseAlarmChan

NET_DVR_Login NET_DVR_Login_V30

NET_DVR_SetDVRMessageCallBack_V30

NET_DVR_SetDVRMessCallBack

NET_DVR_SetDVRMessCallBack_EX

NET_DVR_SetDVRMessCallBack_NEW

NET_DVR_SetDVRMessageCallBack

Reference Interface

扩展接口可见

NET_DVR_SetupAlarmChan_V30


NET_DVR_StartListen

启动监听，接收设备主动上传的报警等信息。

BOOL NET_DVR_StartListen(
  char    *sLocalIP,
  WORD    wLocalPort
);

Parameters

sLocalIP
[in] PC机本地IP地址,可以置为NULL
wLocalPort
[in] PC本地监听端口号。由用户设置，必须和设备端设置的一致

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_VERSIONNOMATCH | 6 | 版本不匹配。SDK和设备的版本不匹配。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。
NET_DVR_ALLOC_RESOURCE_ERROR | 41 | SDK资源分配错误。
NET_DVR_CREATESOCKET_ERROR | 44 | 创建SOCKET出错。
NET_DVR_USERNOTEXIST | 47 | 用户不存在。注册的用户ID已注销或不可用。
NET_DVR_BINDSOCKET_ERROR | 72 | 绑定套接字失败。
NET_DVR_SOCKETLISTEN_ERROR | 75 | 监听失败。

Remarks

要使PC能够收到设备主动发过来的报警等信息，必须将设备的网络配置中的“远程管理主机地址”或者“远程报警主机地址”设置成PC机的IP地址（与接口中的sLocalIP参数一致），“远程管理主机端口号”或者“远程报警主机端口号”设置成PC机的监听端口号（与接口中的wLocalPort参数一致）。启动监听后，需要调用注册回调函数的接口（仅需按需求调用NET_DVR_SetDVRMessageCallBack_V30、NET_DVR_SetDVRMessCallBack、NET_DVR_SetDVRMessCallBack_EX、NET_DVR_SetDVRMessCallBack_NEW和NET_DVR_SetDVRMessageCallBack其中的一个）才能获取到上传的报警等信息。

See Also

NET_DVR_StopListen

NET_DVR_SetDVRMessageCallBack_V30

NET_DVR_SetDVRMessCallBack

NET_DVR_SetDVRMessCallBack_EX

NET_DVR_SetDVRMessCallBack_NEW

NET_DVR_SetDVRMessageCallBack

Reference Interface

扩展接口可见

NET_DVR_StartListen_V30


NET_DVR_StartVoiceCom

启动语音对讲。

LONG NET_DVR_StartVoiceCom(
  LONG                  lUserID,
  fVoiceDataCallBack    cbVoiceDataCallBack,
  DWORD                 dwUser
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
cbVoiceDataCallBack
[in] 音频数据回调函数
dwUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *fVoiceDataCallBack)(
  LONG     lVoiceComHandle,
  char     *pRecvDataBuffer,
  DWORD    dwBufSize,
  BYTE     byAudioFlag,
  DWORD    dwUser
);

Callback Function Parameters

lVoiceComHandle
[out] NET_DVR_StartVoiceCom的返回值
pRecvDataBuffer
[out] 存放音频数据的缓冲区指针
dwBufSize
[out] 音频数据大小
byAudioFlag
[out] 音频数据类型：0－本地采集的数据（编码后）；1－设备发送过来的语音数据（编码后）
dwUser
[out] 用户数据

Return Values

-1表示失败，其他值作为NET_DVR_StopVoiceCom等函数的句柄参数。获取错误码调用NET_DVR_GetLastError

Remarks

Windows 7操作系统下，如果不外接音频设备，该接口将返回失败。
在调用开始语音对讲之前可先配置设备的语音对讲音频编码类型，即可先调用参数配置中的NET_DVR_COMPRESSION_AUDIO
结构配置。
当前音频为OggVorbis编码时，音频数据的采样频率为16000，16位采样且是单通道的。因此，音频播放格式应如下定义：
const int SAMPLES_PER_SECOND = 16000;
const int CHANNEL = 1;
const int BITS_PER_SAMPLE = 16;
WAVEFORMATEX m_wavFormatEx;
m_wavFormatEx.cbSize = sizeof(m_wavFormatEx);
m_wavFormatEx.nBlockAlign = CHANNEL * BITS_PER_SAMPLE / 8;
m_wavFormatEx.nChannels = CHANNEL;
m_wavFormatEx.nSamplesPerSec = SAMPLES_PER_SECOND;
m_wavFormatEx.wBitsPerSample = BITS_PER_SAMPLE;
m_wavFormatEx.nAvgBytesPerSec = SAMPLES_PER_SECOND*m_wavFormatEx.nBlockAlign

当前音频为G711编码时，音频数据的采样频率为8000，16位采样且是单通道的。因此，音频播放格式应如下定义：
const int SAMPLES_PER_SECOND_G711_MU = 8000;
const int CHANNEL = 1;
const int BITS_PER_SAMPLE = 16;
WAVEFORMATEX m_wavFormatEx;
m_wavFormatEx.cbSize = sizeof(m_wavFormatEx);
m_wavFormatEx.nBlockAlign =	CHANNEL * BITS_PER_SAMPLE / 8;
m_wavFormatEx.nChannels = CHANNEL;
m_wavFormatEx.nSamplesPerSec = SAMPLES_PER_SECOND_G711_MU;
m_wavFormatEx.wBitsPerSample = BITS_PER_SAMPLE;
m_wavFormatEx.nAvgBytesPerSec = SAMPLES_PER_SECOND_G711_MU*
m_wavFormatEx.nBlockAlign;

See Also

NET_DVR_StopVoiceCom

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见

NET_DVR_StartVoiceCom_V30


NET_DVR_StartVoiceCom_MR

启动语音转发，获取编码后的音频数据。

LONG NET_DVR_StartVoiceCom_MR(
  LONG                  lUserID,
  fVoiceDataCallBack    cbVoiceDataCallBack,
  DWORD                 dwUser
);

Parameters

lUserID
[in] NET_DVR_Login或NET_DVR_Login_V30的返回值
cbVoiceDataCallBack
[in] 音频数据回调函数，得到的数据是编码以后的音频数据，需调用我们提供的音频解码函数（详见音频编解码章节的说明）后可得到PCM数据
dwUser
[in] 用户数据

Callback Function

typedef void(CALLBACK *fVoiceDataCallBack)(
  LONG     lVoiceComHandle,
  char     *pRecvDataBuffer,
  DWORD    dwBufSize,
  BYTE     byAudioFlag,
  DWORD    dwUser
);

Callback Function Parameters

lVoiceComHandle
[out] NET_DVR_StartVoiceCom_MR的返回值
pRecvDataBuffer
[out] 存放音频数据的缓冲区指针
dwBufSize
[out] 音频数据大小
byAudioFlag
[out] 音频数据类型：1－设备发送过来的音频数据
dwUser
[out] 用户数据

Return Values

-1表示失败，其他值作为NET_DVR_VoiceComSendData、NET_DVR_StopVoiceCom等函数的句柄参数。获取错误码调用NET_DVR_GetLastError

Remarks

在调用开始语音转发之前可先配置设备的音频编码类型，即可先调用参数配置中的NET_DVR_COMPRESSION_AUDIO
结构配置。
当前音频为OggVorbis编码时，音频数据的采样频率为16000，16位采样且是单通道的。因此，音频播放格式应如下定义：
const int SAMPLES_PER_SECOND = 16000;
const int CHANNEL = 1;
const int BITS_PER_SAMPLE = 16;
WAVEFORMATEX m_wavFormatEx;
m_wavFormatEx.cbSize = sizeof(m_wavFormatEx);
m_wavFormatEx.nBlockAlign = CHANNEL * BITS_PER_SAMPLE / 8;
m_wavFormatEx.nChannels = CHANNEL;
m_wavFormatEx.nSamplesPerSec = SAMPLES_PER_SECOND;
m_wavFormatEx.wBitsPerSample = BITS_PER_SAMPLE;
m_wavFormatEx.nAvgBytesPerSec = SAMPLES_PER_SECOND*m_wavFormatEx.nBlockAlign

当前音频为G711编码时，音频数据的采样频率为8000，16位采样且是单通道的。因此，音频播放格式应如下定义：
const int SAMPLES_PER_SECOND_G711_MU = 8000;
const int CHANNEL = 1;
const int BITS_PER_SAMPLE = 16;
WAVEFORMATEX m_wavFormatEx;
m_wavFormatEx.cbSize = sizeof(m_wavFormatEx);
m_wavFormatEx.nBlockAlign =	CHANNEL * BITS_PER_SAMPLE / 8;
m_wavFormatEx.nChannels = CHANNEL;
m_wavFormatEx.nSamplesPerSec = SAMPLES_PER_SECOND_G711_MU;
m_wavFormatEx.wBitsPerSample = BITS_PER_SAMPLE;
m_wavFormatEx.nAvgBytesPerSec = SAMPLES_PER_SECOND_G711_MU*
m_wavFormatEx.nBlockAlign;

See Also

NET_DVR_StopVoiceCom

NET_DVR_VoiceComSendData

NET_DVR_Login NET_DVR_Login_V30

Reference Interface

扩展接口可见

NET_DVR_StartVoiceCom_MR_V30


NET_DVR_StopListen

停止监听。

BOOL NET_DVR_StopListen(
);

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

以下是该接口可能返回的错误值

错误类型 | 错误值 | 错误信息
NET_DVR_NOERROR | 0 | 没有错误。
NET_DVR_NOINIT | 3 | SDK未初始化。
NET_DVR_ORDER_ERROR | 12 | 调用次序错误。
NET_DVR_PARAMETER_ERROR | 17 | 参数错误。SDK接口中给入的输入或输出参数为空。

See Also

NET_DVR_StartListen

Reference Interface

扩展接口可见
NET_DVR_StopListen_V30


NET_DVR_TransPTZ_EX

透明云台操作，需先启动预览，通过预览连接发送命令（性能比NET_DVR_TransPTZ好，RTSP预览时不支持此功能）。

BOOL NET_DVR_TransPTZ_EX(
  LONG     lRealHandle,
  char     *pPTZCodeBuf,
  DWORD    dwBufSize
);

Parameters

lRealHandle
[in] NET_DVR_RealPlay或NET_DVR_RealPlay_V30的返回值
pPTZCodeBuf
[in] 存放云台控制码缓冲区的指针
dwBufSize
[in] 云台控制码的长度

Return Values

TRUE表示成功，FALSE表示失败。获取错误码调用NET_DVR_GetLastError

Remarks

使用该接口能直接通过设备将云台控制码信息直接传输给云台设备，而无需配置解码器。

See Also

NET_DVR_RealPlay NET_DVR_RealPlay_V30


INITINFO

窗口参数。

struct{
  int      uWidth;
  int      uHeight;
}INITINFO;

Members

uWidth
窗口宽度
uHeight
窗口高度

See Also

NET_DVR_DrawAreaInit


ITC_TRIGGERMODE_TYPE

触发模式。

enum _ITC_TRIGGERMODE_TYPE_{
  ITC_POST_IOSPEED_TYPE             = 0x1,
  ITC_POST_SINGLEIO_TYPE            = 0x2,
  ITC_POST_RS485_TYPE               = 0x4,
  ITC_POST_RS485_RADAR_TYPE         = 0x8，
  ITC_POST_VIRTUALCOIL_TYPE         = 0x10,
  ITC_EPOLICE_IO_TRAFFICLIGHTS_TYPE = 0x100,
  ITC_EPOLICE_RS485_TYPE            = 0x200,
  ITC_PE_RS485_TYPE                 = 0x10000，
  ITC_VIDEO_EPOLICE_TYPE            = 0x20000
}ITC_TRIGGERMODE_TYPE
ITC_POST_IOSPEED_TYPE
IO测速（卡口）
ITC_POST_SINGLEIO_TYPE
单IO触发（卡口）
ITC_POST_RS485_TYPE
RS485车检器触发（卡口）
ITC_POST_RS485_RADAR_TYPE
RS485雷达触发（卡口）
ITC_POST_VIRTUALCOIL_TYPE
虚拟线圈触发（卡口）
ITC_EPOLICE_IO_TRAFFICLIGHTS_TYPE
IO红绿灯（电警）
ITC_EPOLICE_RS485_TYPE
RS485车检器电警触发（电警）
ITC_PE_RS485_TYPE
RS485车检器卡式电警触发（卡式电警）
ITC_VIDEO_EPOLICE_TYPE
视频电警触发（卡式电警）

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_ABILITY_LIST

单个能力的参数结构体。

struct{
  DWORD               dwAbilityType;
  BYTE                byRes[32];
  DWORD               dwNodeNum;
  NET_DVR_DESC_NODE   struDescNode[MAX_NODE_NUM];
}NET_DVR_ABILITY_LIST,*LPNET_DVR_ABILITY_LIST;

Members

dwAbilityType
能力类型，定义详见下表
enum _COMPRESSION_ABILITY_TYPE_{
  COMPRESSION_STREAM_ABILITY = 0,
  MAIN_RESOLUTION_ABILITY,
  SUB_RESOLUTION_ABILITY,
  EVENT_RESOLUTION_ABILITY,
  FRAME_ABILITY,
  BITRATE_TYPE_ABILITY,
  BITRATE_ABILITY
}COMPRESSION_ABILITY_TYPE
COMPRESSION_STREAM_ABILITY
码流压缩类型
MAIN_RESOLUTION_ABILITY
主码流压缩分辨率
SUB_RESOLUTION_ABILITY
子码流压缩分辨率
EVENT_RESOLUTION_ABILITY
事件压缩参数分辨率
FRAME_ABILITY
帧率能力
BITRATE_TYPE_ABILITY
位率类型能力
BITRATE_ABILITY
位率上限
byRes
保留，置为0
dwNodeNum
能力节点个数
struDescNode
节点能力参数结构

Remarks

我们举例说明各个能力类型与节点参数的关系：
能力类型（dwAbilityType） | 节点个数（dwNodeNum） | 节点参数（struDescNode->iValue） | 节点参数（struDescNode->byDescribe）
COMPRESSION_STREAM_ABILITY | 3 | 0 | “Main Stream”
COMPRESSION_STREAM_ABILITY | 3 | 1 | “Sub Stream”
COMPRESSION_STREAM_ABILITY | 3 | 2 | “Event Stream”
BITRATE_ABILITY | 23 | 0 | “16Kbps”
BITRATE_ABILITY | 23 | 1 | “32Kbps”
… | … | … | …
BITRATE_ABILITY | 23 | -1 | “Self-Define(0-65535kbps)”

See Also

NET_DVR_COMPRESSIONCFG_ABILITY


NET_DVR_ACCELERATIONCFG

加速配置结构体。

struct{
  DWORD           dwMaxXAcc;
  DWORD           dwMaxYAcc;
  DWORD           dwMaxZAcc;
  BYTE            byRes[4];
}NET_DVR_ACCELERATIONCFG, *LPNET_DVR_ACCELERATIONCFG;

Members

dwMaxXAcc
X轴加速度报警值，该取值为实际数值乘以10，最小为0
dwMaxYAcc
Y轴加速度报警值，该取值为实际数值乘以10，最小为0
dwMaxZAcc
Z轴加速度报警值，该取值为实际数值乘以10，最小为0
byRes
保留

See Also

NET_DVR_GSENSORPARA


NET_DVR_ACCESS_CAMERA_INFO

前端相机信息结构体。

struct{
  DWORD         dwSize;
  char          sCameraInfo[32];
  BYTE          byInterfaceType;
  BYTE          byRes[31];
}NET_DVR_ACCESS_CAMERA_INFO,*LPNET_DVR_ACCESS_CAMERA_INFO;

Members

dwSize
结构体大小
sCameraInfo
前端相机信息
byInterfaceType
前端接入接口类型：1- VGA，2- HDMI，3- YPbPr，4- SDI，5- FC
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_ADAPTER_VERSION

适配器版本参数结构体。

struct{
  WORD   wMajorVersion;
  WORD   wMinorVersion;
  WORD   wRevisionNumber;
  WORD   wBuildNumber;
}NET_DVR_ADAPTER_VERSION, *LPNET_DVR_ADAPTER_VERSION;

Members

wMajorVersion
主版本号
wMinorVersion
次版本号
wRevisionNumber
修订版本号
wBuildNumber
编译日期

See Also

NET_DVR_RAID_ADAPTER_INFO


NET_DVR_AID_ALARM

交通事件报警信息结构体。

struct{
  DWORD                 dwSize;
  DWORD                 dwRelativeTime;
  DWORD                 dwAbsTime;
  NET_VCA_DEV_INFO      struDevInfo;
  NET_DVR_AID_INFO      struAIDInfo;
  DWORD                 dwPicDataLen;
  BYTE                  *pImage;
  BYTE                  byRes[40];
}NET_DVR_AID_ALARM, *LPNET_DVR_AID_ALARM;

Members

dwSize
结构体大小
dwRelativeTime
相对时标
dwAbsTime
绝对时标
struDevInfo
前端设备信息
struAIDInfo
交通事件信息
dwPicDataLen
图片长度
pImage
图片长度指向图片的指针
byRes
保留

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_DVR_AID_INFO

交通事件信息结构体。

struct{
  BYTE                  byRuleID;
  BYTE                  byRes1[3];
  BYTE                  byRuleName[NAME_LEN];
  DWORD                 dwAIDType;
  NET_DVR_DIRECTION     struDirect;
  BYTE                  byRes2[40];
}NET_DVR_AID_INFO, *LPNET_DVR_AID_INFO;

Members

byRuleID
规则序号，为规则配置结构的下标
byRes1
保留
byRuleName
规则名称
dwAIDType
报警事件类型
struDirect
报警指向区域
byRes2
保留

See Also

NET_DVR_AID_ALARM


NET_DVR_AID_PARAM

交通事件参数。

struct{
  DWORD              wParkingDuration;
  DWORD              wPedestrianDuration;
  DWORD              wDebrisDuration;
  DWORD              wCongestionLength;
  DWORD              wCongestionDuration;
  DWORD              wInverseDuration;
  DWORD              wInverseDistance;
  DWORD              wInverseAngleTolerance;
  BYTE               byRes1[28];
}NET_DVR_AID_PARAM, *LPNET_DVR_AID_PARAM;

Members

wParkingDuration
停车持续时间，范围：10-120s
wPedestrianDuration
行人持续时间，范围：1-120s
wDebrisDuration
抛洒物持续时间，范围：10-120s
wCongestionLength
拥堵长度阈值，范围：5-200米
wCongestionDuration
拥堵持续参数，范围：10-120s
wInverseDuration
逆行持续时间，范围：1-10s
wInverseDistance
逆行距离阈值，范围：2-100米，默认为10米
wInverseAngleTolerance
允许角度偏差，范围：90-180度。车流与逆行允许的夹角
byRes1
保留

See Also

NET_DVR_ONE_AID_RULE


NET_DVR_AID_RULECFG

交通事件规则结构体。

struct{
  DWORD                         dwSize;
  BYTE                          byPicProType;
  BYTE                          byRes1[3];
  NET_DVR_JPEGPARA              struPictureParam;
  NET_DVR_ONE_AID_RULE          struAIDRule[MAX_AID_RULE];
  BYTE                          byRes2[32];
}NET_DVR_AID_RULECFG,*LPNET_DVR_AID_RULECFG;

Members

dwSize
结构体大小
byPicProType
报警时图片处理方式：0-不处理，非0-上传
byRes1
保留，置为0
struPictureParam
图片规格结构
struAIDRule
单条交通事件规则参数
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_AIR_CONDITION_PARAM

空调遥控器参数结构体。

struct{
  DWORD              dwSize;
  BYTE               byEnable;
  BYTE               byMode;
  BYTE               byTemperature;
  BYTE               byRes[9];
}NET_DVR_AIR_CONDITION_PARAM,*LPNET_DVR_AIR_CONDITION_PARAM;

Members

dwSize
结构体大小
byEnable
0- 关机，1- 开机
byMode
空调模式，具体定义如下：
enum _AIR_CONDITON_MODE_{
  REFRIGERATION  = 0,
  HEARTING,
  DEHUMIDIFIER,
  AUTO
}AIR_CONDITON_MODE
REFRIGERATION
制冷
HEARTING
制热
DEHUMIDIFIER
抽湿
AUTO
自动
byTemperature
温度，具体值表示。通常为16-30度
byRes
保留

See Also

NET_DVR_SetAirCondition


NET_DVR_ALARM_DEVICE_USER

报警主机设备用户配置结构体。

struct{
  DWORD              dwSize;
  BYTE               sUserName[NAME_LEN];
  BYTE               sPassword[PASSWD_LEN];
  NET_DVR_IPADDR     struUserIP;
  BYTE               byMACAddr[MACADDR_LEN];
  BYTE               byUserType;
  BYTE               byAlarmOnRight;
  BYTE               byAlarmOffRight;
  BYTE               byBypassRight;
  BYTE               byOtherRight[MAX_RIGHT];
  BYTE               byRes2[200];
}NET_DVR_ALARM_DEVICE_USER,*LPNET_DVR_ALARM_DEVICE_USER;

Members

dwSize
结构体大小
sUserName
用户名
sPassword
密码
struUserIP
用户IP地址(为0时表示允许任何地址)
byMACAddr
物理地址
byUserType
用户类型：0- 普通用户，1- 管理员用户
byAlarmOnRight
布防权限
byAlarmOffRight
撤防权限
byBypassRight
旁路权限
byOtherRight
其他权限，参数取值为1表示使能：
数组0－日志权限
数组1－重启关机
数组2－参数设置权限
数组3－参数获取权限
数组4－恢复默认参数权限
数组5－警号输出权限
数组6－PTZ控制权限(给矩阵使用)
数组7－远程升级权限
byRes2
保留

See Also

NET_DVR_GetAlarmDeviceUser NET_DVR_SetAlarmDeviceUser


NET_DVR_ALARM_RS485CFG

报警主机RS485参数结构体。

struct{
  DWORD     dwSize;
  BYTE      sDeviceName[NAME_LEN];
  WORD      wDeviceType;
  WORD      wDeviceProtocol;
  DWORD     dwBaudRate;
  BYTE      byDataBit;
  BYTE      byStopBit;
  BYTE      byParity;
  BYTE      byFlowcontrol;
  BYTE      byDuplex;
  BYTE      byWorkMode;
  BYTE      byRes[38];
}NET_DVR_ALARM_RS485CFG, *LPNET_DVR_ALARM_RS485CFG;

Members

dwSize
结构体大小
sDeviceName
前端设备名称
wDeviceType
前端设备类型
wDeviceProtocol
前端设备协议，通过获取协议列表NET_DVR_GetDeviceProtoList获取
dwBaudRate
波特率(bps)，0-50，1-75，2-110，3-150，4-300，5-600，6-1200，7-2400，8-4800，9-9600，10-19200，11-38400，12-57600，13-76800，14-115.2k
byDataBit
数据有几位：0-5位，1-6位，2-7位，3-8位
byStopBit
停止位：0-1位，1-2位
byParity
是否校验：0-无校验，1-奇校验，2-偶校验
byFlowcontrol
是否流控：0-无，1-软流控,2-硬流控
byDuplex
0- 半双工，1- 全双工
byWorkMode
工作模式：0- 控制台，1- 透明通道
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig
NET_DVR_GetDeviceProtoList


NET_DVR_ALARMER

报警设备信息结构体。

struct{
  BYTE     byUserIDValid;
  BYTE     bySerialValid;
  BYTE     byVersionValid;
  BYTE     byDeviceNameValid;
  BYTE     byMacAddrValid;
  BYTE     byLinkPortValid;
  BYTE     byDeviceIPValid;
  BYTE     bySocketIPValid;
  LONG     lUserID;
  BYTE     sSerialNumber[SERIALNO_LEN];
  DWORD    dwDeviceVersion;
  char     sDeviceName[NAME_LEN];
  BYTE     byMacAddr[MACADDR_LEN];
  WORD     wLinkPort;
  char     sDeviceIP[128];
  char     sSocketIP[128];
  BYTE     byIpProtocol;
  BYTE     byRes2[11];
}NET_DVR_ALARMER,*LPNET_DVR_ALARMER;

Members

byUserIDValid
userid是否有效：0－无效；1－有效
bySerialValid
序列号是否有效：0－无效；1－有效
byVersionValid
版本号是否有效：0－无效；1－有效
byDeviceNameValid
设备名字是否有效：0－无效；1－有效
byMacAddrValid
MAC地址是否有效：0－无效；1－有效
byLinkPortValid
Login端口是否有效：0－无效；1－有效
byDeviceIPValid
设备IP是否有效：0－无效；1－有效
bySocketIPValid
Socket IP是否有效：0-无效；1-有效
lUserID
NET_DVR_Login或NET_DVR_Login_V30返回值, 布防时有效
sSerialNumber
序列号
dwDeviceVersion
版本信息：V3.0以上版本支持的设备最高8位为主版本号，次高8位为次版本号，低16位为修复版本号；V3.0以下版本支持的设备高16位表示主版本，低16位表示次版本
sDeviceName
设备名称
byMacAddr
MAC地址
wLinkPort
设备通讯端口
sDeviceIP
设备IP地址
sSocketIP
报警主动上传时的Socket IP地址
byIpProtocol
IP协议：0－IPV4；1－IPV6
byRes2
保留，置为0


NET_DVR_ALARMHOST_ABILITY

报警主机能力集结构体。

struct{
  DWORD           dwSize;
  WORD            wTotalAlarmInNum;
  WORD            wLocalAlarmInNum;
  WORD            wExpandAlarmInNum;
  WORD            wTotalAlarmOutNum;
  WORD            wLocalAlarmOutNum;
  WORD            wExpandAlarmOutNum;
  WORD            wTotalRs485Num;
  WORD            wLocalRs485Num;
  WORD            wExpandRs485Num;
  WORD            wFullDuplexRs485Num;
  WORD            wTotalSensorNum;
  WORD            wLocalSensorNum;
  WORD            wExpandSensorNum;
  WORD            wAudioOutNum;
  WORD            wMobileGateNum;
  WORD            wElectroLockNum;
  WORD            wSirenNum;
  WORD            wSubSystemNum;
  WORD            wNetUserNum;
  WORD            wKeyboardUserNum;
  WORD            wOperatorUserNum;
  BYTE            bySupportDetector;
  BYTE            bySupportSensitivity;
  BYTE            bySupportArrayBypass;
  BYTE            bySupportAlarmInDelay;
  BYTE            bySupportAlarmInType[16];
  BYTE            byTelNum;
  BYTE            byCenterGroupNum;
  BYTE            byGPRSNum;
  BYTE            byNetNum;
  WORD            byRes[74];
}NET_DVR_ALARMHOST_ABILITY, *LPNET_DVR_ALARMHOST_ABILITY;

Members

dwSize
结构体大小
wTotalAlarmInNum
报警输入口总数（设备支持的总数，包括级联）
wLocalAlarmInNum
本地报警输入口
wExpandAlarmInNum
可扩展的报警输入口
wTotalAlarmOutNum
报警输出口总数（设备支持的总数）
wLocalAlarmOutNum
本地报警输出口个数
wExpandAlarmOutNum
可扩展的报警输出口
wTotalRs485Num
最大通道485数目（设备支持的总数）
wLocalRs485Num
本地485口数
wExpandRs485Num
可扩展的485口数
wFullDuplexRs485Num
全双工的485口数
wTotalSensorNum
模拟量最大个数 (设备支持的总数)
wLocalSensorNum
本地模拟量个数
wExpandSensorNum
可扩展的模拟量个数
wAudioOutNum
语音输出个数
wMobileGateNum
移动门个数
wElectroLockNum
电锁个数
wSirenNum
主机警号数目
wSubSystemNum
可划分子系统数目
wNetUserNum
网络用户数
wKeyboardUserNum
键盘用户数
wOperatorUserNum
操作用户数
bySupportDetector
是否支持常开、常闭探测器：1- 支持，0- 不支持
bySupportSensitivity
是否支持防区灵敏度：1- 支持，0- 不支持
bySupportArrayBypass
是否支持组旁路：1- 支持，0- 不支持
bySupportAlarmInDelay
bySupportAlarmInDelay为1时，表示客户端应该使用NET_DVR_ALARMIN_PARAM中的dwParam来设置延时时间，动环报警主机和自助行报警主机使用这种配置延时方式;
如果bySupportAlarmInDelay为0时，表示通过NET_DVR_ALARMSUBSYSTEMPARAM中的wEnterDelay、wExitDelay来设置
bySupportAlarmInType
支持的防区类型：数组0- 即时防区，数组1- 24小时防区，数组2- 延时防区，数组3- 内部防区，数组4- 钥匙防区
byTelNum
电话个数
byCenterGroupNum
中心组个数
byGPRSNum
GPRS中心数，最多4个
byNetNum
网络中心数，最多4个
byRes
保留

See Also

NET_DVR_GetDeviceAbility


NET_DVR_ALARMHOST_ALARMINFO

报警主机报警上传结构体。

struct{
  DWORD       dwAlarmType;
  BYTE        byAlarmInputNumber[MAX_ALARMHOST_ALARMIN_NUM];
  BYTE        byRes[160];
}NET_DVR_ALARMHOST_ALARMINFO, *LPNET_DVR_ALARMHOST_ALARMINFO;

Members

dwAlarmType
保留，目前报警主机的报警没有类型(布防网络序，监听主机序)
byAlarmInputNumber
发生报警的报警输入口，数组0对应第1个输入端口
byRes
保留

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_DVR_ALARMHOST_ALARMOUTSTATUS

报警输出口或者警号状态结构体。

struct{
  DWORD     dwSize;
  BYTE      byName[32];
  BYTE      byAlarmType;
  WORD      wChan;
  BYTE      byAlarmStatus;
  BYTE      byRes[32];
}NET_DVR_ALARMHOST_ALARMOUTSTATUS, *LPNET_DVR_ALARMHOST_ALARMOUTSTATUS;

Members

dwSize
结构体大小
byName
报警输出口或警号名称
byAlarmType
1- 报警输出口状态，2- 警号状态
wChan
如果是报警输出口状态，该值的范围为0~511；如果是警号状态，范围为1~8（防护舱只有1个警号输出）
byAlarmStatus
报警状态：0- 无报警，1- 有报警
byRes
保留

Remarks

有报警或报警取消时会有状态信息上传。如果是有报警状态，则每隔4s钟，设备上传一次状态信息。

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_DVR_ALARMHOST_ENABLECFG

使能状态配置结构体。

struct{
  DWORD          dwSize;
  BYTE           byAudioOutEnable[ALARMHOST_MAX_AUDIOOUT_NUM];
  BYTE           byElectroLockEnable[ALARMHOST_MAX_ELECTROLOCK_NUM];
  BYTE           byMobileGateEnable[ALARMHOST_MAX_MOBILEGATE_NUM];
  BYTE           bySirenEnable[ALARMHOST_MAX_SIREN_NUM];
  BYTE           bySerialPurpose;
  BYTE           byRes[63];
}NET_DVR_ALARMHOST_ENABLECFG, *LPNET_DVR_ALARMHOST_ENABLECFG;

Members

dwSize
结构体大小
byAudioOutEnable
语音输出使能：0- 禁用，1- 使能
byElectroLockEnable
电锁使能：0- 禁用，1-使能
byMobileGateEnable
移动门使能：0- 禁用，1-使能
bySirenEnable
警号使能：0- 禁用，1-使能
bySerialPurpose
串口用途：0- 用于级联报警主机，1- 用于PTZ控制
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_ALARMHOST_EXCEPTION_ALARM

故障报警上传结构体。

struct{
  DWORD                              dwSize;
  DWORD                              dwExceptionType;
  NET_DVR_ALARMHOST_EXCEPTION_PARAM  uExceptionParam;
  DWORD                              dwRelativeTime;
  NET_DVR_TIME_EX                    struOperateTime;
  BYTE                               byRes[4];
}NET_DVR_ALARMHOST_EXCEPTION_ALARM, *LPNET_DVR_ALARMHOST_EXCEPTION_ALARM;

Members

dwSize
结构体大小
dwExceptionType
异常参数。1-设备防拆报警，2-设备防拆后后恢复正常，3-主电源掉电报警，4-主电源掉电后恢复正常，5-内部通信故障报警， 6-内部通信故障后恢复正常，7-电话线断线，8-电话线断线恢复，9-自检失败报警，10-自检失败后恢复正常， 11-蓄电池欠压，12-蓄电池电压恢复正常，13-蓄电池故障，14-MBUS模块掉线，15-MBUS模块掉线恢复，16-键盘掉线，17-键盘掉线恢复， 18-设备被移动，19-设备被移动复位，20-485外设线路断报警，21-外设线路断后恢复正常
uExceptionParam
异常参数联合体
dwRelativeTime
相对时间点
struOperateTime
报警上传时间
byRes
保留

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_DVR_ALARMHOST_EXCEPTION_PARAM

报警主机异常参数结构体。

struct{
  DWORD              dwUnionSize[20];
}NET_DVR_ALARMHOST_EXCEPTION_PARAM,*LPNET_DVR_ALARMHOST_EXCEPTION_PARAM;

Members

dwSize
联合体大小

See Also

NET_DVR_ALARMHOST_EXCEPTION_ALARM


NET_DVR_ALARMHOST_GPRS_CFG

GPRS参数配置结构体。

struct{
  DWORD                              dwSize;
  NET_DVR_ALARMHOST_NETPARAM         struNetCenter[2];
  BYTE                               byAPNName[APN_NAME_LEN];
  BYTE                               byAPNUserName[APN_USERNAME_LEN];
  BYTE                               byAPNPassWord[APN_USERPASSWORD_LEN];
  BYTE                               byReconnTime;
  BYTE                               byOverTime;
  BYTE                               byDetectLinkTime;
  BYTE                               bySIMNum[11];
  BYTE                               byRes1[2];
  NET_DVR_IPADDR                     struSIMIP;
  BYTE                               byRes2[32];
}NET_DVR_ALARMHOST_GPRS_CFG, *LPNET_DVR_ALARMHOST_GPRS_CFG;

Members

dwSize
结构体大小
struNetCenter
中心GPRS网络相关参数的配置
byAPNName
接入点名字
byAPNUserName
接入点用户名
byAPNPassWord
接入点用户密码
byReconnTime
重连时间，连接失效后启用重连的时间，10秒为单位，取值范围[1,30]
byOverTime
超时时间，超过OverTime时间没有收到有效数据则重连，范围[1,254],单位30秒
byDetectLinkTime
探测链路是否还保持，范围[1,30],单位10秒
bySIMNum
SIM卡号（手机号）
byRes1
保留
struSIMIP
登录网络后网络给分配的IP地址，只能获取
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_ALARMHOST_LOG_RET

报警主机日志查找结构体。

struct{
  NET_DVR_TIME    struLogTime;
  BYTE            sUserName[NAME_LEN];
  NET_DVR_IPADDR  struIPAddr;
  WORD            wMajorType;
  WORD            wMinorType;
  WORD            wParam;
  BYTE            byRes[10];
  DWORD           dwInfoLen;
  char            sInfo[LOG_INFO_LEN];
}NET_DVR_ALARMHOST_LOG_RET, *LPNET_DVR_ALARMHOST_LOG_RET;

Members

struLogTime
日志时间
sUserName
操作用户
struIPAddr
操作IP地址
wMajorType
主类型，定义如下：
enum _ALARMHOST_MAJOR_TYPE_{
  ALARMHOST_MAJOR_ALARM = 1,
  ALARMHOST_MAJOR_EXCEPTION,
  ALARMHOST_MAJOR_OPERATE,
  ALARMHOST_MAJOR_EVENT
}ALARMHOST_MAJOR_TYPE
宏定义 | 含义
ALARMHOST_MAJOR_ALARM | 报警
ALARMHOST_MAJOR_EXCEPTION | 异常
ALARMHOST_MAJOR_OPERATE | 操作
ALARMHOST_MAJOR_EVENT | 事件
wMinorType
次类型。
enum _ALARMHOST_MINOR_TYPE_{
  MINOR_SHORT_CIRCUIT =0x01,
  MINOR_BROKEN_CIRCUIT,
  MINOR_ALARM_RESET,
  MINOR_ALARM_NORMAL,
  MINOR_PASSWORD_ERROR,
  MINOR_ID_CARD_ILLEGALLY,
  MINOR_KEYPAD_REMOVE,
  MINOR_KEYPAD_REMOVE_RESTORE,
  MINOR_DEV_REMOVE,
  MINOR_DEV_REMOVE_RESTORE,
  MINOR_BELOW_ALARM_LIMIT1,
  MINOR_BELOW_ALARM_LIMIT2,
  MINOR_BELOW_ALARM_LIMIT3,
  MINOR_BELOW_ALARM_LIMIT4,
  MINOR_ABOVE_ALARM_LIMIT1,
  MINOR_ABOVE_ALARM_LIMIT2,
  MINOR_ABOVE_ALARM_LIMIT3,
  MINOR_ABOVE_ALARM_LIMIT4,
  MINOR_URGENCYBTN_ON,
  MINOR_URGENCYBTN_OFF,
  MINOR_POWER_ON      = 0x100,
  MINOR_POWER_OFF,
  MINOR_WDT_RESET,
  MINOR_LOW_BATTERY_VOLTAGE,
  MINOR_AC_LOSS,
  MINOR_AC_RESTORE,
  MINOR_RTC_EXCEPTION,
  MINOR_NETWORK_CONNECT_FAILURE,
  MINOR_NETWORK_CONNECT_RESTORE,
  MINOR_TEL_LINE_CONNECT_FAILURE,
  MINOR_TEL_LINE_CONNECT_RESTORE,
  MINOR_EXPANDER_BUS_LOSS,
  MINOR_EXPANDER_BUS_RESTORE,
  MINOR_KEYPAD_BUS_LOSS,
  MINOR_KEYPAD_BUS_RESTORE,
  MINOR_SENSOR_FAILURE,
  MINOR_SENSOR_RESTORE,
  MINOR_RS485_CONNECT_FAILURE,
  MINOR_RS485_CONNECT_RESTORE,
  MINOR_GUARD         = 0x200,
  MINOR_UNGUARD,
  MINOR_BYPASS,
  MINOR_DURESS_ACCESS,
  MINOR_ALARMHOST_LOCAL_REBOOT,
  MINOR_ALARMHOST_REMOTE_REBOOT,
  MINOR_ALARMHOST_LOCAL_UPGRADE,
  MINOR_ALARMHOST_REMOTE_UPGRADE,
  MINOR_RECOVERY_DEFAULT_PARAM,
  MINOR_ALARM_OUTPUT,
  MINOR_ACCESS_OPEN,
  MINOR_ACCESS_CLOSE,
  MINOR_SIREN_OPEN,
  MINOR_SIREN_CLOSE,
  MINOR_MOD_ZONE_CONFIG,
  MINOR_MOD_ALARMOUT_CONIFG,
  MINOR_MOD_ANALOG_CONFIG,
  MINOR_RS485_CONFIG,
  MINOR_PHONE_CONFIG,
  MINOR_ADD_ADMIN,
  MINOR_MOD_ADMIN_PW,
  MINOR_DEL_ADMIN,
  MINOR_ADD_NETUSER,
  MINOR_MOD_NETUSER_PW,
  MINOR_DEL_NETUSER,
  MINOR_ADD_OPERATORUSER,
  MINOR_MOD_OPERATORUSER_PW,
  MINOR_DEL_OPERATORUSER,
  MINOR_ADD_KEYPADUSER,
  MINOR_DEL_KEYPADUSER,
  MINOR_REMOTEUSER_LOGIN,
  MINOR_REMOTEUSER_LOGOUT,
  MINOR_REMOTE_GUARD,
  MINOR_REMOTE_UNGUARD,
  MINOR_MOD_HOST_CONFIG,
  MINOR_RESTORE_BYPASS,
  MINOR_SCHOOLTIME_IRGI_B =0x300,
  MINOR_SCHOOLTIME_SDK,
  MINOR_SCHOOLTIME_SELFTEST
}ALARMHOST_MINOR_TYPE
根据不同的主类型的次类型定义说明如下：
主类型的宏定义 | 含义
ALARMHOST_MAJOR_ALARM | 报警
次类型的宏定义 | 含义
MINOR_SHORT_CIRCUIT | 短路报警
MINOR_BROKEN_CIRCUIT | 断路报警
MINOR_ALARM_RESET | 报警复位
MINOR_ALARM_NORMAL | 报警恢复正常
MINOR_PASSWORD_ERROR | 密码错误（连续次输入密码错误）
MINOR_ID_CARD_ILLEGALLY | 非法感应卡ID
MINOR_KEYPAD_REMOVE | 键盘防拆
MINOR_KEYPAD_REMOVE_RESTORE | 键盘防拆复位
MINOR_DEV_REMOVE | 设备防拆
MINOR_DEV_REMOVE_RESTORE | 设备防拆复位
MINOR_BELOW_ALARM_LIMIT1 | 模拟量低于报警限
MINOR_BELOW_ALARM_LIMIT2 | 模拟量低于报警限
MINOR_BELOW_ALARM_LIMIT3 | 模拟量低于报警限
MINOR_BELOW_ALARM_LIMIT4 | 模拟量低于报警限
MINOR_ABOVE_ALARM_LIMIT1 | 模拟量高于报警限
MINOR_ABOVE_ALARM_LIMIT2 | 模拟量高于报警限
MINOR_ABOVE_ALARM_LIMIT3 | 模拟量高于报警限
MINOR_ABOVE_ALARM_LIMIT4 | 模拟量高于报警限
MINOR_URGENCYBTN_ON | 紧急按钮按下
MINOR_URGENCYBTN_OFF | 紧急按钮复位

主类型的宏定义 | 含义
ALARMHOST_MAJOR_EXCEPTION | 异常
次类型的宏定义 | 含义
MINOR_POWER_ON | 上电
MINOR_POWER_OFF | 掉电
MINOR_WDT_RESET | WDT 复位
MINOR_LOW_BATTERY_VOLTAGE | 蓄电池电压低
MINOR_AC_LOSS | 交流电断电
MINOR_AC_RESTORE | 交流电恢复
MINOR_RTC_EXCEPTION | RTC实时时钟异常
MINOR_NETWORK_CONNECT_FAILURE | 网络连接断开
MINOR_NETWORK_CONNECT_RESTORE | 网络连接恢复
MINOR_TEL_LINE_CONNECT_FAILURE | 电话线连接断开
MINOR_TEL_LINE_CONNECT_RESTORE | 电话线连接恢复
MINOR_EXPANDER_BUS_LOSS | 扩展总线模块掉线
MINOR_EXPANDER_BUS_RESTORE | 扩展总线模块掉线恢复
MINOR_KEYPAD_BUS_LOSS | 键盘总线模块掉线
MINOR_KEYPAD_BUS_RESTORE | 键盘总线模块掉线恢复
MINOR_SENSOR_FAILURE | 模拟量传感器故障
MINOR_SENSOR_RESTORE | 模拟量传感器恢复
MINOR_RS485_CONNECT_FAILURE | RS485通道连接断开
MINOR_RS485_CONNECT_RESTORE | RS485通道连接断恢复

主类型的宏定义 | 含义
ALARMHOST_MAJOR_OPERATE | 操作
次类型的宏定义 | 含义
MINOR_GUARD | 开机
MINOR_UNGUARD | 撤防
MINOR_BYPASS | 旁路
MINOR_DURESS_ACCESS | 挟持
MINOR_ALARMHOST_LOCAL_REBOOT | 本地重启
MINOR_ALARMHOST_REMOTE_REBOOT | 远程重启
MINOR_ALARMHOST_LOCAL_UPGRADE | 本地升级
MINOR_ALARMHOST_REMOTE_UPGRADE | 远程升级
MINOR_RECOVERY_DEFAULT_PARAM | 恢复默认参数
MINOR_ALARM_OUTPUT | 控制报警输出
MINOR_ACCESS_OPEN | 控制门禁开
MINOR_ACCESS_CLOSE | 控制门禁关
MINOR_SIREN_OPEN | 控制警号开
MINOR_SIREN_CLOSE | 控制警号关
MINOR_MOD_ZONE_CONFIG | 修改防区设置
MINOR_MOD_ALARMOUT_CONIFG | 控制报警输出配置
MINOR_MOD_ANALOG_CONFIG | 修改模拟量配置
MINOR_RS485_CONFIG | 修改通道配置
MINOR_PHONE_CONFIG | 修改拨号配置
MINOR_ADD_ADMIN | 增加管理员
MINOR_MOD_ADMIN_PW | 修改管理员密码
MINOR_DEL_ADMIN | 删除管理员
MINOR_ADD_NETUSER | 增加后端操作员
MINOR_MOD_NETUSER_PW | 修改后端操作员密码
MINOR_DEL_NETUSER | 删除后端操作员
MINOR_ADD_OPERATORUSER | 增加前端操作员
MINOR_MOD_OPERATORUSER_PW | 修改前端操作员密码
MINOR_DEL_OPERATORUSER | 删除前端操作员
MINOR_ADD_KEYPADUSER | 增加键盘/读卡器用户
MINOR_DEL_KEYPADUSER | 删除键盘/读卡器用户
MINOR_REMOTEUSER_LOGIN | 远程用户登陆
MINOR_REMOTEUSER_LOGOUT | 远程用户注销
MINOR_REMOTE_GUARD | 远程布防
MINOR_REMOTE_UNGUARD | 远程撤防
MINOR_MOD_HOST_CONFIG | 修改主机配置
MINOR_RESTORE_BYPASS | 旁路恢复

主类型的宏定义 | 含义
ALARMHOST_MAJOR_EVENT | 事件
次类型的宏定义 | 含义
MINOR_SCHOOLTIME_IRGI_B | B码校时
MINOR_SCHOOLTIME_SDK | SDK校时
MINOR_SCHOOLTIME_SELFTEST | 定时自检校时
wParam
操作参数
byRes
保留
dwInfoLen
描述信息长度
sInfo
描述信息

See Also

NET_DVR_FindNextAlarmHostLog


NET_DVR_ALARMHOST_MAIN_STATUS

报警输出参数结构体。

struct{
  DWORD               dwSize;
  BYTE                bySetupAlarmStatus[MAX_ALARMHOST_ALARMIN_NUM];
  BYTE                byAlarmInStatus[MAX_ALARMHOST_ALARMIN_NUM];
  BYTE                byAlarmOutStatus[MAX_ALARMHOST_ALARMOUT_NUM];
  BYTE                byBypassStatus[MAX_ALARMHOST_ALARMIN_NUM];
  BYTE                bySubSystemGuardStatus[MAX_ALARMHOST_SUBSYSTEM];
  BYTE                byRes[568];
}NET_DVR_ALARMHOST_MAIN_STATUS, *LPNET_DVR_ALARMHOST_MAIN_STATUS;

Members

dwSize
结构体大小
bySetupAlarmStatus
报警输入口布防状态，最大支持512个报警输入口查询。0- 对应报警输入口处于撤防状态，1- 对应报警输入口处于布防状态。
byAlarmInStatus
报警输入口报警状态，最大支持512个报警输入口查询。0- 对应报警输入口当前无报警，1- 对应报警输入口当前有报警。
byAlarmOutStatus
报警输出口状态，最大支持512个报警输出口查询。0- 对应报警输出口无报警，1- 对应报警输出口有报警
byBypassStatus
旁路状态，数组下标表示0对应报警输入口1。0- 表示报警输入口没有旁路，1- 表示报警输入口旁路
bySubSystemGuardStatus
子系统布防状态：0 -对应子系统处于撤防状态，1- 对应子系统处于布防状态
byRes
保留

See Also

NET_DVR_GetDVRConfig


NET_DVR_ALARMHOST_NETCFG

报警主机网络参数结构体。

struct{
  DWORD                              dwSize;
  NET_DVR_ALARMHOST_NETPARAM         struNetCenter[2];
  BYTE                               byRes1[32];
}NET_DVR_ALARMHOST_NETCFG, *LPNET_DVR_ALARMHOST_NETCFG;

Members

dwSize
结构体大小
struNetCenter
报警中心参数，两个报警中心
byRes1
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_ALARMHOST_NETPARAM

中心GPRS网络相关参数的配置结构体。

struct{
  DWORD                              dwSize;
  NET_DVR_IPADDR                     struIP;
  WORD                               wPort;
  BYTE                               byRes1[2];
  BYTE                               byDomainName[MAX_DOMAIN_NAME];
  BYTE                               byReportProtocol;
  BYTE                               byDevID[ACCOUNTNUM_LEN];
  BYTE                               byRes2[33];
}NET_DVR_ALARMHOST_NETPARAM, *LPNET_DVR_ALARMHOST_NETPARAM;

Members

dwSize
结构体大小
struIP
上传中心的IP地址
wPort
上传中心的端口号
byRes1
保留
byDomainName
域名，GPRS参数配置(NET_DVR_ALARMHOST_GPRS_CFG)时有效，网络参数配置(NET_DVR_ALARMHOST_NETCFG)时该字段不使用
byReportProtocol
报告协议，1-private,2-NAL2300
byDevID
协议为NAL2300时有效
byRes2
保留

See Also

NET_DVR_ALARMHOST_GPRS_CFG NET_DVR_ALARMHOST_NETCFG


NET_DVR_ALARMHOST_OTHER_STATUS

其他状态结构体。

struct{
  DWORD              dwSize;
  BYTE               bySirenStatus[ALARMHOST_MAX_SIREN_NUM];
  BYTE               byRes[92];
}NET_DVR_ALARMHOST_OTHER_STATUS,*LPNET_DVR_ALARMHOST_OTHER_STATUS;

Members

dwSize
结构体大小
bySirenStatus
警号输出状态：0- 警号处于无报警状态，1- 警号处于有报警状态
byRes
保留

See Also

NET_DVR_GetDVRConfig


NET_DVR_ALARMHOST_REPORTCENTER_CFG

报警上传方式结构体。

struct{
  DWORD                              dwSize;
  BYTE                               byValid;
  BYTE                               byRes[3];
  BYTE                               byChanAlarmMode[MAX_REPORTCHAN_NUM];
  BYTE                               byDealFailCenter[MAX_CENTER_NUM];
  BYTE                               byDataType;
  BYTE                               byRes2[15];
}NET_DVR_ALARMHOST_REPORTCENTER_CFG, *LPNET_DVR_ALARMHOST_REPORTCENTER_CFG;

Members

dwSize
结构体大小
byValid
是否启用，0-不启用，1-启用
byRes
保留
byChanAlarmMode
中心组报警通道，1-T1、2-T2、3-N1、4-N2、5-G1、6-G2
byDealFailCenter
向指定中心组发送失败报告，用数组下标表示是哪个中心组，0-不选择，1-选择
byDataType
1-报警数据，2-非报警数据，3-所有数据
byRes2
保留

See Also

NET_DVR_AlarmHostSetReportMode

NET_DVR_AlarmHostGetReportMode


NET_DVR_ALARMHOST_SAFETYCABINSTATE

防护舱状态结构体。

struct{
  DWORD     dwSize;
  BYTE      byEnterButton;
  BYTE      byExitButton;
  BYTE      byDoorState;
  BYTE      byLockState;
  BYTE      byUrgencyButton;
  BYTE      byManState;
  BYTE      byRes[66];
}NET_DVR_ALARMHOST_SAFETYCABINSTATE, *LPNET_DVR_ALARMHOST_SAFETYCABINSTATE;

Members

dwSize
结构体大小
byEnterButton
进门按钮状态：0- 不按下，1- 按钮按下
byExitButton
出门按钮状态：0- 不按下，1- 按钮按下
byDoorState
门状态：0- 门关闭，1- 门打开
byLockState
锁状态：0- 锁关，1- 锁开
byUrgencyButton
紧急按钮状态：0- 不按下，1- 按钮按下
byManState
人状态：0- 没人，1- 有人
byRes
保留

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_DVR_ALARMHOST_SEARCH_LOG_PARAM

报警主机日志查找结构体。

struct{
  WORD            wMajorType;
  WORD            wMinorType;
  NET_DVR_TIME    struStartTime;
  NET_DVR_TIME    struEndTime;
  BYTE            byRes[8];
}NET_DVR_ALARMHOST_SEARCH_LOG_PARAM, *LPNET_DVR_ALARMHOST_SEARCH_LOG_PARAM;

Members

wMajorType
主类型，定义如下：
enum _ALARMHOST_MAJOR_TYPE_{
  ALARMHOST_MAJOR_ALARM = 1,
  ALARMHOST_MAJOR_EXCEPTION,
  ALARMHOST_MAJOR_OPERATE,
  ALARMHOST_MAJOR_EVENT
}ALARMHOST_MAJOR_TYPE
宏定义 | 含义
ALARMHOST_MAJOR_ALARM | 报警
ALARMHOST_MAJOR_EXCEPTION | 异常
ALARMHOST_MAJOR_OPERATE | 操作
ALARMHOST_MAJOR_EVENT | 事件
wMinorType
次类型。
enum _ALARMHOST_MINOR_TYPE_{
  MINOR_SHORT_CIRCUIT =0x01,
  MINOR_BROKEN_CIRCUIT,
  MINOR_ALARM_RESET,
  MINOR_ALARM_NORMAL,
  MINOR_PASSWORD_ERROR,
  MINOR_ID_CARD_ILLEGALLY,
  MINOR_KEYPAD_REMOVE,
  MINOR_KEYPAD_REMOVE_RESTORE,
  MINOR_DEV_REMOVE,
  MINOR_DEV_REMOVE_RESTORE,
  MINOR_BELOW_ALARM_LIMIT1,
  MINOR_BELOW_ALARM_LIMIT2,
  MINOR_BELOW_ALARM_LIMIT3,
  MINOR_BELOW_ALARM_LIMIT4,
  MINOR_ABOVE_ALARM_LIMIT1,
  MINOR_ABOVE_ALARM_LIMIT2,
  MINOR_ABOVE_ALARM_LIMIT3,
  MINOR_ABOVE_ALARM_LIMIT4,
  MINOR_URGENCYBTN_ON,
  MINOR_URGENCYBTN_OFF,
  MINOR_POWER_ON      = 0x100,
  MINOR_POWER_OFF,
  MINOR_WDT_RESET,
  MINOR_LOW_BATTERY_VOLTAGE,
  MINOR_AC_LOSS,
  MINOR_AC_RESTORE,
  MINOR_RTC_EXCEPTION,
  MINOR_NETWORK_CONNECT_FAILURE,
  MINOR_NETWORK_CONNECT_RESTORE,
  MINOR_TEL_LINE_CONNECT_FAILURE,
  MINOR_TEL_LINE_CONNECT_RESTORE,
  MINOR_EXPANDER_BUS_LOSS,
  MINOR_EXPANDER_BUS_RESTORE,
  MINOR_KEYPAD_BUS_LOSS,
  MINOR_KEYPAD_BUS_RESTORE,
  MINOR_SENSOR_FAILURE,
  MINOR_SENSOR_RESTORE,
  MINOR_RS485_CONNECT_FAILURE,
  MINOR_RS485_CONNECT_RESTORE,
  MINOR_GUARD         = 0x200,
  MINOR_UNGUARD,
  MINOR_BYPASS,
  MINOR_DURESS_ACCESS,
  MINOR_ALARMHOST_LOCAL_REBOOT,
  MINOR_ALARMHOST_REMOTE_REBOOT,
  MINOR_ALARMHOST_LOCAL_UPGRADE,
  MINOR_ALARMHOST_REMOTE_UPGRADE,
  MINOR_RECOVERY_DEFAULT_PARAM,
  MINOR_ALARM_OUTPUT,
  MINOR_ACCESS_OPEN,
  MINOR_ACCESS_CLOSE,
  MINOR_SIREN_OPEN,
  MINOR_SIREN_CLOSE,
  MINOR_MOD_ZONE_CONFIG,
  MINOR_MOD_ALARMOUT_CONIFG,
  MINOR_MOD_ANALOG_CONFIG,
  MINOR_RS485_CONFIG,
  MINOR_PHONE_CONFIG,
  MINOR_ADD_ADMIN,
  MINOR_MOD_ADMIN_PW,
  MINOR_DEL_ADMIN,
  MINOR_ADD_NETUSER,
  MINOR_MOD_NETUSER_PW,
  MINOR_DEL_NETUSER,
  MINOR_ADD_OPERATORUSER,
  MINOR_MOD_OPERATORUSER_PW,
  MINOR_DEL_OPERATORUSER,
  MINOR_ADD_KEYPADUSER,
  MINOR_DEL_KEYPADUSER,
  MINOR_REMOTEUSER_LOGIN,
  MINOR_REMOTEUSER_LOGOUT,
  MINOR_REMOTE_GUARD,
  MINOR_REMOTE_UNGUARD,
  MINOR_MOD_HOST_CONFIG,
  MINOR_RESTORE_BYPASS,
  MINOR_SCHOOLTIME_IRGI_B =0x300,
  MINOR_SCHOOLTIME_SDK,
  MINOR_SCHOOLTIME_SELFTEST
}ALARMHOST_MINOR_TYPE
根据不同的主类型的次类型定义说明如下：
主类型的宏定义 | 含义
ALARMHOST_MAJOR_ALARM | 报警
次类型的宏定义 | 含义
MINOR_SHORT_CIRCUIT | 短路报警
MINOR_BROKEN_CIRCUIT | 断路报警
MINOR_ALARM_RESET | 报警复位
MINOR_ALARM_NORMAL | 报警恢复正常
MINOR_PASSWORD_ERROR | 密码错误（连续次输入密码错误）
MINOR_ID_CARD_ILLEGALLY | 非法感应卡ID
MINOR_KEYPAD_REMOVE | 键盘防拆
MINOR_KEYPAD_REMOVE_RESTORE | 键盘防拆复位
MINOR_DEV_REMOVE | 设备防拆
MINOR_DEV_REMOVE_RESTORE | 设备防拆复位
MINOR_BELOW_ALARM_LIMIT1 | 模拟量低于报警限
MINOR_BELOW_ALARM_LIMIT2 | 模拟量低于报警限
MINOR_BELOW_ALARM_LIMIT3 | 模拟量低于报警限
MINOR_BELOW_ALARM_LIMIT4 | 模拟量低于报警限
MINOR_ABOVE_ALARM_LIMIT1 | 模拟量高于报警限
MINOR_ABOVE_ALARM_LIMIT2 | 模拟量高于报警限
MINOR_ABOVE_ALARM_LIMIT3 | 模拟量高于报警限
MINOR_ABOVE_ALARM_LIMIT4 | 模拟量高于报警限
MINOR_URGENCYBTN_ON | 紧急按钮按下
MINOR_URGENCYBTN_OFF | 紧急按钮复位

主类型的宏定义 | 含义
ALARMHOST_MAJOR_EXCEPTION | 异常
次类型的宏定义 | 含义
MINOR_POWER_ON | 上电
MINOR_POWER_OFF | 掉电
MINOR_WDT_RESET | WDT 复位
MINOR_LOW_BATTERY_VOLTAGE | 蓄电池电压低
MINOR_AC_LOSS | 交流电断电
MINOR_AC_RESTORE | 交流电恢复
MINOR_RTC_EXCEPTION | RTC实时时钟异常
MINOR_NETWORK_CONNECT_FAILURE | 网络连接断开
MINOR_NETWORK_CONNECT_RESTORE | 网络连接恢复
MINOR_TEL_LINE_CONNECT_FAILURE | 电话线连接断开
MINOR_TEL_LINE_CONNECT_RESTORE | 电话线连接恢复
MINOR_EXPANDER_BUS_LOSS | 扩展总线模块掉线
MINOR_EXPANDER_BUS_RESTORE | 扩展总线模块掉线恢复
MINOR_KEYPAD_BUS_LOSS | 键盘总线模块掉线
MINOR_KEYPAD_BUS_RESTORE | 键盘总线模块掉线恢复
MINOR_SENSOR_FAILURE | 模拟量传感器故障
MINOR_SENSOR_RESTORE | 模拟量传感器恢复
MINOR_RS485_CONNECT_FAILURE | RS485通道连接断开
MINOR_RS485_CONNECT_RESTORE | RS485通道连接断恢复

主类型的宏定义 | 含义
ALARMHOST_MAJOR_OPERATE | 操作
次类型的宏定义 | 含义
MINOR_GUARD | 开机
MINOR_UNGUARD | 撤防
MINOR_BYPASS | 旁路
MINOR_DURESS_ACCESS | 挟持
MINOR_ALARMHOST_LOCAL_REBOOT | 本地重启
MINOR_ALARMHOST_REMOTE_REBOOT | 远程重启
MINOR_ALARMHOST_LOCAL_UPGRADE | 本地升级
MINOR_ALARMHOST_REMOTE_UPGRADE | 远程升级
MINOR_RECOVERY_DEFAULT_PARAM | 恢复默认参数
MINOR_ALARM_OUTPUT | 控制报警输出
MINOR_ACCESS_OPEN | 控制门禁开
MINOR_ACCESS_CLOSE | 控制门禁关
MINOR_SIREN_OPEN | 控制警号开
MINOR_SIREN_CLOSE | 控制警号关
MINOR_MOD_ZONE_CONFIG | 修改防区设置
MINOR_MOD_ALARMOUT_CONIFG | 控制报警输出配置
MINOR_MOD_ANALOG_CONFIG | 修改模拟量配置
MINOR_RS485_CONFIG | 修改通道配置
MINOR_PHONE_CONFIG | 修改拨号配置
MINOR_ADD_ADMIN | 增加管理员
MINOR_MOD_ADMIN_PW | 修改管理员密码
MINOR_DEL_ADMIN | 删除管理员
MINOR_ADD_NETUSER | 增加后端操作员
MINOR_MOD_NETUSER_PW | 修改后端操作员密码
MINOR_DEL_NETUSER | 删除后端操作员
MINOR_ADD_OPERATORUSER | 增加前端操作员
MINOR_MOD_OPERATORUSER_PW | 修改前端操作员密码
MINOR_DEL_OPERATORUSER | 删除前端操作员
MINOR_ADD_KEYPADUSER | 增加键盘/读卡器用户
MINOR_DEL_KEYPADUSER | 删除键盘/读卡器用户
MINOR_REMOTEUSER_LOGIN | 远程用户登陆
MINOR_REMOTEUSER_LOGOUT | 远程用户注销
MINOR_REMOTE_GUARD | 远程布防
MINOR_REMOTE_UNGUARD | 远程撤防
MINOR_MOD_HOST_CONFIG | 修改主机配置
MINOR_RESTORE_BYPASS | 旁路恢复

主类型的宏定义 | 含义
ALARMHOST_MAJOR_EVENT | 事件
次类型的宏定义 | 含义
MINOR_SCHOOLTIME_IRGI_B | B码校时
MINOR_SCHOOLTIME_SDK | SDK校时
MINOR_SCHOOLTIME_SELFTEST | 定时自检校时
struStartTime
开始时间
struEndTime
结束时间
byRes
保留

See Also

NET_DVR_FindAlarmHostLog


NET_DVR_ALARMHOSTDIALCFG

拨号参数配置结构体。

struct{
  DWORD                        dwSize;
  NET_DVR_PHONECENTERDIALCFG   struPhoneCenterParam[MAX_CENTERNUM];
  WORD                         wReportPeriod;
  WORD                         wFirstReportTime;
  BYTE                         byReportValid;
  BYTE                         byRes[19];
}NET_DVR_ALARMHOSTDIALCFG, *LPNET_DVR_ALARMHOSTDIALCFG;

Members

dwSize
结构体大小
struPhoneCenterParam
中心参数
wReportPeriod
测试报告上传周期，单位：小时，取值范围：1~168小时（即7天）
wFirstReportTime
从设备启动到第一条测试报告上传时间，取值范围：1~3600分钟
byReportValid
0- 不启用测试报告上传，1- 启用测试报告上传
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_ALARMHOSTDIALSETUPMODE

拨号启用方式配置结构体。

struct{
  DWORD                        dwSize;
  BYTE                         byEnableMode;
  BYTE                         byCallType;
  BYTE                         byRes1[14];
}NET_DVR_ALARMHOSTDIALSETUPMODE, *LPNET_DVR_ALARMHOSTDIALSETUPMODE;

Members

dwSize
结构体大小
byEnableMode
启用方式：0- 不启用，1- 一直启用，2- 网线断启用，正常时关闭
byCallType
上传中心方式：1- 单中心，2- 双中心，3- 一报一备
byRes1
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_ALARMIN_PARAM

报警输入参数结构体。

struct{
  DWORD               dwSize;
  BYTE                byName[NAME_LEN];
  WORD                wDetectorType;
  BYTE                byType;
  BYTE                byRes1;
  DWORD               dwParam;
  NET_DVR_SCHEDTIME   struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT];
  BYTE                byAssociateAlarmOut[MAX_ALARMHOST_ALARMOUT_NUM];
  BYTE                byAssociateSirenOut[8];
  BYTE                bySensitivityParam;
  BYTE                byArrayBypass;
  BYTE                byRes[50];
}NET_DVR_ALARMIN_PARAM, *LPNET_DVR_ALARMIN_PARAM;

Members

dwSize
结构体大小
byName
报警输入名称
wDetectorType
报警输入探测器类型，具体定义如下：
enum _DETECTOR_TYPE_{
  PANIC_BUTTON = 0,
  MAGNETIC_CONTACT,
  SMOKE_DETECTOR,
  ACTIVE_INFRARED_DETECTOR,
  PASSIVE_INFRARED_DETECTOR,
  GLASS_BREAK_DETECTOR,
  VIBRATION_DETECTOR,
  DUAL_TECHNOLOGY_PIR_DETECTOR,
  TRIPLE_TECHNOLOGY_PIR_DETECTOR,
  HUMIDITY_DETECTOR,
  TEMPERATURE_DETECTOR,
  COMBUSTIBLE_GAS_DETECTOR,
  OTHER_DETECTOR  = 0xffff
}DETECTOR_TYPE
PANIC_BUTTON
紧急开关
MAGNETIC_CONTACT
门磁开关
SMOKE_DETECTOR
烟感探测器
ACTIVE_INFRARED_DETECTOR
主动红外探测器
PASSIVE_INFRARED_DETECTOR
被动红外探测器
GLASS_BREAK_DETECTOR
玻璃破碎探测器
VIBRATION_DETECTOR
震动探测器
DUAL_TECHNOLOGY_PIR_DETECTOR
双鉴移动探测器
TRIPLE_TECHNOLOGY_PIR_DETECTOR
三技术探测器
HUMIDITY_DETECTOR
湿度探测器
TEMPERATURE_DETECTOR
温感探测器
COMBUSTIBLE_GAS_DETECTOR
可燃气体探测器
OTHER_DETECTOR
其他探测器
byType
防区报警类型，0- 即时防区，1- 24小时防区，2- 延时防区，3- 内部防区，4- 钥匙布撤防防区
byRes1
保留
dwParam
防区参数，延时防区延时多长时间
struAlarmTime
布防时间时间段
byAssociateAlarmOut
报警输入关联报警输出
byAssociateSirenOut
关联警号输出，数组0表示警号1。值为1表示输出，0表示不输出
bySensitivityParam
防区灵敏度参数：0- 10ms，1- 250ms，2- 500ms，3- 750ms
byArrayBypass
是否加入旁路组：0- 不支持组旁路，1- 支持组旁路
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_ALARMIN_SETUP

报警输入口参数结构体。

struct{
  BYTE           byAssiciateAlarmIn[MAX_ALARMHOST_ALARMIN_NUM];
  BYTE           byRes[100];
}NET_DVR_ALARMIN_SETUP, *LPNET_DVR_ALARMIN_SETUP;

Members

byAssiciateAlarmIn
报警输入通道，数组下标0对应报警输入口1，依次类推
byRes
保留

See Also

NET_DVR_AlarmHostSetupAlarmChan
NET_DVR_AlarmHostCloseAlarmChan
NET_DVR_BypassAlarmChan
NET_DVR_UnBypassAlarmChan


NET_DVR_ALARMINCFG

报警输入参数结构体。

struct{
  DWORD                         dwSize;
  BYTE                          sAlarmInName[NAME_LEN];
  BYTE                          byAlarmType;
  BYTE                          byAlarmInHandle;
  BYTE                          byChannel;
  BYTE                          byRes1;
  NET_DVR_HANDLEEXCEPTION       struAlarmHandleType;
  NET_DVR_SCHEDTIME             struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT];
  BYTE                          byRelRecordChan[MAX_CHANNUM];
  BYTE                          byEnablePreset[MAX_CHANNUM];
  BYTE                          byPresetNo[MAX_CHANNUM];
  BYTE                          byEnableCruise[MAX_CHANNUM];
  BYTE                          byCruiseNo[MAX_CHANNUM];
  BYTE                          byEnablePtzTrack[MAX_CHANNUM];
  BYTE                          byPTZTrack[MAX_CHANNUM];
}NET_DVR_ALARMINCFG,*LPNET_DVR_ALARMINCFG;

Members

dwSize
结构体大小
sAlarmInName
名称
byAlarmType
报警器类型：0-常开，1-常闭
byAlarmInHandle
是否处理：0-不处理，1-处理
byChannel
报警输入触发智能识别通道
byRes1
保留
struAlarmHandleType
处理方式
struAlarmTime
布防时间参数
byRelRecordChan
报警触发的录象通道,为1表示触发该通道
byEnablePreset
是否调用预置点：0-否，1-是
byPresetNo
调用的云台预置点序号，一个报警输入可以调用多个通道的云台预置点
byEnableCruise
是否调用巡航：0-否，1-是
byCruiseNo
巡航路径
byEnablePtzTrack
是否调用轨迹：0-否，1-是
byPTZTrack
调用的云台的轨迹序号

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_ALARMINCFG_V30


NET_DVR_ALARMINCFG_V30

报警输入参数结构体。

struct{
  DWORD                            dwSize;
  BYTE                             sAlarmInName[NAME_LEN];
  BYTE                             byAlarmType;
  BYTE                             byAlarmInHandle;
  BYTE                             byChannel;
  BYTE                             byRes1;
  NET_DVR_HANDLEEXCEPTION_V30      struAlarmHandleType;
  NET_DVR_SCHEDTIME                struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];
  BYTE                             byRelRecordChan[MAX_CHANNUM_V30];
  BYTE                             byEnablePreset[MAX_CHANNUM_V30];
  BYTE                             byPresetNo[MAX_CHANNUM_V30];
  BYTE                             byRes2[192];
  BYTE                             byEnableCruise[MAX_CHANNUM_V30];
  BYTE                             byCruiseNo[MAX_CHANNUM_V30];
  BYTE                             byEnablePtzTrack[MAX_CHANNUM_V30];
  BYTE                             byPTZTrack[MAX_CHANNUM_V30];
  BYTE                             byRes3[16];
}NET_DVR_ALARMINCFG_V30,*LPNET_DVR_ALARMINCFG_V30;

Members

dwSize
结构体大小
sAlarmInName
名称
byAlarmType
报警器类型：0-常开，1-常闭
byAlarmInHandle
是否处理：0-不处理，1-处理
byChannel
报警输入触发智能识别通道
byRes1
保留，置为0
struAlarmHandleType
处理方式
struAlarmTime
布防时间参数
byRelRecordChan
报警触发的录象通道，为1表示触发该通道
byEnablePreset
通道是否启动调用预置点（每个数组对应一个通道）：0-否，1-是
byPresetNo
通道调用的云台预置点序号，一个报警输入可以调用多个通道的云台预置点（每个通道仅限一个预置点）
byRes2
保留，置为0
byEnableCruise
是否调用巡航：0-否，1-是
byCruiseNo
巡航路径
byEnablePtzTrack
是否调用轨迹：0-否，1-是
byPTZTrack
调用的云台的轨迹序号
byRes3
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_ALARMINCFG


NET_DVR_ALARMINFO

上传的报警信息结构体。

struct{
  DWORD     dwAlarmType;
  DWORD     dwAlarmInputNumber;
  DWORD     dwAlarmOutputNumber[MAX_ALARMOUT];
  DWORD     dwAlarmRelateChannel[MAX_CHANNUM];
  DWORD     dwChannel[MAX_CHANNUM];
  DWORD     dwDiskNumber[MAX_DISKNUM];
}NET_DVR_ALARMINFO,*LPNET_DVR_ALARMINFO;

Members

dwAlarmType
报警类型： 0－信号量报警； 1－硬盘满； 2－信号丢失； 3－移动侦测； 4－硬盘未格式化； 5－读写硬盘出错； 6－遮挡报警； 7－制式不匹配； 8－非法访问；
dwAlarmInputNumber
报警输入端口。当报警类型为9时该变量表示串口状态：0表示正常，0xffffffff表示异常
dwAlarmOutputNumber
触发的报警输出端口。当报警类型为信号量报警时，值为1表示该报警端口输出
dwAlarmRelateChannel
触发的录像通道。当报警类型为信号量报警时，值为1表示该通道录像，如dwAlarmRelateChannel[0]表示触发第1个通道录像
dwChannel
发生报警的通道。当报警类型为2或3时有效，如dwChannel[0]值为1表示第1个通道报警
dwDiskNumber
发生报警的硬盘。当报警类型为1，4，5时有效，dwDiskNumber[0]值为1表示1号硬盘异常

See Also

NET_DVR_SetDVRMessageCallBack_V30 NET_DVR_StartListen_V30


NET_DVR_ALARMINFO_DEV

设备报警信息结构体。

struct{
  DWORD            dwAlarmType;
  NET_DVR_TIME     struTime;
  BYTE             byRes[32];
  DWORD            dwNumber;
  WORD             *pNO;
}NET_DVR_ALARMINFO_DEV, *LPNET_DVR_ALARMINFO_DEV;

Members

dwAlarmType
报警信息类型：0- 编码器(通道)信号量报警，1- 私有卷二损坏，2- NVR服务退出，3- 编码器状态异常，4- 系统时钟异常，5-录像卷剩余容量过低， 6- 编码器(通道)移动侦测报警，7-编码器(通道)遮挡报警
struTime
报警时间
byRes
保留，置为0
dwNumber
发生报警的通道数目
pNO
dwNumber个WORD; 每个WORD表示一个通道号，或者磁盘号

Remarks

当类型为0、3、6、7时，可能会有通道号；当类型为5时，可能会有磁盘号。可表示的值范围为0~65535。

See Also

NET_DVR_SetDVRMessageCallBack_V30 NET_DVR_StartListen_V30


NET_DVR_ALARMINFO_V30

上传的报警信息结构体。

struct{
  DWORD     dwAlarmType;
  DWORD     dwAlarmInputNumber;
  BYTE      dwAlarmOutputNumber[MAX_ALARMOUT_V30];
  BYTE      dwAlarmRelateChannel[MAX_CHANNUM_V30];
  BYTE      dwChannel[MAX_CHANNUM_V30];
  BYTE      dwDiskNumber[MAX_DISKNUM_V30];
}NET_DVR_ALARMINFO_V30,*LPNET_DVR_ALARMINFO_V30;

Members

dwAlarmType
报警类型： 0－信号量报警； 1－硬盘满； 2－信号丢失； 3－移动侦测； 4－硬盘未格式化； 5－读写硬盘出错； 6－遮挡报警； 7－制式不匹配； 8－非法访问； 9－视频信号异常； 10-录像异常； 11-智能场景变化； 12-阵列异常； 13-前端/录像分辨率不匹配
dwAlarmInputNumber
报警输入端口
dwAlarmOutputNumber
触发的报警输出端口。当报警类型为信号量报警时，值为1表示该报警端口输出
dwAlarmRelateChannel
触发的录像通道。当报警类型为信号量报警时，值为1表示该通道录像，如dwAlarmRelateChannel[0]表示触发第1个通道录像
dwChannel
发生报警的通道。当报警类型为2、3、6、9、10时有效，如dwChannel[0]值为1表示第1个通道报警
dwDiskNumber
发生报警的硬盘。当报警类型为1，4，5时有效，dwDiskNumber[0]值为1表示1号硬盘异常

See Also

NET_DVR_SetDVRMessageCallBack_V30 NET_DVR_StartListen_V30


NET_DVR_ALARMOUT_PARAM

报警输出参数结构体。

struct{
  DWORD               dwSize;
  BYTE                byName[NAME_LEN];
  WORD                wDelay;
  BYTE                byRes1[2];
  BYTE                byAssociateAlarmIn[MAX_ALARMHOST_ALARMIN_NUM];
  BYTE                byRes2[60];
}NET_DVR_ALARMOUT_PARAM, *LPNET_DVR_ALARMOUT_PARAM;

Members

dwSize
结构体大小
byName
报警输出名称
wDelay
输出延迟，单位：秒。取值范围：0~3599s，0表示一直有输出
byRes1
保留
byAssociateAlarmIn
报警输出跟随的报警输入通道
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_ALARMOUTCFG

报警输出参数结构体。

struct{
  DWORD                   dwSize;
  BYTE                    sAlarmOutName[NAME_LEN];
  DWORD                   dwAlarmOutDelay;
  NET_DVR_SCHEDTIME       struAlarmOutTime[MAX_DAYS][MAX_TIMESEGMENT];
}NET_DVR_ALARMOUTCFG,*LPNET_DVR_ALARMOUTCFG;

Members

dwSize
结构体大小
sAlarmOutName
名称
dwAlarmOutDelay
输出信号状态维持时间，0-5秒，1-10秒，2-30秒，3-1分钟，4-2分钟，5-5分钟，6-10分钟，7-手动，0xff-为无限（需手动关闭）
struAlarmOutTime
报警输出激活时间段

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_ALARMOUTCFG_V30


NET_DVR_ALARMOUTCFG_V30

报警输出参数结构体。

struct{
  DWORD                   dwSize;
  BYTE                    sAlarmOutName[NAME_LEN];
  DWORD                   dwAlarmOutDelay;
  NET_DVR_SCHEDTIME       struAlarmOutTime[MAX_DAYS][MAX_TIMESEGMENT_V30];
  BYTE                    byRes[16];
}NET_DVR_ALARMOUTCFG_V30,*LPNET_DVR_ALARMOUTCFG_V30;

Members

dwSize
结构体大小
sAlarmOutName
名称
dwAlarmOutDelay
输出信号状态维持时间，0-5秒，1-10秒，2-30秒，3-1分钟，4-2分钟，5-5分钟，6-10分钟，7-手动，0xff-为无限（需手动关闭）
struAlarmOutTime
报警输出激活时间段
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_ALARMOUTCFG


NET_DVR_ALARMOUTSTATUS

报警输出状态结构体。

struct{
  BYTE      Output[MAX_ALARMOUT];
}NET_DVR_ALARMOUTSTATUS,*LPNET_DVR_ALARMOUTSTATUS;

Members

Output
报警输出口的状态：0-无效，1-有效

See Also

NET_DVR_GetAlarmOut


NET_DVR_ALARMOUTSTATUS_V30

报警输出状态结构体。

struct{
  BYTE      Output[MAX_ALARMOUT_V30];
}NET_DVR_ALARMOUTSTATUS_V30,*LPNET_DVR_ALARMOUTSTATUS_V30;

Members

Output
报警输出口的状态：0-无效，1-有效

See Also

NET_DVR_GetAlarmOut_V30


NET_DVR_ALARMSETUPREQUESTPARAM

布防请求参数结构体。

struct{
  NET_DVR_IPADDR  struCuIp;
  WORD            wPort;
  BYTE            byRes[2];
}NET_DVR_ALARMSETUPREQUESTPARAM,*LPNET_DVR_ALARMSETUPREQUESTPARAM;

Members

struCuIp
CU端IP地址
wPort
CU端口号
byRes
保留

See Also

NET_DVR_AlarmSetupRequest


NET_DVR_ALARMSUBSYSTEMPARAM

划分子系统结构体。

struct{
  DWORD                              dwSize;
  WORD                               wEnterDelay;
  WORD                               wExitDealy;
  BYTE                               byJointAlarmIn[MAX_ALARMHOST_ALARMIN_NUM];
  BYTE                               byJointKeyboard[MAX_ALARMHOSTKEYBOARD];
  BYTE                               byRes[80];
}NET_DVR_ALARMSUBSYSTEMPARAM, *LPNET_DVR_ALARMSUBSYSTEMPARAM;

Members

dwSize
结构体大小
wEnterDelay
进入延时，单位：秒，取值范围：10~150。动环报警主机和自助行报警主机的延时时间，在NET_DVR_ALARMIN_PARAM中的dwParam来设置延时时间
wExitDealy
退出延时，单位：秒，取值范围：10~300
byJointAlarmIn
按字节，表示子系统关联的报警输入通道号，0-不加入，1-加入
byJointKeyboard
按字节，表示支持的键盘号，0-不加入，1-加入
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

NET_DVR_GetDeviceAbility


NET_DVR_ALLDECSUBSYSTEMJOININFO

视频综合平台解码子系统参数结构体。

struct{
  DWORD                             dwSize;
  NET_DVR_SINGLESUBSYSTEMJOININFO   struSingleSubSystemJoinInfo[MAX_SUBSYSTEM_NUM];
  BYTE                              byRes[8];
}NET_DVR_ALLDECSUBSYSTEMJOININFO, *LPNET_DVR_ALLDECSUBSYSTEMJOININFO;

Members

dwSize
结构体大小
struSingleSubSystemJoinInfo
单个子系统参数结构体
byRes
保留

See Also

NET_DVR_MatrixGetSubDecSystemJoinInfo


NET_DVR_AP_INFO

无线网络资源参数子结构体。

struct{
  char    sSsid[IW_ESSID_MAX_SIZE];
  DWORD   dwMode;
  DWORD   dwSecurity;
  DWORD   dwChannel;
  DWORD   dwSignalStrength;
  DWORD   dwSpeed;
}NET_DVR_AP_INFO,*LPNET_DVR_AP_INFO;

Members

sSsid
SSID
dwMode
工作模式：0-mange 模式，1-ad-hoc模式
dwSecurity
安全模式：0 不加密，1 wep加密，2 wpa-psk，3 wpa-Enterprise
dwChannel
通道号
dwSignalStrength
0-100信号由最弱变为最强
dwSpeed
速率，单位是0.01mbps

See Also

NET_DVR_AP_INFO_LIST


NET_DVR_AP_INFO_LIST

无线网络资源参数结构体。

struct{
  DWORD             dwSize;
  DWORD             dwCount;
  NET_DVR_AP_INFO   struApInfo[WIFI_MAX_AP_COUNT];
}NET_DVR_AP_INFO_LIST,*LPNET_DVR_AP_INFO_LIST;

Members

dwSize
结构体大小
dwCount
无线AP数量，不超过20
struApInfo
AP参数结构体

See Also

NET_DVR_GetDVRConfig


NET_DVR_AREAINFOCFG

籍贯参数结构体。

struct{
  WORD         wNationalityID;
  WORD         wProvinceID;
  WORD         wCityID;
  WORD         wCountyID;
  BYTE         byRes[4];
}NET_DVR_AREAINFOCFG, *LPNET_DVR_AREAINFOCFG;

Members

wNationalityID
国籍
wProvinceID
省
wCityID
市
wCountyID
县
byRes
保留

See Also

NET_VCA_HUMAN_ATTRIBUTE


NET_DVR_ARRAY_INFO

单个阵列参数结构体。

struct{
  WORD                wArrayID;
  BYTE                byRaidMode;
  BYTE                byStatus;
  DWORD               dwHCapacity;
  DWORD               dwLCapacity;
  DWORD               dwHFreeSpace;
  DWORD               dwLFreeSpace;
  BYTE                byArrayName[MAX_NAMELEN];
  BYTE                byPDCount;
  BYTE                bySpareCount;
  BYTE                byRes1[2];
  WORD                wPDSlots[SUPPORT_PD_NUM];
  WORD                wSparePDSlots[SUPPORT_PD_NUM];
  NET_DVR_BGA_INFO    struBgaInfo;
  BYTE                byRes2[80];
}NET_DVR_ARRAY_INFO, *LPNET_DVR_ARRAY_INFO;

Members

wArrayID
阵列ID
byRaidMode
RAID类型，具体定义如下：
enum _RAID_MODE_{
  RAID0 = 1,
  RAID1,
  RAID10,
  RAID1E,
  RAID5,
  RAID6,
  RAID50,
  JBOD,
  RAID60
}RAID_MODE
RAID0
RAID0
RAID1
RAID1类型
RAID10
RAID10类型
RAID1E
RAID1E类型
RAID5
RAID5类型
RAID6
RAID6类型
RAID50
RAID50类型
JBOD
JBOD类型
RAID60
RAID60类型
byStatus
阵列状态：0-在线，1-磁盘丢失，2-不在线
dwHCapacity
阵列容量高32位(单位kb)
dwLCapacity
磁盘容量低32位
dwHFreeSpace
阵列剩余空间高32位
dwLFreeSpace
阵列剩余空间低32位
byArrayName
阵列名称
byPDCount
物理磁盘数目
bySpareCount
热备数目
byRes1
保留
wPDSlots
物理磁盘索引
wSparePDSlots
热备磁盘索引
struBgaInfo
后台任务运行状态
byRes2
保留，置为0

See Also

NET_DVR_ARRAY_LIST


NET_DVR_ARRAY_LIST

阵列参数结构体。

struct{
  DWORD                 dwSize;
  DWORD                 dwCount;
  NET_DVR_ARRAY_INFO    struArrayInfo[SUPPORT_ARRAY_NUM];
}NET_DVR_ARRAY_LIST, *LPNET_DVR_ARRAY_LIST;

Members

dwSize
结构体大小
dwCount
阵列个数
struArrayInfo
单个阵列信息

See Also

NET_DVR_GetArrayList


NET_DVR_ARRAY_SPACE_ALLOC_INFO

虚拟磁盘分配参数结构体。

struct{
  BYTE               byVDSlotCount;
  BYTE               byRes1[3];
  NET_DVR_VD_SLOT    struVDSlots[SUPPORT_VD_NUM];
}NET_DVR_ARRAY_SPACE_ALLOC_INFO, *LPNET_DVR_ARRAY_SPACE_ALLOC_INFO;

Members

byVDSlotCount
所属阵列的虚拟磁盘个数
byRes1
保留
struVDSlots
单个虚拟磁盘阵列分配信息

See Also

NET_DVR_GetArraySpaceAlloc


NET_DVR_ATM_FRAMEFORMAT_V30

ATM协议配置参数结构体。

struct{
  DWORD                                  dwSize;
  BYTE                                   byEnable;
  BYTE                                   byInputMode;
  BYTE                                   byRes1[34];
  NET_DVR_IPADDR                         struAtmIp;
  WORD                                   wAtmPort;
  BYTE                                   byRes2[2];
  DWORD                                  dwAtmType;
  NET_DVR_ATM_USER_DEFINE_PROTOCOL       struAtmUserDefineProtocol;
  BYTE                                   byRes3[8];
}NET_DVR_ATM_FRAMEFORMAT_V30, *LPNET_DVR_ATM_FRAMEFORMAT_V30;

Members

dwSize
结构大小
byEnable
ATM功能是否启用，0-不启用；1-启用
byInputMode
输入方式:0-网络监听、1网络协议、2-串口监听、3-串口协议
byRes1
保留
struAtmIp
ATM 机IP地址，输入方式为网络监听时使用
wAtmPort
端口号，输入方式为网络协议时使用
byRes2
保留
dwAtmType
ATM协议类型，从NET_DVR_ATM_PROTOCOL结构中获取
struAtmUserDefineProtocol
用户自定义协议，当ATM协议类型为自定义时需要使用该参数
byRes3
保留

See Also

NET_DVR_GetAtmFrameFormat_V30 NET_DVR_SetAtmFrameFormat_V30


NET_DVR_ATM_PACKAGE_ACTION

ATM报文交易行为信息结构体。

struct{
  NET_DVR_PACKAGE_LOCATION      struPackageLocation;
  NET_DVR_OSD_POSITION          struOsdPosition;
  NET_DVR_FRAMETYPECODE         struActionCode;
  NET_DVR_FRAMETYPECODE         struPreCode;
  BYTE                          byActionCodeMode;
  BYTE                          byRes[7];
}NET_DVR_ATM_PACKAGE_ACTION, *LPNET_DVR_ATM_PACKAGE_ACTION;

Members

struPackageLocation
报文位置信息
struOsdPosition
OSD叠加位置信息
struActionCode
交易类型行为码
struPreCode
叠加字符前的字符
byActionCodeMode
交易类型行为码模式，0-ASCII；1-HEX
byRes
保留

See Also

NET_DVR_ATM_USER_DEFINE_PROTOCOL


NET_DVR_ATM_PACKAGE_DATE

ATM报文日期信息结构体。

struct{
  NET_DVR_PACKAGE_LOCATION      struPackageLocation;
  NET_DVR_DATE_FORMAT           struDateForm;
  NET_DVR_OSD_POSITION          struOsdPosition;
  BYTE                          res[8];
}NET_DVR_ATM_PACKAGE_DATE, *LPNET_DVR_ATM_PACKAGE_DATE;

Members

struPackageLocation
日期在报文中的位置
struDateForm
日期显示格式
struOsdPosition
OSD叠加位置信息
res
保留

See Also

NET_DVR_ATM_USER_DEFINE_PROTOCOL


NET_DVR_ATM_PACKAGE_OTHERS

ATM其他报文信息结构体（包括卡号、交易金额和交易序号信息）。

struct{
  NET_DVR_PACKAGE_LOCATION      struPackageLocation;
  NET_DVR_PACKAGE_LENGTH        struPackageLength;
  NET_DVR_OSD_POSITION          struOsdPosition;
  NET_DVR_FRAMETYPECODE         struPreCode;
  BYTE                          res[8];
}NET_DVR_ATM_PACKAGE_OTHERS, *LPNET_DVR_ATM_PACKAGE_OTHERS;

Members

struPackageLocation
报文位置信息
struPackageLength
报文长度信息
struOsdPosition
OSD叠加位置信息
struPreCode
叠加字符前的字符信息
res
保留

See Also

NET_DVR_ATM_USER_DEFINE_PROTOCOL


NET_DVR_ATM_PACKAGE_TIME

ATM报文时间信息结构体。

struct{
  NET_DVR_PACKAGE_LOCATION      location;
  NET_DVR_TIME_FORMAT           struTimeForm;
  NET_DVR_OSD_POSITION          struOsdPosition;
  BYTE                          byRes[8];
}NET_DVR_ATM_PACKAGE_TIME, *LPNET_DVR_ATM_PACKAGE_TIME;

Members

location
时间在报文中的位置信息
struTimeForm
时间显示格式
struOsdPosition
OSD 叠加位置信息
byRes
保留

See Also

NET_DVR_ATM_USER_DEFINE_PROTOCOL


NET_DVR_ATM_PROTO_LIST

ATM协议信息列表结构体。

struct{
  DWORD                      dwAtmProtoNum;
  NET_DVR_ATM_PROTO_TYPE     struAtmProtoType[MAX_ATM_PROTOCOL_NUM];
}NET_DVR_ATM_PROTO_LIST,*LPNET_DVR_ATM_PROTO_LIST;

Members

dwAtmProtoNum
协议列表的协议个数
struAtmProtoType
协议信息列表

See Also

NET_DVR_ATM_PROTOCOL


NET_DVR_ATM_PROTO_TYPE

协议信息结构体。

struct{
  DWORD    dwAtmType;
  char     chDesc[ATM_DESC_LEN];
}NET_DVR_ATM_PROTO_TYPE, *LPNET_DVR_ATM_PROTO_TYPE;

Members

dwAtmType
ATM协议类型，同时作为索引序号，对应ATM协议配置结构NET_DVR_ATM_FRAMEFORMAT_V30中的dwAtmType参数，自定义协议时该值为1025
chDesc
ATM协议的简单描述

See Also

NET_DVR_ATM_PROTOCOL NET_DVR_ATM_PROTO_LIST


NET_DVR_ATM_PROTOCOL

ATM协议信息结构体。

struct{
  DWORD                          dwSize;
  NET_DVR_ATM_PROTO_LIST         struNetListenList;
  NET_DVR_ATM_PROTO_LIST         struSerialListenList;
  NET_DVR_ATM_PROTO_LIST         struNetProtoList;
  NET_DVR_ATM_PROTO_LIST         struSerialProtoList;
  NET_DVR_ATM_PROTO_TYPE         struCustomProto;
}NET_DVR_ATM_PROTOCOL, *LPNET_DVR_ATM_PROTOCOL;

Members

dwSize
结构体大小
struNetListenList
输入方式为网络监听时的协议描述
struSerialListenList
输入方式为串口监听时的协议描述
struNetProtoList
输入方式为网络协议时的协议描述
struSerialProtoList
输入方式为串口协议时的串口协议描述
struCustomProto
自定义协议描述

See Also

NET_DVR_GetAtmProtocol


NET_DVR_ATM_USER_DEFINE_PROTOCOL

ATM用户自定义协议信息结构体。

struct{
  NET_DVR_IDENTIFICAT           struIdentification;
  NET_DVR_FILTER                struFilter;
  NET_DVR_ATM_PACKAGE_OTHERS    struCardNoPara;
  NET_DVR_ATM_PACKAGE_ACTION    struTradeActionPara[MAX_ACTION_TYPE];
  NET_DVR_ATM_PACKAGE_OTHERS    struAmountPara;
  NET_DVR_ATM_PACKAGE_OTHERS    struSerialNoPara;
  NET_DVR_OVERLAY_CHANNEL       struOverlayChan;
  NET_DVR_ATM_PACKAGE_DATE      struRes1;
  NET_DVR_ATM_PACKAGE_TIME      struRes2;
  BYTE                          byRes3[124];
}NET_DVR_ATM_USER_DEFINE_PROTOCOL, *LPNET_DVR_ATM_USER_DEFINE_PROTOCOL;

Members

struIdentification
报文标志信息
struFilter
数据包过滤设置
struCardNoPara
叠加卡号设置
struTradeActionPara
叠加交易行为设置，数组下标0-7依次对应插卡、退卡、通道触发、查询、取款、存款、改密码和转账的参数配置
struAmountPara
叠加交易金额设置
struSerialNoPara
叠加交易序号设置
struOverlayChan
叠加通道设置
struRes1
保留
struRes2
保留
byRes3
保留

See Also

NET_DVR_ATM_FRAMEFORMAT_V30


NET_DVR_AUDIO_INPUT_PARAM

音频输入参数结构体。

struct{
  BYTE       byAudioInputType;
  BYTE       byres[7];
}NET_DVR_AUDIO_INPUT_PARAM, *LPNET_DVR_AUDIO_INPUT_PARAM;

Members

byAudioInputType
音频输入类型：0- mic in，1- line in
byres
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_AUXOUTCFG

报警辅助输出参数结构体。

struct{
  DWORD     dwSize;
  DWORD     dwAlarmOutChan;
  DWORD     dwAlarmChanSwitchTime;
  DWORD     dwAuxSwitchTime[MAX_AUXOUT];
  BYTE      byAuxOrder[MAX_AUXOUT][MAX_WINDOW];
}NET_DVR_AUXOUTCFG,*LPNET_DVR_AUXOUTCFG;

Members

dwSize
结构体大小
dwAlarmOutChan
选择报警弹出画面的输出通道：0-主输出，1-辅1，2-辅2，3-辅3，4-辅4
dwAlarmChanSwitchTime
报警通道切换时间，取值范围1s～10s
dwAuxSwitchTime
辅助输出轮巡切换时间：0－不切换，1－5秒，2－10秒，3－20秒，4－30秒，5－60秒，6－120秒，7-300秒
byAuxOrder
辅助输出预览顺序，0xff表示相应的窗口不预览

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_BACKLIGHT

智能高清IPC背光补偿参数结构体。

struct{
  BYTE       byBacklightMode;
  BYTE       byBacklightLevel;
  BYTE       byRes1[2];
  DWORD      dwPositionX1;
  DWORD      dwPositionY1;
  DWORD      dwPositionX2;
  DWORD      dwPositionY2;
  BYTE       byRes2[4];
}NET_DVR_BACKLIGHT, *LPNET_DVR_BACKLIGHT;

Members

byBacklightMode
背光补偿:0-off、1-UP、2-DOWN、3-LEFT、4-RIGHT、5-MIDDLE、6-自定义
byBacklightLevel
0x0-0xF
byRes1
保留
dwPositionX1
X坐标1
dwPositionY1
Y坐标1
dwPositionX2
X坐标2
dwPositionY2
Y坐标2
byRes2
保留

See Also

NET_DVR_CAMERAPARAMCFG


NET_DVR_BACKUP_NAME_PARAM

备份文件的参数结构体。

struct{
  DWORD                  dwFileNum;
  NET_DVR_FINDDATA_V30   struFileList[MAX_RECORD_FILE_NUM];
  BYTE                   byDiskDes[DESC_LEN_32];
  BYTE                   byWithPlayer;
  BYTE                   byContinue;
  BYTE                   byRes[34];
}NET_DVR_BACKUP_NAME_PARAM,*LPNET_DVR_BACKUP_NAME_PARAM;

Members

dwFileNum
文件个数
struFileList
录像文件的参数
byDiskDes
备份磁盘的描述
byWithPlayer
是否备份播放器，0-不备份，1-备份
byContinue
是否继续备份，0- 不继续，1- 继续
byRes
保留，置为0

Remarks

其中参数byDiskDes是由接口NET_DVR_GetDiskList获取的参数得到。

See Also

NET_DVR_BackupByName


NET_DVR_BACKUP_PICTURE_PARAM

图片备份参数结构体。

struct{
  DWORD                       dwSize;
  DWORD                       dwPicNum;
  NET_DVR_FIND_PICTURE        struPicture[MAX_RECORD_PICTURE_NUM];
  BYTE                        byDiskDes[DESC_LEN_32];
  BYTE                        byRes1;
  BYTE                        byContinue;
  BYTE                        byRes[34];
}NET_DVR_BACKUP_PICTURE_PARAM, *LPNET_DVR_BACKUP_PICTURE_PARAM;

Members

dwSize
结构体大小
dwPicNum
图片序号
struPicture
图片信息
byDiskDes
备份磁盘的描述
byRes1
保留
byContinue
是否继续备份：0- 不继续，1- 继续
byRes
保留

See Also

NET_DVR_BackupPicture


NET_DVR_BACKUP_TIME_PARAM

备份文件的参数结构体。

struct{
  LONG           lChannel;
  NET_DVR_TIME   struStartTime;
  NET_DVR_TIME   struStopTime;
  BYTE           byDiskDes[DESC_LEN_32];
  BYTE           byWithPlayer;
  BYTE           byContinue;
  BYTE           byRes[34];
}NET_DVR_BACKUP_TIME_PARAM,*LPNET_DVR_BACKUP_TIME_PARAM;

Members

lChannel
通道号
struStartTime
备份的起始时间
struStopTime
备份的结束时间
byDiskDes
备份磁盘的描述
byWithPlayer
是否备份播放器，0-不备份，1-备份
byContinue
是否继续备份，0- 不继续，1- 继续
byRes
保留，置为0

Remarks

对于审讯机设备byDiskDes和byWithPlayer参数无效，其他设备参数byDiskDes是由接口NET_DVR_GetDiskList获取。

See Also

NET_DVR_BackupByTime


NET_DVR_BASEMAP_CFG

原图参数结构体。

struct{
  BYTE    byScreenIndex;
  BYTE    byMapNum;
  BYTE    res[2];
  WORD    wSour_width;
  WORD    wSour_height;
}NET_DVR_BASEMAP_CFG,*LPNET_DVR_BASEMAP_CFG;

Members

byScreenIndex
屏幕的序号
byMapNum
被分割成了多少块
res
保留
wSour_width
原图片的宽度
wSour_height
原图片的高度

See Also

NET_DVR_PICTURECFG


NET_DVR_BEHAVIOR_IN_CALIBRATION

行为室内场景标定参数结构体。

struct{
  DWORD                   dwCalSampleNum;
  NET_DVR_IN_CAL_SAMPLE   struCalSample[MAX_SAMPLE_NUM];
  NET_DVR_CAMERA_PARAM    struCameraParam;
  BYTE                    byRes[16];
}NET_DVR_BEHAVIOR_IN_CALIBRATION, *LPNET_DVR_BEHAVIOR_IN_CALIBRATION;

Members

dwCalSampleNum
标定样本个数
struCalSample
样本参数
struCameraParam
摄像机参数
byRes
保留

Remarks

标定样本需要3-5个。

See Also

NET_DVR_CALIBRATION_PRARM_UNION


NET_DVR_BEHAVIOR_OUT_CALIBRATION

行为室外场景标定参数结构体。

struct{
  DWORD                  dwLineSegNum;
  NET_DVR_LINE_SEGMENT   struLineSegment[MAX_LINE_SEG_NUM];
  NET_DVR_CAMERA_PARAM   struCameraParam;
  BYTE                   byRes[20];
}NET_DVR_BEHAVIOR_OUT_CALIBRATION, *LPNET_DVR_BEHAVIOR_OUT_CALIBRATION;

Members

dwLineSegNum
样本线个数
struLineSegment
样本线参数
struCameraParam
摄像机参数
byRes
保留

Remarks

标定样本线需要4-8条线，用于获取摄像机相关参数。

See Also

NET_DVR_CALIBRATION_PRARM_UNION


NET_DVR_BGA_INFO

后台任务运行状态参数结构体。

struct{
  BYTE   byBga;
  BYTE   byBgaState;
  WORD   wBgaPercentage;
  BYTE   byRes[4];
}NET_DVR_BGA_INFO, *LPNET_DVR_BGA_INFO;

Members

byBga
后台任务及类型，具体定义如下：
enum _BGA_TYPE_{
  BGA_REBUILD           = 0x01,
  BGA_CONSISTENCY_FIX   = 0x02,
  BGA_CONSISTENCY_CHECK = 0x04,
  BGA_INIT_QUICK        = 0x08,
  BGA_INIT_BACK         = 0x10,
  BGA_MIGRATION         = 0x20,
  BGA_INIT_FORE         = 0x40,
  BGA_COPYBACK          = 0x80
}BGA_TYPE
BGA_REBUILD
重建
BGA_CONSISTENCY_FIX
一致性检查并修复
BGA_CONSISTENCY_CHECK
一致性检查
BGA_INIT_QUICK
初始化(快)
BGA_INIT_BACK
初始化(完全)
BGA_MIGRATION
迁移
BGA_INIT_FORE
初始化
BGA_COPYBACK
回迁
byBgaState
后台任务状态，具体定义如下：
enum _BGA_STATE_{
  BGA_STATE_NONE = 0,
  BGA_STATE_RUNNING,
  BGA_STATE_ABORTED,
  BGA_STATE_PAUSED
}BGA_STATE
BGA_STATE_NONE
无后台任务
BGA_STATE_RUNNING
后台任务正在运行
BGA_STATE_ABORTED
后台任务取消
BGA_STATE_PAUSED
后台任务暂停
wBgaPercentage
后台任务执行百分比
byRes2
保留，置为0

See Also

NET_DVR_ARRAY_INFO NET_DVR_VD_INFO


NET_DVR_BIGSCREENCFG

大屏拼接参数结构体。

struct{
  DWORD                     dwSize;
  BYTE                      byEnable;
  BYTE                      byModeX;
  BYTE                      byModeY;
  BYTE                      byMainDecodeSystem;
  BYTE                      byMainDecoderDispChan;
  BYTE                      byVideoStandard;
  BYTE                      byRes1[2];
  DWORD                     dwResolution;
  NET_DVR_SINGLESCREENCFG   struFollowSingleScreen[MAX_BIGSCREENNUM];
  BYTE                      byRes2[16];
}NET_DVR_BIGSCREENCFG, *LPNET_DVR_BIGSCREENCFG;

Members

dwSize
结构体大小
byEnable
大屏拼接使能：0- 不使能，1- 使能
byModeX
大屏拼接模式（byModeX*byModeY）：水平方向屏幕个数
byModeY
大屏拼接模式（byModeX*byModeY）：垂直方向屏幕个数
byMainDecodeSystem
主屏槽位号
byMainDecoderDispChan
主屏所用显示通道号(v1.1 netra版本新增：netra解码器有两个显示通道，都能够作为主屏）
byVideoStandard
视频制式（大屏每个子屏制式相同）：1- NTSC，2- PAL
byRes1
保留
dwResolution
屏幕分辨率，大屏每个子屏分辨率相同，一个大屏可能有几个显示通道共同输出，这时就会把相关显示通道都设为该分辨率
struFollowSingleScreen
大屏拼接单个子屏幕信息结构体
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_CALIBRATION_CFG

标定配置结构。

struct{
  DWORD                              dwSize;
  BYTE                               byEnable;
  BYTE                               byCalibrationType;
  BYTE                               byRes1[2];
  NET_DVR_CALIBRATION_PRARM_UNION    uCalibrateParam;
  BYTE                               byRes2[12];
}NET_DVR_CALIBRATION_CFG, *LPNET_DVR_CALIBRATION_CFG;

Members

dwSize
结构体大小
byEnable
是否启用标定，0-不启用，1-启用
byCalibrationType
标定类型，具体定义如下：
enum tagCALIBRATE_TYPE{
  PDC_CALIBRATE          = 0x01,
  BEHAVIOR_OUT_CALIBRATE = 0x02,
  BEHAVIOR_IN_CALIBRATE  = 0x03,
  ITS_CALBIRETE          = 0x04
}CALIBRATE_TYPE
PDC_CALIBRATE
人流量统计标定
BEHAVIOR_OUT_CALIBRATE
行为室外场景标定
BEHAVIOR_IN_CALIBRATE
行为室内场景标定
ITS_CALBIRETE
交通事件标定
byRes1
保留
uCalibrateParam
标定参数联合体
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_CALIBRATION_PRARM_UNION

标定参数联合体。

struct{
  BYTE                               byRes[240];
  NET_DVR_PDC_CALIBRATION            struPDCCalibration;
  NET_DVR_BEHAVIOR_OUT_CALIBRATION   struBehaviorOutCalibration;
  NET_DVR_BEHAVIOR_IN_CALIBRATION    struBehaviorInCalibration;
  NET_DVR_ITS_CALIBRATION            struITSCalibration;
}NET_DVR_CALIBRATION_PRARM_UNION, *LPNET_DVR_CALIBRATION_PRARM_UNION;

Members

byRes
保留
struPDCCalibration
人流量统计标定参数
struBehaviorOutCalibration
行为室外场景标定(主要应用于IVS等)
struBehaviorInCalibration
行为室内场景标定(主要应用IAS等)
struITSCalibration
ITS标定

See Also

NET_DVR_CALIBRATION_CFG


NET_DVR_CAMERA_DEHAZE_CFG

去雾参数结构体。

struct{
  DWORD    dwSize;
  BYTE     byDehazeMode;
  BYTE     byRes[7];
}NET_DVR_CAMERA_DEHAZE_CFG,*LPNET_DVR_CAMERA_DEHAZE_CFG;

Members

dwSize
结构体大小
byDehazeMode
去雾模式：0- 不启用，1- 自适应模式
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_CAMERA_PARAM

摄像机参数结构体。

struct{
  BYTE     byEnableHeight;
  BYTE     byEnableAngle;
  BYTE     byEnableHorizon;
  BYTE     byRes[5];
  float    fCameraHeight;
  float    fCameraAngle;
  float    fHorizon;
}NET_DVR_CAMERA_PARAM, *LPNET_DVR_CAMERA_PARAM;

Members

byEnableHeight
是否使能设置摄像机高度线，0-不使能，1-使能
byEnableAngle
是否使能设置摄像机俯仰角度，0-不使能，1-使能
byEnableHorizon
是否使能设置摄像机地平线，0-不使能，1-使能
byRes
保留
fCameraHeight
摄像机高度（单位：米），范围[2,50]
fCameraAngle
摄像机俯仰角度（单位：度），范围[1,89]
fHorizon
场景中的地平线，范围[0,100](标定获取的地平线值就表示地平线与图像下边缘的图像距离。比如，fHorizon为0.5表示在图像中心，fHorizon为1表示是在图像上边缘，fHorizon大于1表示在图像以上)

See Also

NET_DVR_BEHAVIOR_IN_CALIBRATION
NET_DVR_BEHAVIOR_OUT_CALIBRATION


NET_DVR_CAMERAPARAMCFG

前端参数配置结构体。

struct{
  DWORD                   dwSize;
  NET_DVR_VIDEOEFFECT     struVideoEffect;
  NET_DVR_GAIN            struGain;
  NET_DVR_WHITEBALANCE    struWhiteBalance;
  NET_DVR_EXPOSURE        struExposure;
  NET_DVR_GAMMACORRECT    struGammaCorrect;
  NET_DVR_WDR             struWdr;
  NET_DVR_DAYNIGHT        struDayNight;
  NET_DVR_BACKLIGHT       struBackLight;
  NET_DVR_NOISEREMOVE     struNoiseRemove;
  BYTE                    byPowerLineFrequencyMode;
  BYTE                    byIrisMode;
  BYTE                    byMirror;
  BYTE                    byDigitalZoom;
  BYTE                    byDeadPixelDetect;
  BYTE                    byBlackPwl;
  BYTE                    byEptzGate;
  BYTE                    byLocalOutputGate;
  BYTE                    byCoderOutputMode;
  BYTE                    byLineCoding;
  BYTE                    byDimmerMode;
  BYTE                    byPaletteMode;
  BYTE                    byEnhancedMode;
  BYTE                    byDynamicContrastEN;
  BYTE                    byDynamicContrast;
  BYTE                    byJPEGQuality;
  NET_DVR_CMOSMODECFG     struCmosModeCfg;
  BYTE                    byFilterSwitch;
  BYTE                    byFocusSpeed;
  BYTE                    byAutoCompensationInterval;
  BYTE                    bySceneMode;
}NET_DVR_CAMERAPARAMCFG, *LPNET_DVR_CAMERAPARAMCFG;

Members

dwSize
结构体大小
struVideoEffect
视频效果参数
struGain
增益参数
struWhiteBalance
白平衡参数
struExposure
曝光参数
struGammaCorrect
Gamma校正参数
struWdr
宽动态参数
struDayNight
日夜转换功能参数
struBackLight
背光补偿参数
struNoiseRemove
数字降噪参数
byPowerLineFrequencyMode
0-50HZ; 1-60HZ
byIrisMode
0 自动光圈;1 手动光圈
byMirror
镜像：0 关闭;1 左右;2 上下;3 中间
byDigitalZoom
数字缩放：0- 不启用，1- 启用。对于热成像仪，表示数字倍率：0- 关闭，1-×2，2-×4
byDeadPixelDetect
坏点检测是否启用，0-不启用，1-启用
byBlackPwl
黑电平补偿，0-255
byEptzGate
EPTZ开关变量：0-关闭电子云台；1-开启电子云台
byLocalOutputGate
本地输出开关变量：
0-本地输出关闭
1-本地BNC输出打开
2-HDMI输出关闭
20-HDMI_720P50输出开
21-HDMI_720P60输出开
22-HDMI_1080I60输出开
23-HDMI_1080I50输出开
24-HDMI_1080P24输出开
25-HDMI_1080P25输出开
26-HDMI_1080P30输出开
27-HDMI_1080P50输出开
28-HDMI_1080P60输出开
byCoderOutputMode
编码器fpga输出模式：0-直通；3-像素搬家
byLineCoding
是否开启行编码：0- 否，1- 是
byDimmerMode
调光模式：0- 半自动，1- 自动，适用于热成像仪
byPaletteMode
调色板：0- 白热，1- 黑热，2- 调色板2，…，8- 调色板8，适用于热成像仪
byEnhancedMode
增强方式（探测物体周边）：0- 不增强，1- 1，2- 2，3- 3，4- 4，适用于热成像仪
byDynamicContrastEN
动态对比度增强：0-不增强；1-增强
byDynamicContrast
动态对比度：0-100
byJPEGQuality
JPEG图像质量：0-100
struCmosModeCfg
CMOS模式下前端参数配置，镜头模式从能力集获取
byFilterSwitch
滤波开关：0- 不启用，1- 启用，适用于热成像仪
byFocusSpeed
镜头调焦速度，取值范围0~10，适用于热成像仪
byAutoCompensationInterval
定时自动快门补偿，取值范围1~120，单位：分钟，适用于热成像仪
bySceneMode
场景模式：0- 室外，1- 室内

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_CAPTURE_DAY

全天抓图计划结构体。

struct{
  BYTE    byAllDayCapture;
  BYTE    byCaptureType;
  BYTE    byRes[2];
}NET_DVR_CAPTURE_DAY, *LPNET_DVR_CAPTURE_DAY;

Members

byAllDayCapture
是否全天抓图
byCaptureType
抓图类型：0-定时抓图，1-移动侦测抓图，2-报警抓图，3-移动侦测或报警抓图，4-移动侦测和报警抓图，6-智能报警抓图
byRes
保留

See Also

NET_DVR_SCHED_CAPTURECFG


NET_DVR_CAPTURE_SCHED

时间段抓图布防计划结构体。

struct{
  NET_DVR_SCHEDTIME    struCaptureTime;
  BYTE                 byCaptureType;
  BYTE                 byRes[3];
}NET_DVR_CAPTURE_SCHED, *LPNET_DVR_CAPTURE_SCHED;

Members

struCaptureTime
抓图时间段
byCaptureType
抓图类型：0-定时抓图，1-移动侦测抓图，2-报警抓图，3-移动侦测或报警抓图，4-移动侦测和报警抓图，6-智能报警抓图
byRes
保留

See Also

NET_DVR_SCHED_CAPTURECFG


NET_DVR_CARDINFO

硬解码信息结构体。

struct{
  LONG                   lChannel;
  LONG                   lLinkMode;
  char                   *sMultiCastIP;
  NET_DVR_DISPLAY_PARA   struDisplayPara;
}NET_DVR_CARDINFO,*LPNET_DVR_CARDINFO;

Members

lChannel
通道号
lLinkMode
最高位(31)为0表示主码流，为1表示子码流，0－30位表示码流连接方式：0－TCP方式；1－UDP方式；2－多播方式；3－RTP方式；4－电话线；5－128k宽带；6－256k宽带；7－384k宽带；8－512k宽带
sMultiCastIP
多播组地址，取值为D类IP地址，即224.0.0.0到239.255.255.255之间，采用多播方式需要所在网络（交换机）支持
struDisplayPara
硬解码显示参数

See Also

NET_DVR_RealPlay_Card


NET_DVR_CB_POINT

标定点子结构体。

struct{
  NET_VCA_POINT     struPoint;
  NET_DVR_PTZPOS    struPtzPos;
  BYTE              byRes[8];
}NET_DVR_CB_POINT, LPNET_DVR_CB_POINT;

Members

struPoint
标定点，主摄像机（枪机），其值归一化到0-1
struPtzPos
球机输入的PTZ坐标
byRes
保留

See Also

NET_DVR_TRACK_CALIBRATION_PARAM


NET_DVR_CHAN_GROUP_RECORD_STATUS

一组通道录像状态信息结构体。

struct{
  DWORD                          dwSize;
  NET_DVR_CHANS_RECORD_STATUS    struChanStatus[64];
}NET_DVR_CHAN_GROUP_RECORD_STATUS,*LPNET_DVR_CHAN_GROUP_RECORD_STATUS;

Members

dwSize
结构体大小
struChanStatus
通道录像状态信息，一组64个通道

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_CHANNELSTATE

通道信息结构体。

struct{
  BYTE    byRecordStatic;
  BYTE    bySignalStatic;
  BYTE    byHardwareStatic;
  char    reservedData;
  DWORD   dwBitRate;
  DWORD   dwLinkNum;
  DWORD   dwClientIP[MAX_LINK];
}NET_DVR_CHANNELSTATE,*LPNET_DVR_CHANNELSTATE;

Members

byRecordStatic
通道是否在录像：0－不录像；1－录像
bySignalStatic
连接的信号状态：0－正常，1－信号丢失
byHardwareStatic
通道硬件状态：0－正常，1－异常（例如DSP异常）
reservedData
保留，置为0
dwBitRate
实际码率
dwLinkNum
连接的客户端个数
dwClientIP
连接的客户端IP地址(这里为网络字节序)

See Also

NET_DVR_WORKSTATE


NET_DVR_CHANNELSTATE_V30

通道状态信息结构体。

struct{
  BYTE             byRecordStatic;
  BYTE             bySignalStatic;
  BYTE             byHardwareStatic;
  BYTE             byRes1;
  DWORD            dwBitRate;
  DWORD            dwLinkNum;
  NET_DVR_IPADDR   struClientIP[MAX_LINK];
  DWORD            dwIPLinkNum;
  BYTE             byExceedMaxLink;
  BYTE             byRes[11];
}NET_DVR_CHANNELSTATE_V30,*LPNET_DVR_CHANNELSTATE_V30;

Members

byRecordStatic
通道是否在录像：0－不录像；1－录像
bySignalStatic
连接的信号状态：0－正常，1－信号丢失
byHardwareStatic
通道硬件状态：0－正常，1－异常（例如DSP异常）
byRes1
保留，置为0
dwBitRate
实际码率
dwLinkNum
连接的客户端个数
struClientIP
连接的客户端IP地址
dwIPLinkNum
如果该通道为IP接入，表示IP接入当前的连接数
byExceedMaxLink
是否超出了单路6路连接数 0 - 未超出, 1-超出
byRes
保留，置为0

See Also

NET_DVR_WORKSTATE_V30


NET_DVR_CHANS_RECORD_STATUS

通道录像状态信息结构体。

struct{
  BYTE     byValid;
  BYTE     byRecord;
  WORD     wChannelNum;
  DWORD    dwRelatedHD;
  BYTE     byRes[8];
}NET_DVR_CHANS_RECORD_STATUS,*LPNET_DVR_CHANS_RECORD_STATUS;

Members

byValid
是否有效：0- 无效，1- 有效
byRecord
录像状态(只读)：0- 不在录像，1- 在录像
wChannelNum
通道号，0xffff表示无效
dwRelatedHD
关联磁盘
byRes
保留，置为0

See Also

NET_DVR_CHAN_GROUP_RECORD_STATUS


NET_DVR_CLIENTINFO

预览参数结构体。

struct{
  LONG    lChannel;
  LONG    lLinkMode;
  HWND    hPlayWnd;
  char    *sMultiCastIP;
}NET_DVR_CLIENTINFO, *LPNET_DVR_CLIENTINFO;

Members

lChannel
通道号，1~32表示模拟通道1~32，9000系列混合型DVR和NVR等设备的IP通道从33开始。
lLinkMode
最高位(31)为0表示主码流，为1表示子码流；0～30位表示连接方式：0－TCP方式，1－UDP方式，2－多播方式，3－RTP方式，4- RTP over RTSP，5- RTSP over HTTP
hPlayWnd
播放窗口的句柄，为NULL表示不显示图像
sMultiCastIP
多播组地址

Remarks

Windows下该结构中的hPlayWnd参数若设置为NULL，则SDK仍取流，但不进行解码显示，所以仍可以录像。Linux下该结构中的hPlayWnd = {0}则SDK仍取流，不进行解码显示，所以仍可以录像，但是不能设置hPlayWnd = 0(即NULL)，否则非法结构地址会导致调用hPlayWnd.x等去判断的时候崩溃。
当客户选择普通协议传输时，若设备支持RTSP协议，SDK将直接转成RTSP方式连接设备。

Linux下，HWND定义如下：

typedef struct __PLAYRECT
{
    int x;        //显示框左上角横坐标
    int y;        //显示框左上角纵坐标
    int uWidth;   //显示框宽度
    int uHeight;  //显示框高度
}PLAYRECT;
typedef PLAYRECT HWND;

See Also

NET_DVR_RealPlay_V30


NET_DVR_CMOSMODECFG

CMOS模式下前端镜头配置。

struct{
  BYTE    byCaptureMod;
  BYTE    byBrightnessGate;
  BYTE    byCaptureGain1;
  BYTE    byCaptureGain2;
  DWORD   dwCaptureShutterSpeed1;
  DWORD   dwCaptureShutterSpeed2;
  BYTE    byRes[4];
}NET_DVR_CMOSMODECFG, *LPNET_DVR_CMOSMODECFG;

Members

byCaptureMod
抓拍模式：0-抓拍模式1；1-抓拍模式2
byBrightnessGate
亮度阈值
byCaptureGain1
抓拍增益1，0-100
byCaptureGain2
抓拍增益2，0-100
dwCaptureShutterSpeed1
抓拍快门速度1
dwCaptureShutterSpeed2
抓拍快门速度2
byRes
保留

See Also

NET_DVR_CAMERAPARAMCFG


NET_DVR_CMSPARAM

CMS平台参数结构体。

struct{
  DWORD              dwSize;
  NET_DVR_IPADDR     struCmsAddr;
  WORD               wCmsPort;
  BYTE               byRes1[2];
  BYTE               sDeviceID[NAME_LEN];
  BYTE               byPassword[PASSWD_LEN];
  NET_DVR_IPADDR     struPicServerAddr;
  WORD               wPicServerPort;
  WORD               wCmsUdpPort;
  BYTE               byRes2[12];
}NET_DVR_CMSPARAM,*LPNET_DVR_CMSPARAM;

Members

dwSize
结构体大小
struCmsAddr
注册服务器IP地址
wCmsPort
注册服务器端口
byRes1
保留
sDeviceID
设备ID
byPassword
设备密码
struPicServerAddr
图片服务器地址
wPicServerPort
图片服务器端口
wCmsUdpPort
CMS用于UDP外网查询的端口
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_CODESPLITTERINFO

码分器参数结构体。

struct{
  DWORD                dwSize;
  NET_DVR_IPADDR       struIP;
  WORD                 wPort;
  BYTE                 byRes1[6];
  BYTE                 sUserName[NAME_LEN];
  BYTE                 sPassword[PASSWD_LEN];
  BYTE                 byChan;
  BYTE                 by485Port;
  BYTE                 byRes2[14];
}NET_DVR_CODESPLITTERINFO, *LPNET_DVR_CODESPLITTERINFO;

Members

dwSize
结构体大小
struIP
码分器IP地址
wPort
码分器端口号
byRes1
保留
sUserName
码分器用户名
sPassword
码分器密码
byChan
码分器485通道号
by485Port
码分器485地址
byRes2
保留

See Also

NET_DVR_MatrixGetCodeSplitter NET_DVR_MatrixSetCodeSplitter


NET_DVR_COLOR

图像参数结构体。

struct{
  BYTE    byBrightness;
  BYTE    byContrast;
  BYTE    bySaturation;
  BYTE    byHue;
}NET_DVR_COLOR, *LPNET_DVR_COLOR;

Members

byBrightness
亮度，取值范围[0,255]
byContrast
对比度，取值范围[0,255]
bySaturation
饱和度，取值范围[0,255]
byHue
色调，取值范围[0,255]


NET_DVR_COMPRESSION_AUDIO

语音对讲音频参数结构体。

struct{
  BYTE    byAudioEncType;
  BYTE    byres[7];
}NET_DVR_COMPRESSION_AUDIO, *LPNET_DVR_COMPRESSION_AUDIO;

Members

byAudioEncType
音频编码类型：0- OggVorbis，1- G711_U，2- G711_A，3- G726
byres
保留，置为0

Remarks

配置设备的语音对讲音频参数后需要重启设备才生效。如果NET_DVR_GetDVRConfig返回失败，获取错误号为23（设备不支持），则表示设备音频编码类型为OggVorbis。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_COMPRESSION_INFO

码流压缩参数结构体。

struct{
  BYTE     byStreamType;
  BYTE     byResolution;
  BYTE     byBitrateType;
  BYTE     byPicQuality;
  DWORD    dwVideoBitrate;
  DWORD    dwVideoFrameRate;
}NET_DVR_COMPRESSION_INFO, *LPNET_DVR_COMPRESSION_INFO;

Members

byStreamType
码流类型：0-视频流，1-复合流。
如果是事件压缩参数（struEventRecordPara），最高位（byStreamType & 0x80）表示是否启用事件压缩参数
byResolution
分辨率：0-DCIF，1-CIF，2-QCIF，3-4CIF，4-2CIF
byBitrateType
码率类型：0-变码率，1-定码率
byPicQuality
图象质量：0-最好，1-次好，2-较好，3-一般，4-较差，5-差
dwVideoBitrate
码率：0-保留，1-16K(保留)，2-32K，3-48k，4-64K，5-80K，6-96K，7-128K，8-160k，9-192K，10-224K，11-256K，12-320K，13-384K，14-448K，15-512K，16-640K，17-768K，18-896K，19-1024K，20-1280K，21-1536K，22-1792K，23-2048K。
最高位(31位)置成1表示是自定义码流，0～30位表示码流值，最小值16k，最大值8192k
dwVideoFrameRate
帧率：0-全部，1-1/16，2-1/8，3-1/4，4-1/2，5-1，6-2，7-4，8-6，9-8，10-10，11-12，12-16，13-20

See Also

NET_DVR_COMPRESSIONCFG


NET_DVR_COMPRESSION_INFO_EX

码流压缩参数结构体。

struct{
  BYTE     byStreamType;
  BYTE     byResolution;
  BYTE     byBitrateType;
  BYTE     byPicQuality;
  DWORD    dwVideoBitrate;
  DWORD    dwVideoFrameRate;
  WORD     wIntervalFrameI;
  BYTE     byIntervalBPFrame;
  BYTE     byRes;
}NET_DVR_COMPRESSION_INFO_EX, *LPNET_DVR_COMPRESSION_INFO_EX;

Members

byStreamType
码流类型：0-视频流，1-复合流
如果是事件压缩参数（struEventRecordPara），最高位（byStreamType & 0x80）表示是否启用事件压缩参数
byResolution
分辨率：0-DCIF，1-CIF，2-QCIF，3-4CIF，4-2CIF，16-VGA，17-UXGA，18-SVGA，19-HD720p
byBitrateType
码率类型：0-变码率，1-定码率
byPicQuality
图象质量：0-最好，1-次好，2-较好，3-一般，4-较差，5-差
dwVideoBitrate
码率：0-保留，1-16K(保留)，2-32K，3-48k，4-64K，5-80K，6-96K，7-128K，8-160k，9-192K，10-224K，11-256K，12-320K，13-384K，14-448K，15-512K，16-640K，17-768K，18-896K，19-1024K，20-1280K，21-1536K，22-1792K，23-2048K。
最高位(31位)置成1表示是自定义码流，0～30位表示码流值，最小值16k，最大值8192k
dwVideoFrameRate
帧率：0-全部，1-1/16，2-1/8，3-1/4，4-1/2，5-1，6-2，7-4，8-6，9-8，10-10，11-12，12-16，13-20，14-15，15-18，16－22
wIntervalFrameI
I帧间隔，0xffff-无效
byIntervalBPFrame
帧格式：0-BBP帧，1-BP帧，2-单P帧，0xff-无效
byRes
保留，置为0

See Also

NET_DVR_COMPRESSIONCFG_EX


NET_DVR_COMPRESSION_INFO_V30

码流压缩参数结构体。

struct{
  BYTE     byStreamType;
  BYTE     byResolution;
  BYTE     byBitrateType;
  BYTE     byPicQuality;
  DWORD    dwVideoBitrate;
  DWORD    dwVideoFrameRate;
  WORD     wIntervalFrameI;
  BYTE     byIntervalBPFrame;
  BYTE     byres1;
  BYTE     byVideoEncType;
  BYTE     byAudioEncType;
  BYTE     byVideoEncComplexity;
  BYTE     byres[9];
}NET_DVR_COMPRESSION_INFO_V30, *LPNET_DVR_COMPRESSION_INFO_V30;

Members

byStreamType
码流类型：0-视频流，1-复合流
如果是事件压缩参数（struEventRecordPara），最高位（byStreamType & 0x80）表示是否启用事件压缩参数
byResolution
分辨率：0-DCIF，1-CIF，2-QCIF，3-4CIF，4-2CIF，6-QVGA(320*240)，12-384*288，16-VGA，17-UXGA，18-SVGA，19-HD720p，20-XVGA，21-HD900p，22-SXGAp，27-1920*1080，28-2560*1920，29-1600*304，30-2048*1536，31-2448*2048，32-2448*1200，33-2448*800，34-XGA（1024*768），35-SXGA（1280*1024）,36-WD1(960*576/960*480),37-1080i, 0xff-Auto(使用当前码流分辨率)
byBitrateType
码率类型：0-变码率，1-定码率
byPicQuality
图象质量：0-最好，1-次好，2-较好，3-一般，4-较差，5-差
dwVideoBitrate
码率：0-保留，1-16K(保留)，2-32K，3-48k，4-64K，5-80K，6-96K，7-128K，8-160k，9-192K，10-224K，11-256K，12-320K，13-384K，14-448K，15-512K，16-640K，17-768K，18-896K，19-1024K，20-1280K，21-1536K，22-1792K，23-2048K，24-3072K，25-4096K，26-8192K，27-16384K。
最高位(31位)置成1表示是自定义码流，0～30位表示码流值，最小值16k
dwVideoFrameRate
帧率：0-全部，1-1/16，2-1/8，3-1/4，4-1/2，5-1，6-2，7-4，8-6，9-8，10-10，11-12，12-16，13-20，14-15，15-18，16－22
wIntervalFrameI
I帧间隔，0xffff-无效
byIntervalBPFrame
帧格式：0-BBP帧，1-BP帧，2-单P帧，0xff-无效
byres1
保留，置为0
byVideoEncType
视频编码类型：0-私有264，1-标准h264，2-标准mpeg4，7-M-JPEG，0xff-无效
byAudioEncType
音频编码类型：0-OggVorbis；1-G711_U；2-G711_A；0xff-无效
byVideoEncComplexity
视频编码复杂度：0- 低，1- 中，2- 高
byres
保留，置为0

Remarks

当修改设备视频编码类型时，需要重启设备生效。

参数byResolution支持的分辨率值可以通过NET_DVR_GetDeviceAbility获取能力集类型COMPRESSIONCFG_ABILITY获取（NET_DVR_COMPRESSIONCFG_ABILITY）得到。

See Also

NET_DVR_COMPRESSIONCFG_V30


NET_DVR_COMPRESSION_LIMIT

主子码流压缩参数能力限制结构体。

struct{
  DWORD                        dwSize;
  DWORD                        dwChannel;
  BYTE                         byCompressType;
  BYTE                         byRes[15];
  NET_DVR_COMPRESSIONCFG_V30   struCurrentCfg;
}NET_DVR_COMPRESSION_LIMIT,*LPNET_DVR_COMPRESSION_LIMIT;

Members

dwSize
结构体大小
dwChannel
通道号
byCompressType
待获取的压缩参数类型：1- 主码流，2- 子码流，3- 事件
byRes
保留
struCurrentCfg
当前压缩参数配置

See Also

NET_DVR_GetDeviceAbility


NET_DVR_COMPRESSIONCFG

通道压缩参数结构体。

struct{
  DWORD                       dwSize;
  NET_DVR_COMPRESSION_INFO    struRecordPara;
  NET_DVR_COMPRESSION_INFO    struNetPara;
}NET_DVR_COMPRESSIONCFG, *LPNET_DVR_COMPRESSIONCFG;

Members

dwSize
结构体大小
struRecordPara
录像/事件触发录像的码流压缩参数
struNetPara
网传的码流压缩参数

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_COMPRESSIONCFG_V30


NET_DVR_COMPRESSIONCFG_ABILITY

压缩能力的参数结构体。

struct{
  DWORD                  dwSize;
  DWORD                  dwAbilityNum;
  NET_DVR_ABILITY_LIST   struAbilityNode[MAX_ABILITYTYPE_NUM];
}NET_DVR_COMPRESSIONCFG_ABILITY,*LPNET_DVR_COMPRESSIONCFG_ABILITY;

Members

dwSize
结构体大小
dwAbilityNum
能力类型个数
struAbilityNode
单个能力的参数结构

See Also

NET_DVR_GetDeviceAbility


NET_DVR_COMPRESSIONCFG_EX

通道压缩参数结构体。

struct{
  DWORD                          dwSize;
  NET_DVR_COMPRESSION_INFO_EX    struRecordPara;
  NET_DVR_COMPRESSION_INFO_EX    struNetPara;
}NET_DVR_COMPRESSIONCFG_EX, *LPNET_DVR_COMPRESSIONCFG_EX;

Members

dwSize
结构体大小
struRecordPara
录像的码流压缩参数
struNetPara
网传的码流压缩参数

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_COMPRESSIONCFG_V30


NET_DVR_COMPRESSIONCFG_V30

通道压缩参数结构体。

struct{
  DWORD                           dwSize;
  NET_DVR_COMPRESSION_INFO_V30    struNormHighRecordPara;
  NET_DVR_COMPRESSION_INFO_V30    struRes;
  NET_DVR_COMPRESSION_INFO_V30    struEventRecordPara;
  NET_DVR_COMPRESSION_INFO_V30    struNetPara;
}NET_DVR_COMPRESSIONCFG_V30, *LPNET_DVR_COMPRESSIONCFG_V30;

Members

dwSize
结构体大小
struNormHighRecordPara
录像的码流压缩参数（即主码流的压缩参数）
struRes
保留，置为0
struEventRecordPara
事件触发压缩参数，报警事件触发后，主码流切换成事件压缩参数配置
struNetPara
网传的码流压缩参数（即子码流的压缩参数）

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_COMPRESSIONCFG_EX


NET_DVR_CORRECT_DEADPIXEL_PARAM

坏点校正参数结构体。

struct{
  DWORD      dwSize;
  DWORD      dwCommand;
  DWORD      dwDeadPixelX;
  DWORD      dwDeadPixelY;
  BYTE       byRes[12];
}NET_DVR_CORRECT_DEADPIXEL_PARAM, *LPNET_DVR_CORRECT_DEADPIXEL_PARAM;

Members

dwSize
结构体大小
dwCommand
命令：0- 进入坏点模式，1- 添加坏点，2- 保存坏点，3- 退出坏点模式
dwDeadPixelX
坏点X坐标
dwDeadPixelY
坏点Y坐标
byRes2
保留

See Also

NET_DVR_CorrectDeadPixel


NET_DVR_CRUISE_PARA

巡航配置结构体。

struct{
  DWORD      dwSize;
  BYTE       byPresetNo[CRUISE_MAX_PRESET_NUMS];
  BYTE       byCruiseSpeed[CRUISE_MAX_PRESET_NUMS];
  WORD       wDwellTime[CRUISE_MAX_PRESET_NUMS];
  BYTE       byEnableThisCruise;
  BYTE       res[15];
}NET_DVR_CRUISE_PARA,*LPNET_DVR_CRUISE_PARA;

Members

dwSize
结构体大小
byPresetNo
预置点号
byCruiseSpeed
巡航速度
wDwellTime
停留时间
byEnableThisCruise
是否启用：0-不启用，1-启用
res
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_CRUISE_POINT

巡航轨迹点参数结构体。

struct{
  BYTE    PresetNum;
  BYTE    Dwell;
  BYTE    Speed;
  BYTE    Reserve;
}NET_DVR_CRUISE_POINT, *LPNET_DVR_CRUISE_POINT;

Members

PresetNum
预置点号
Dwell
停留时间
Speed
速度
Reserve
保留，置为0

See Also

NET_DVR_CRUISE_RET


NET_DVR_CRUISE_RET

巡航路径结构体。

struct{
  NET_DVR_CRUISE_POINT      struCruisePoint[32];
}NET_DVR_CRUISE_RET,*LPNET_DVR_CRUISE_RET;

Members

struCruisePoint
轨迹点信息

See Also

NET_DVR_GetPTZCruise


NET_DVR_DATE_FORMAT

ATM日期显示格式结构体。

struct{
  BYTE    byMonth;
  BYTE    byDay;
  BYTE    byYear;
  BYTE    byDateForm;
  BYTE    byRes[20];
  char    chSeprator[4];
  char    chDisplaySeprator[4];
  BYTE    byDisplayForm;
  BYTE    res[27];
}NET_DVR_DATE_FORMAT, *LPNET_DVR_DATE_FORMAT;

Members

byMonth
月的格式,0-mm；1-mmm；2-mmmm
byDay
日的格式,0-dd
byYear
年的格式,0-yy；1-yyyy
byDateForm
0~5，3个item的排列组合
byRes
保留
chSeprator
分隔符
chDisplaySeprator
显示分隔符
byDisplayForm
0~5，3个item的排列组合
res
保留

See Also

NET_DVR_ATM_PACKAGE_DATE


NET_DVR_DAYNIGHT

日夜转换功能参数结构体。

struct{
  BYTE       byDayNightFilterType;
  BYTE       bySwitchScheduleEnabled;
  BYTE       byBeginTime;
  BYTE       byEndTime;
  BYTE       byDayToNightFilterLevel;
  BYTE       byNightToDayFilterLevel;
  BYTE       byDayNightFilterTime;
  BYTE       byRes[5];
}NET_DVR_DAYNIGHT, *LPNET_DVR_DAYNIGHT;

Members

byDayNightFilterType
日夜切换：0 day,1 night,2 auto
bySwitchScheduleEnabled
0- 启动， 1- 禁用。（保留）
byBeginTime
保留
byEndTime
保留
byDayToNightFilterLevel
0-7
byNightToDayFilterLevel
0-7
byDayNightFilterTime
60秒
byRes
保留

See Also

NET_DVR_CAMERAPARAMCFG


NET_DVR_DDNS_STREAM_CFG

IP Server+流媒体模式配置结构体。

struct{
  BYTE               byEnable;
  BYTE               byRes1[3];
  NET_DVR_IPADDR     struStreamServer;
  WORD               wStreamServerPort;
  BYTE               byStreamServerTransmitType;
  BYTE               byRes2;
  NET_DVR_IPADDR     struIPServer;
  WORD               wIPServerPort;
  BYTE               byRes3[2];
  BYTE               sDVRName[NAME_LEN];
  WORD               wDVRNameLen;
  WORD               wDVRSerialLen;
  BYTE               sDVRSerialNumber[SERIALNO_LEN];
  BYTE               sUserName[NAME_LEN];
  BYTE               sPassWord[PASSWD_LEN];
  WORD               wDVRPort;
  BYTE               byRes4[2];
  BYTE               byChannel;
  BYTE               byTransProtocol;
  BYTE               byTransMode;
  BYTE               byFactoryType;
}NET_DVR_DDNS_STREAM_CFG, *LPNET_DVR_DDNS_STREAM_CFG;

Members

byEnable
是否启用
byRes1
保留，置为0
struStreamServer
流媒体服务器地址
wStreamServerPort
流媒体服务器端口
byStreamServerTransmitType
流媒体传输协议类型：0- TCP，1- UDP
byRes2
保留，置为0
struIPServer
IPServer 地址
wIPServerPort
IPServer 端口
byRes3
保留，置为0
sDVRName
设备名称
wDVRNameLen
设备名称长度
wDVRSerialLen
序列号长度
sDVRSerialNumber
设备序列号
sUserName
设备登陆用户名
sPassWord
设备登陆密码
wDVRPort
设备端口号
byRes4
保留，置为0
byChannel
设备通道，参数值为通道号，例如byChannel=1表示通道1
byTransProtocol
传输协议类型：0- TCP，1- UDP
byTransMode
传输码流模式：0- 主码流，1- 子码流
byFactoryType
前端设备厂家类型，通过接口NET_DVR_GetIPCProtoList获取

See Also

NET_DVR_GET_STREAM_UNION

NET_DVR_GetIPCProtoList


NET_DVR_DDNSPARA

网络应用参数（DDNS）结构体。

struct{
  BYTE     sUserName[NAME_LEN];
  BYTE     sPassword[PASSWD_LEN];
  BYTE     sDomainName[64];
  BYTE     byEnableDDNS;
  BYTE     res[15];
}NET_DVR_DDNSPARA,*LPNET_DVR_DDNSPARA;

Members

sUserName
DDNS账号用户名
sPassword
DDNS账号密码
sDomainName
域名
byEnableDDNS
是否使能：0－否，1－是
res
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_DDNSPARA_V30


NET_DVR_DDNSPARA_EX

网络应用参数（DDNS）结构体。

struct{
  BYTE     byHostIndex;
  BYTE     byEnableDDNS;
  WORD     wDDNSPort;
  BYTE     sUserName[NAME_LEN];
  BYTE     sPassword[PASSWD_LEN];
  BYTE     sDomainName[MAX_DOMAIN_NAME];
  BYTE     sServerName[MAX_DOMAIN_NAME];
  BYTE     byRes[16];
}NET_DVR_DDNSPARA_EX,*LPNET_DVR_DDNSPARA_EX;

Members

byHostIndex
0-Private DNS，1－Dyndns，2－PeanutHull(花生壳)
byEnableDDNS
是否使能：0－否，1－是
wDDNSPort
DDNS端口
sUsername
DDNS账号用户名
sPassword
DDNS账号密码
sDomainName
域名
sServerName
DDNS对应的服务器地址，可以是IP地址或域名
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_DDNSPARA_V30


NET_DVR_DDNSPARA_V30

网络应用参数（DDNS）结构体。

struct{
  BYTE     byEnableDDNS;
  BYTE     byHostIndex;
  BYTE     byRes1[2];
  struct{
           BYTE   sUserName[NAME_LEN];
           BYTE   sPassword[PASSWD_LEN];
           BYTE   sDomainName[MAX_DOMAIN_NAME];
           BYTE   sServerName[MAX_DOMAIN_NAME];
           WORD   wDDNSPort;
           BYTE   byRes[16];
  }struDDNS[MAX_DDNS_NUMS];
  BYTE     byRes2[16];
}NET_DVR_DDNSPARA_V30,*LPNET_DVR_DDNSPARA_V30;

Members

byEnableDDNS
是否使能：0－否，1－是
byHostIndex
0-Private DNS，1－Dyndns，2－PeanutHull(花生壳)，3-NO-IP
byRes1
保留，置为0
sUsername
DDNS账号用户名
sPassword
DDNS账号密码
sDomainName
域名
sServerName
DDNS对应的服务器地址，可以是IP地址或域名
wDDNSPort
DDNS端口
byRes
保留，置为0
byRes2
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_DDNSPARA_EX


NET_DVR_DECCFG

解码设备参数结构体。

struct{
  DWORD             dwSize;
  DWORD             dwDecChanNum;
  NET_DVR_DECINFO   struDecInfo[MAX_DECNUM];
}NET_DVR_DECCFG,*LPNET_DVR_DECCFG;

Members

dwSize
结构体大小
dwDecChanNum
解码通道的数量
struDecInfo
解码通道配置参数结构体

See Also

NET_DVR_GetDecInfo NET_DVR_SetDecInfo


NET_DVR_DECCHANINFO

解码通道参数子结构体。

struct{
  char   sDVRIP[16];
  WORD   wDVRPort;
  BYTE   sUserName[NAME_LEN];
  BYTE   sPassword[PASSWD_LEN];
  BYTE   byChannel;
  BYTE   byLinkMode;
  BYTE   byLinkType;
}NET_DVR_DECCHANINFO,*LPNET_DVR_DECCHANINFO;

Members

sDVRIP
设备IP地址
wDVRPort
设备端口号
sUserName
用户名
sPassword
密码
byChannel
通道号
byLinkMode
链接模式
byLinkType
连接类型：0－主码流；1－子码流

See Also

NET_DVR_DECINFO


NET_DVR_DECCHANSTATUS

解码设备连接状态参数子结构体。

struct{
  DWORD   dwWorkType;
  char    sDVRIP[16];
  WORD    wDVRPort;
  BYTE    byChannel;
  BYTE    byLinkMode;
  DWORD   dwLinkType;
  union{
           struct{
           BYTE           sUserName[NAME_LEN];
           BYTE           sPassword[PASSWD_LEN];
           char           cReserve[52];
           }userInfo;
           struct{
           BYTE           fileName[100];
           }fileInfo;
           struct{
           DWORD          dwChannel;
           BYTE           sUserName[NAME_LEN];
           BYTE           sPassword[PASSWD_LEN];
           NET_DVR_TIME   struStartTime;
           NET_DVR_TIME   struStopTime;
           }timeInfo;
  }objectInfo;
}NET_DVR_DECCHANSTATUS,*LPNET_DVR_DECCHANSTATUS;

Members

dwWorkType
工作方式：1-轮巡；2-动态连接解码；3-文件回放下载；4-按时间回放下载
sDVRIP
连接的设备IP地址
wDVRPort
连接端口号
byChannel
通道号
byLinkMode
链接模式
dwLinkType
连接类型 0－主码流 1－子码流
sUserName
请求视频用户名
sPassword
密码
cReserve
保留，置为0
fileName
文件名
dwChannel
通道
sUserName
请求视频用户名
sPassword
密码
struStartTime
按时间回放的开始时间
struStopTime
按时间回放的结束时间

See Also

NET_DVR_DECSTATUS


NET_DVR_DECINFO

解码通道配置的参数结构体。

struct{
  BYTE                  byPoolChans;
  NET_DVR_DECCHANINFO   struchanConInfo[MAX_DECPOOLNUM];
  BYTE                  byEnablePoll;
  BYTE                  byPoolTime;
}NET_DVR_DECINFO,*LPNET_DVR_DECINFO;

Members

byPoolChans
每路解码通道上的循环通道数量，最多4通道，0表示没有解码
struchanConInfo
解码通道的数量
byEnablePoll
是否轮巡：0-否；1-是
byPoolTime
轮巡时间：0-保留；1-10秒；2-15秒；3-20秒；4-30秒；5-45秒；6-1分钟；7-2分钟；8-5分钟

See Also

NET_DVR_DECCFG


NET_DVR_DECODER_WORK_STATUS

解码设备状态参数结构体。

struct{
  DWORD                        dwSize;
  NET_DVR_MATRIX_CHAN_STATUS   struDecChanStatus[MAX_DECODECHANNUM];
  NET_DVR_DISP_CHAN_STATUS     struDispChanStatus[MAX_DISPCHANNUM];
  BYTE                         byAlarmInStatus[MAX_ANALOG_ALARMIN];
  BYTE                         byAalarmOutStatus[MAX_ANALOG_ALARMOUT];
  BYTE                         byAudioInChanStatus;
  BYTE                         byRes[127];
}NET_DVR_DECODER_WORK_STATUS,*LPNET_DVR_DECODER_WORK_STATUS;

Members

dwSize
结构体大小
struDecChanStatus
解码通道状态
struDispChanStatus
显示通道状态
byAlarmInStatus
报警输入状态
byAalarmOutStatus
报警输出状态
byAudioInChanStatus
语音对讲状态
byRes
保留，置为0

See Also

NET_DVR_MatrixGetDeviceStatus


NET_DVR_DECODER_WORK_STATUS_V41

解码设备状态参数结构体。

struct{
  DWORD                         dwSize;
  NET_DVR_MATRIX_CHAN_STATUS    struDecChanStatus[MAX_DECODECHANNUM];
  NET_DVR_DISP_CHAN_STATUS_V41  struDispChanStatus[MAX_DISPNUM_V41];
  BYTE                          byAlarmInStatus[MAX_ANALOG_ALARMIN];
  BYTE                          byAalarmOutStatus[MAX_ANALOG_ALARMOUT];
  BYTE                          byAudioInChanStatus;
  BYTE                          byRes[127];
}NET_DVR_DECODER_WORK_STATUS_V41,*LPNET_DVR_DECODER_WORK_STATUS_V41;

Members

dwSize
结构体大小
struDecChanStatus
解码通道状态
struDispChanStatus
显示通道状态
byAlarmInStatus
报警输入状态
byAalarmOutStatus
报警输出状态
byAudioInChanStatus
语音对讲状态
byRes
保留，置为0

See Also

NET_DVR_MatrixGetDeviceStatus_V41


NET_DVR_DECODERCFG

通道解码器（云台）参数结构体。

struct{
  DWORD     dwSize;
  DWORD     dwBaudRate;
  BYTE      byDataBit;
  BYTE      byStopBit;
  BYTE      byParity;
  BYTE      byFlowcontrol;
  WORD      wDecoderType;
  WORD      wDecoderAddress;
  BYTE      bySetPreset[MAX_PRESET];
  BYTE      bySetCruise[MAX_CRUISE];
  BYTE      bySetTrack[MAX_TRACK];
}NET_DVR_DECODERCFG, *LPNET_DVR_DECODERCFG;

Members

dwSize
结构体大小
dwBaudRate
波特率(bps)，0-50，1-75，2-110，3-150，4-300，5-600，6-1200，7-2400，8-4800，9-9600，10-19200，11-38400，12-57600，13-76800，14-115.2k
byDataBit
数据有几位：0-5位，1-6位，2-7位，3-8位
byStopBit
停止位：0-1位，1-2位
byParity
是否校验：0-无校验，1-奇校验，2-偶校验
byFlowcontrol
是否流控：0-无，1-软流控,2-硬流控
wDecoderType
（抓拍机应用中保留）解码器类型，通过NET_DVR_GetPTZProtocol获取，该值对应于结构NET_DVR_PTZ_PROTOCOL中的dwType。
wDecoderAddress
（抓拍机应用中保留）解码器地址：[0,255]
bySetPreset
（抓拍机应用中保留）预置点是否设置：0-没有设置，1-设置
bySetCruise
（抓拍机应用中保留）巡航是否设置：0-没有设置，1-设置
bySetTrack
（抓拍机应用中保留）轨迹是否设置：0-没有设置，1-设置

Remarks

在早前的设备中规定了一系列云台协议，但在后期的设备（如DS-90xx、DS-91xx、DS-81xx等）仅保留一部分常用的协议，所以在配置解码器类型时必须调用NET_DVR_GetPTZProtocol获取当前设备支持的云台协议。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

NET_DVR_GetPTZProtocol

NET_DVR_PTZ_PROTOCOL

Reference Structure

扩展结构可见

NET_DVR_DECODERCFG_V30


NET_DVR_DECODERCFG_V30

通道解码器（云台）参数结构体。

struct{
  DWORD     dwSize;
  DWORD     dwBaudRate;
  BYTE      byDataBit;
  BYTE      byStopBit;
  BYTE      byParity;
  BYTE      byFlowcontrol;
  WORD      wDecoderType;
  WORD      wDecoderAddress;
  BYTE      bySetPreset[MAX_PRESET_V30];
  BYTE      bySetCruise[MAX_CRUISE_V30];
  BYTE      bySetTrack[MAX_TRACK_V30];
}NET_DVR_DECODERCFG_V30, *LPNET_DVR_DECODERCFG_V30;

Members

dwSize
结构体大小
dwBaudRate
波特率(bps)，0-50，1-75，2-110，3-150，4-300，5-600，6-1200，7-2400，8-4800，9-9600，10-19200，11-38400，12-57600，13-76800，14-115.2k
byDataBit
数据有几位：0-5位，1-6位，2-7位，3-8位
byStopBit
停止位：0-1位，1-2位
byParity
是否校验：0-无校验，1-奇校验，2-偶校验
byFlowcontrol
是否流控：0-无，1-软流控,2-硬流控
wDecoderType
解码器类型，通过NET_DVR_GetPTZProtocol获取，该值对应于结构NET_DVR_PTZ_PROTOCOL中的dwType。
wDecoderAddress
解码器地址：[0,255]
bySetPreset
预置点是否设置：0-没有设置，1-设置
bySetCruise
巡航是否设置：0-没有设置，1-设置
bySetTrack
轨迹是否设置：0-没有设置，1-设置

Remarks

在早前的设备中规定了一系列云台协议，但在后期的设备（如DS-90xx、DS-91xx、DS-81xx等）仅保留一部分常用的协议，所以在配置解码器类型时必须调用NET_DVR_GetPTZProtocol获取当前设备支持的云台协议。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

NET_DVR_GetPTZProtocol

NET_DVR_PTZ_PROTOCOL

Reference Structure

该结构扩展源于

NET_DVR_DECODERCFG


NET_DVR_DECSTATUS

解码设备连接状态的参数结构体。

struct{
  DWORD                   dwSize;
  NET_DVR_DECCHANSTATUS   struDecState[MAX_DECNUM];
}NET_DVR_DECSTATUS,*LPNET_DVR_DECSTATUS;

Members

dwSize
结构体大小
struDecState
解码通道配置参数结构体

See Also

NET_DVR_GetDecCurLinkStatus


NET_DVR_DECSUBSYSTEMJIONSTATUS

解码子系统关联信息结构体。

struct{
  BYTE   byJoinStatus;
  BYTE   byJoinSubSystem;
  BYTE   byJoinDispNum;
  BYTE   byJoinSubWindowNum;
  BYTE   byRes[4];
}NET_DVR_DECSUBSYSTEMJIONSTATUS, *LPNET_DVR_DECSUBSYSTEMJIONSTATUS;

Members

byJoinStatus
关联状态：0-没有关联，1-已经关联
byJoinSubSystem
所关联子系统槽位号
byJoinDispNum
所关联显示通道号
byJoinSubWindowNum
所关联子窗口号
byRes
保留

See Also

NET_DVR_SINGLESUBSYSTEMJOININFO


NET_DVR_DEL_LABEL_PARAM

要删除的标签信息结构体。

struct{
  DWORD                       dwSize;
  BYTE                        byMode;
  BYTE                        byRes1;
  WORD                        wLabelNum;
  NET_DVR_LABEL_IDENTIFY      struIndentify[MAX_DEL_LABEL_IDENTIFY];
  BYTE                        byRes2[160];
}NET_DVR_DEL_LABEL_PARAM,*LPNET_DVR_DEL_LABEL_PARAM;

Members

dwSize
结构体大小
byMode
按位表示，0x01表示按标识删除
byRes1
保留
wLabelNum
标签数目
struIndentify
标签标识
byRes2
保留

See Also

NET_DVR_DelRecordLabel


NET_DVR_DESC_NODE

能力节点描述参数结构体。

struct{
  int      iValue;
  BYTE     byDescribe[DESC_LEN_32];
  DWORD    dwFreeSpace;
  BYTE     byRes[12];
}NET_DVR_DESC_NODE,*LPNET_DVR_DESC_NODE;

Members

iValue
-1表示能力可以是一项可以变范围的自定义值
byDescribe
描述字段
dwFreeSpace
磁盘剩余空间，单位兆（磁盘列表专用）
byRes
保留，置为0

See Also

NET_DVR_ABILITY_LIST NET_DVR_DISKABILITY_LIST


NET_DVR_DEV_ACCESS_CFG

设备通道信息结构体。

struct{
  DWORD               dwSize;
  NET_DVR_IPADDR      struIP;
  WORD                wDevicePort;
  BYTE                byEnable;
  BYTE                byRes1;
  BYTE                sUserName[NAME_LEN];
  BYTE                sPassword[PASSWD_LEN];
  BYTE                byRes2[60];
}NET_DVR_DEV_ACCESS_CFG, *LPNET_DVR_DEV_ACCESS_CFG;

Members

dwSize
结构体大小
struIP
接入设备的IP地址
wDevicePort
端口号
byEnable
是否启用：0- 否，1- 是
byRes1
保留
sUserName
接入设备的登录帐号
sPassword
接入设备的登录密码
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_DEV_CHAN_INFO

前端设备信息结构体。

struct{
  NET_DVR_IPADDR   struIP;
  WORD             wDVRPort;
  BYTE             byChannel;
  BYTE             byTransProtocol;
  BYTE             byTransMode;
  BYTE             byFactoryType;
  BYTE             byDeviceType;
  BYTE             byDispChan;
  BYTE             bySubDispChan;
  BYTE             byRes[3];
  BYTE             byDomain[MAX_DOMAIN_NAME];
  BYTE             sUserName[NAME_LEN];
  BYTE             sPassword[PASSWD_LEN];
}NET_DVR_DEV_CHAN_INFO,*LPNET_DVR_DEV_CHAN_INFO;

Members

struIP
设备IP地址
wDVRPort
设备端口号
byChannel
通道号,目前设备的模拟通道号是从1开始的，对于9000等设备的IPC接入，数字通道号从33开始
byTransProtocol
传输协议类型：0-TCP，1-UDP，2-多播方式，3-RTP
byTransMode
传输码流模式：0－主码流，1－子码流
byFactoryType
前端设备厂家类型， 通过接口NET_DVR_GetIPCProtoList获取
byDeviceType
设备类型(视频综合平台使用)：1- IPC，2- ENCODER
byDispChan
显示通道号（智能配置使用），根据能力集决定使用解码通道还是显示通道
bySubDispChan
显示通道子通道号（智能配置时使用）
byRes
保留，置为0
byDomain
设备域名
sUserName
设备登陆帐号
sPassword
设备密码

See Also

NET_DVR_MATRIX_CHAN_INFO_V30 NET_DVR_MATRIX_DEC_CHAN_INFO_V30

NET_DVR_PU_STREAM_CFG

NET_DVR_GetIPCProtoList


NET_DVR_DEVICE_NET_USING_INFO

设备网络状态结构体。

struct{
  DWORD    dwSize;
  DWORD    dwPreview;
  DWORD    dwPlayback;
  DWORD    dwIPCModule;
  DWORD    dwNetDiskRW;
  BYTE     byRes[32];
}NET_DVR_DEVICE_NET_USING_INFO,*LPNET_DVR_DEVICE_NET_USING_INFO;

Members

dwSize
结构体大小
dwPreview
预览，单位：kbitps
dwPlayback
回放，单位：kbitps
dwIPCModule
IPC接入，单位：kbitps
dwNetDiskRW
网盘读写，单位：kbitps
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig


NET_DVR_DEVICE_PROTO_LIST

485前端设备支持协议列表。

struct{
  DWORD                 dwSize;
  DWORD                 dwProtoNum;
  NET_DVR_PROTO_TYPE    struProtoType[MAX_DEVICE_PROTO_NUM];
  BYTE                  byRes[12];
}NET_DVR_DEVICE_PROTO_LIST,*LPNET_DVR_DEVICE_PROTO_LIST;

Members

dwSize
结构体大小
dwTypeNum
协议个数
struDeviceType
协议类型
byRes
保留

See Also

NET_DVR_GetDeviceProtoList


NET_DVR_DEVICE_TYPE

485设备类型结构体。

struct{
  DWORD         dwType;
  BYTE          byDescribe[DESC_LEN];
}NET_DVR_DEVICE_TYPE,*LPNET_DVR_DEVICE_TYPE;

Members

dwType
485设备类型值
byDescribe
485设备类型描述

See Also

NET_DVR_DEVICE_TYPE_LIST


NET_DVR_DEVICE_TYPE_LIST

485前端设备类型列表结构体。

struct{
  DWORD                  dwSize;
  DWORD                  dwTypeNum;
  NET_DVR_DEVICE_TYPE    struDeviceType[MAX_DEVICE_TYPE_NUM];
  BYTE                   byRes[12];
}NET_DVR_DEVICE_TYPE_LIST,*LPNET_DVR_DEVICE_TYPE_LIST;

Members

dwSize
结构体大小
dwTypeNum
类型个数
struDeviceType
设备类型
byRes
保留

See Also

NET_DVR_GetDeviceTypeList


NET_DVR_DEVICECFG

设备参数结构体。

struct{
  DWORD    dwSize;
  BYTE     sDVRName[NAME_LEN];
  DWORD    dwDVRID;
  DWORD    dwRecycleRecord;
  BYTE     sSerialNumber[SERIALNO_LEN];
  DWORD    dwSoftwareVersion;
  DWORD    dwSoftwareBuildDate;
  DWORD    dwDSPSoftwareVersion;
  DWORD    dwDSPSoftwareBuildDate;
  DWORD    dwPanelVersion;
  DWORD    dwHardwareVersion;
  BYTE     byAlarmInPortNum;
  BYTE     byAlarmOutPortNum;
  BYTE     byRS232Num;
  BYTE     byRS485Num;
  BYTE     byNetworkPortNum;
  BYTE     byDiskCtrlNum;
  BYTE     byDiskNum;
  BYTE     byDVRType;
  BYTE     byChanNum;
  BYTE     byStartChan;
  BYTE     byDecordChans;
  BYTE     byVGANum;
  BYTE     byUSBNum;
  BYTE     byAuxoutNum;
  BYTE     byAudioNum;
  BYTE     byIPChanNum;
}NET_DVR_DEVICECFG,*LPNET_DVR_DEVICECFG;

Members

dwSize
结构体大小
sDVRName
设备名称
dwDVRID
设备ID号
dwRecycleRecord
是否循环录像：0－不是；1－是

以下参数不可更改

sSerialNumber
设备序列号
dwSoftwareVersion
软件版本号，V3.0以上版本支持的设备最高8位为主版本号，次高8位为次版本号，低16位为修复版本号；V3.0以下版本支持的设备高16位表示主版本，低16位表示次版本
dwSoftwareBuildDate
软件生成日期，0xYYYYMMDD
dwDSPSoftwareVersion
DSP软件版本，高16位是主版本，低16位是次版本
dwDSPSoftwareBuildDate
DSP软件生成日期，0xYYYYMMDD
dwPanelVersion
前面板版本，高16位是主版本，低16位是次版本
dwHardwareVersion
硬件版本，高16位是主版本，低16位是次版本
byAlarmInPortNum
设备报警输入个数
byAlarmOutPortNum
设备报警输出个数
byRS232Num
设备232串口个数
byRS485Num
设备485串口个数
byNetworkPortNum
网络口个数
byDiskCtrlNum
硬盘控制器个数
byDiskNum
硬盘个数
byDVRType
设备类型，详见下表
宏定义 | 宏定义值 | 设备类型
DVR | 1 | 尚未定义的DVR类型
ATMDVR | 2 | ATM DVR
DVS | 3 | DVS
DEC | 4 | 6001D
ENC_DEC | 5 | 6001F
DVR_HC | 6 | 8000HC
DVR_HT | 7 | 8000HT
DVR_HF | 8 | 8000HF
DVR_HS | 9 | 8000HS DVR(no audio)
DVR_HTS | 10 | 8016HTS DVR(no audio)
DVR_HB | 11 | HB DVR(SATA HD)
DVR_HCS | 12 | 8000HCS DVR
DVS_A | 13 | 带ATA硬盘的DVS
DVR_HC_S | 14 | 8000HC-S
DVR_HT_S | 15 | 8000HT-S
DVR_HF_S | 16 | 8000HF-S
DVR_HS_S | 17 | 8000HS-S
ATMDVR_S | 18 | ATM-S
DVR_7000H | 19 | 7000H系列
DEC_MAT | 20 | 多路解码器
DVR_MOBILE | 21 | mobile DVR
DVR_HD_S | 22 | 8000HD-S
DVR_HD_SL | 23 | 8000HD-SL
DVR_HC_SL | 24 | 8000HC-SL
DVR_HS_ST | 25 | 8000HS_ST
DVS_HW | 26 | 6000HW
DS630X_D | 27 | 多路解码器
IPCAM | 30 | IP 摄像机
MEGA_IPCAM | 31 | X52MF系列摄像机
IPCAM_X62MF | 32 | X62MF系列摄像机
ITCCAM | 35 | 智能高清IPC
IPDOME | 40 | IP标清快球
IPDOME_MEGA200 | 41 | IP 200万高清快球
IPDOME_MEGA130 | 42 | IP 130万高清快球
IPMOD | 50 | IP 模块
IDS6101_HF_A | 61 | 智能ATM
IDS6002_HF_B | 62 | 双摄像机跟踪：DS6002-HF/B
IDS6101_HF_B | 63 | 行为分析：DS6101-HF/B
IDS52XX | 64 | 智能分析仪
IDS90XX | 65 | 9000智能
IDS8104_AHL_S_HX | 66 | 海鑫人脸识别 ATM
IDS91XX | 68 | 9100智能
IIP_CAM_B | 69 | 智能行为IP摄像机
DS71XX_H | 71 | DS71XXH_S
DS72XX_H_S | 72 | DS72XXH_S
DS73XX_H_S | 73 | DS73XXH_S
DS76XX_H_S | 76 | DS76XX_H_S
DS76XX_N_S | 77 | DS76XX_N_S
DS81XX_HS_S | 81 | DS81XX_HS_S
DS81XX_HL_S | 82 | DS81XX_HL_S
DS81XX_HC_S | 83 | DS81XX_HC_S
DS81XX_HD_S | 84 | DS81XX_HD_S
DS81XX_HE_S | 85 | DS81XX_HE_S
DS81XX_HF_S | 86 | DS81XX_HF_S
DS81XX_AH_S | 87 | DS81XX_AH_S
DS81XX_AHF_S | 88 | DS81XX_AHF_S
DS90XX_HF_S | 90 | DS90XX_HF_S
DS91XX_HF_S | 91 | DS91XX_HF_S
DS91XX_HD_S | 92 | 91XXHD-S(MD)
DS95XX_N_S | 95 | DS95XXN-S NVR
DS96XX_N_SH | 96 | DS96XXN-SH NVR
DS_65XXHC | 105 | 65XXHC DVS
DS_65XXHC_S | 106 | 65XXHC-SATA DVS
DS_65XXHF | 107 | 65XXHF DVS
DS_65XXHF_S | 108 | 65XXHF-SATA DVS
IVMS-6400 | 110 | 人流量统计设备
DS_66XXDVS | 120 | DS_66XXDVS
byChanNum
设备模拟通道个数
byStartChan
起始通道号
byDecordChans
设备解码路数
byVGANum
VGA口的个数
byUSBNum
USB口的个数
byAuxoutNum
辅口的个数
byAudioNum
语音口的个数
byIPChanNum
最大数字通道

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_DEVICECFG_V40


NET_DVR_DEVICECFG_V40

设备参数结构体。

struct{
  DWORD    dwSize;
  BYTE     sDVRName[NAME_LEN];
  DWORD    dwDVRID;
  DWORD    dwRecycleRecord;
  BYTE     sSerialNumber[SERIALNO_LEN];
  DWORD    dwSoftwareVersion;
  DWORD    dwSoftwareBuildDate;
  DWORD    dwDSPSoftwareVersion;
  DWORD    dwDSPSoftwareBuildDate;
  DWORD    dwPanelVersion;
  DWORD    dwHardwareVersion;
  BYTE     byAlarmInPortNum;
  BYTE     byAlarmOutPortNum;
  BYTE     byRS232Num;
  BYTE     byRS485Num;
  BYTE     byNetworkPortNum;
  BYTE     byDiskCtrlNum;
  BYTE     byDiskNum;
  BYTE     byDVRType;
  BYTE     byChanNum;
  BYTE     byStartChan;
  BYTE     byDecordChans;
  BYTE     byVGANum;
  BYTE     byUSBNum;
  BYTE     byAuxoutNum;
  BYTE     byAudioNum;
  BYTE     byIPChanNum;
  BYTE     byZeroChanNum;
  BYTE     bySupport;
  BYTE     byEsataUseage;
  BYTE     byIPCPlug;
  BYTE     byStorageMode;
  BYTE     bySupport1;
  WORD     wDevType;
  BYTE     byDevTypeName[24];
  BYTE     byRes2[16];
}NET_DVR_DEVICECFG_V40,*LPNET_DVR_DEVICECFG_V40;

Members

dwSize
结构体大小
sDVRName
设备名称
dwDVRID
设备ID号，用于遥控器，v1.4的设备号范围为(0-99), v1.5及以上版本的设备号为(0-255)
dwRecycleRecord
是否循环录像：0－不是；1－是

以下参数不可更改

sSerialNumber
设备序列号
dwSoftwareVersion
软件版本号，V3.0以上版本支持的设备最高8位为主版本号，次高8位为次版本号，低16位为修复版本号；V3.0以下版本支持的设备高16位表示主版本，低16位表示次版本
dwSoftwareBuildDate
软件生成日期，0xYYYYMMDD
dwDSPSoftwareVersion
DSP软件版本，高16位是主版本，低16位是次版本
dwDSPSoftwareBuildDate
DSP软件生成日期，0xYYYYMMDD
dwPanelVersion
前面板版本，高16位是主版本，低16位是次版本
dwHardwareVersion
硬件版本，高16位是主版本，低16位是次版本
byAlarmInPortNum
设备报警输入个数
byAlarmOutPortNum
设备报警输出个数
byRS232Num
设备232串口个数
byRS485Num
设备485串口个数
byNetworkPortNum
网络口个数
byDiskCtrlNum
硬盘控制器个数
byDiskNum
硬盘个数
byDVRType
设备类型，详见下表
宏定义 | 宏定义值 | 设备类型
DVR | 1 | 尚未定义的DVR类型
ATMDVR | 2 | ATM DVR
DVS | 3 | DVS
DEC | 4 | 6001D
ENC_DEC | 5 | 6001F
DVR_HC | 6 | 8000HC
DVR_HT | 7 | 8000HT
DVR_HF | 8 | 8000HF
DVR_HS | 9 | 8000HS DVR(no audio)
DVR_HTS | 10 | 8016HTS DVR(no audio)
DVR_HB | 11 | HB DVR(SATA HD)
DVR_HCS | 12 | 8000HCS DVR
DVS_A | 13 | 带ATA硬盘的DVS
DVR_HC_S | 14 | 8000HC-S
DVR_HT_S | 15 | 8000HT-S
DVR_HF_S | 16 | 8000HF-S
DVR_HS_S | 17 | 8000HS-S
ATMDVR_S | 18 | ATM-S
DVR_7000H | 19 | 7000H系列
DEC_MAT | 20 | 多路解码器
DVR_MOBILE | 21 | mobile DVR
DVR_HD_S | 22 | 8000HD-S
DVR_HD_SL | 23 | 8000HD-SL
DVR_HC_SL | 24 | 8000HC-SL
DVR_HS_ST | 25 | 8000HS_ST
DVS_HW | 26 | 6000HW
DS630X_D | 27 | 多路解码器
DS640X_HD | 28 | 640X高清解码器
DS610X_D | 29 | 610X解码器
IPCAM | 30 | IP 摄像机
MEGA_IPCAM | 31 | X52MF系列摄像机
IPCAM_X62MF | 32 | X62MF系列摄像机
ITCCAM | 35 | 智能高清IPC
IVS_IPCAM | 36 | 智能分析高清网络摄像机(人脸抓拍机)
ZOOMCAM | 38 | 一体机
IPDOME | 40 | IP标清快球
IPDOME_MEGA200 | 41 | IP 200万高清快球
IPDOME_MEGA130 | 42 | IP 130万高清快球
TII_IPCAM | 44 | 红外热成像摄像机
IPMOD | 50 | IP 模块
IDS6501_HF_P | 60 | 6501 车牌识别
IDS6101_HF_A | 61 | 智能ATM
IDS6002_HF_B | 62 | 双摄像机跟踪：DS6002-HF/B
IDS6101_HF_B | 63 | 行为分析：DS6101-HF/B
IDS52XX | 64 | 智能分析仪
IDS90XX | 65 | 9000智能
IDS8104_AHL_S_HX | 66 | 海鑫人脸识别 ATM
IDS8104_AHL_S_H | 67 | 私有人脸识别 ATM
IDS91XX | 68 | 9100智能
IIP_CAM_B | 69 | 智能行为IP摄像机
DS71XX_H | 71 | DS71XXH_S
DS72XX_H_S | 72 | DS72XXH_S
DS73XX_H_S | 73 | DS73XXH_S
DS72XX_HF_S | 74 | DS72XX_HF_S
DS73XX_HFI_S | 75 | DS73XX_HFI_S
DS76XX_H_S | 76 | DS76XX_H_S
DS76XX_N_S | 77 | DS76XX_N_S
DS81XX_HS_S | 81 | DS81XX_HS_S
DS81XX_HL_S | 82 | DS81XX_HL_S
DS81XX_HC_S | 83 | DS81XX_HC_S
DS81XX_HD_S | 84 | DS81XX_HD_S
DS81XX_HE_S | 85 | DS81XX_HE_S
DS81XX_HF_S | 86 | DS81XX_HF_S
DS81XX_AH_S | 87 | DS81XX_AH_S
DS81XX_AHF_S | 88 | DS81XX_AHF_S
DS90XX_HF_S | 90 | DS90XX_HF_S
DS91XX_HF_S | 91 | DS91XX_HF_S
DS91XX_HD_S | 92 | 91XXHD-S(MD)
IDS90XX_A | 93 | 9000智能 ATM
IDS91XX_A | 94 | 9100智能 ATM
DS95XX_N_S | 95 | DS95XXN-S NVR
DS96XX_N_SH | 96 | DS96XXN-SH NVR
DS90XX_HF_SH | 97 | DS90XX_HF_SH
DS91XX_HF_SH | 98 | DS91XX_HF_SH
DS_65XXHC | 105 | 65XXHC DVS
DS_65XXHC_S | 106 | 65XXHC-SATA DVS
DS_65XXHF | 107 | 65XXHF DVS
DS_65XXHF_S | 108 | 65XXHF-SATA DVS
DS_6500HF_B | 109 | 65 rack DVS
IVMS_6200_C | 110 | iVMS-6200(/C) 人流量统计
IVMS_6200_B | 111 | IVMS_6200_B 行为分析
DS_72XXHV_ST15 | 112 | 72XXHV_ST15 DVR
DS_72XXHV_ST20 | 113 | 72XXHV_ST20 DVR
IVMS_6200_T | 114 | IVMS-6200(/T)
IVMS_6200_BP | 115 | IVMS-6200(/BP)
DS_81XXHC_ST | 116 | DS_81XXHC_ST
DS_81XXHS_ST | 117 | DS_81XXHS_ST
DS_81XXAH_ST | 118 | DS_81XXAH_ST
DS_81XXAHF_ST | 119 | DS_81XXAHF_ST
DS_66XXDVS | 120 | DS_66XXDVS
DS_19AXX | 142 | 通用报警主机类产品
DS_19CXX | 144 | 自助银行报警主机
DS_19DXX | 145 | 动环监控报警主机
DS_19XX | 146 | 1900系列报警主机
DS_1HXX | 148 | ATM防护舱控制器
DS_C10H | 161 | 多屏控制器
IDS_8104_AHFL_S_H | 171 | 8104ATM
IDS_65XX_HF_A | 172 | 65 ATM
IDS90XX_HF_RH | 173 | 9000 智能RH
IDS91XX_HF_RH | 174 | 9100 智能RH设备
IDS_65XX_HF_B | 175 | 65 行为分析
IDS_65XX_HF_P | 176 | 65 车牌识别
DS90XX_HF_RH | 181 | DS90XX_HF_RH
DS91XX_HF_RH | 182 | 9100 RH设备
DS78XX_S | 183 | 78系列设备
DS81XXHW_S | 185 | DVR_81XXHW_S
DS81XXHW_ST | 186 | DVR_81XXHW_ST
DS91XXHW_ST | 187 | DVR_91XXHW_ST
DS91XX_ST | 188 | DVR_91XX_ST
DS81XX_ST | 189 | DVR_81XX_ST
DS81XXH_ST | 190 | DS81XXHDI_ST,DS81XXHE_ST
DS73XXH_ST | 191 | DS73XXHI_ST
DS81XX_SH | 192 | 审讯81SH，81SHF
DS81XX_SN | 193 | 审讯81SNL
DS96XXN_ST | 194 | NVR：DS96xxN_ST
DS86XXN_ST | 195 | NVR：DS86xxN_ST
DS80XXHF_ST | 196 | DS80xxHF_ST
DS90XXHF_ST | 197 | DS90xxHF_ST
DS76XXN_ST | 198 | NVR：DS76xxN_ST
DS_9664N_RX | 199 | NVR：DS-9664N-RH、DS-9664N-RT
ENCODER_SERVER | 200 | 编码卡服务器
DECODER_SERVER | 201 | 解码卡服务器
PCNVR_SERVER | 202 | PCNVR存储服务器
CVR_SERVER | 203 | 邦诺CVR
DS_91XXHFH_ST | 204 | 高清DVR：DS_91xxHFH_ST
DS64XXHD_T | 701 | 64-T高清解码器
byChanNum
设备模拟通道个数
byStartChan
起始通道号
byDecordChans
设备解码路数
byVGANum
VGA口的个数
byUSBNum
USB口的个数
byAuxoutNum
辅口的个数
byAudioNum
语音口的个数
byIPChanNum
最大数字通道
byZeroChanNum
零通道编码个数
bySupport
能力，位与结果为0表示不支持，1表示支持
bySupport & 0x1，表示是否支持智能搜索
bySupport & 0x2，表示是否支持备份
bySupport & 0x4，表示是否支持压缩参数能力获取
bySupport & 0x8，表示是否支持双网卡
bySupport & 0x10，表示支持远程SADP
bySupport & 0x20，表示支持Raid卡功能
bySupport & 0x40，表示支持IPSAN搜索
bySupport & 0x80，表示支持rtp over rtsp
byEsataUseage
Esata的默认用途，0-默认备份，1-默认录像
byIPCPlug
0-不支持即插即用，1-支持即插即用
byStorageMode
0-盘组模式，1-磁盘配额
bySupport1
能力集扩充，位与结果为0表示不支持，1表示支持
bySupport1 & 0x1, 表示是否支持snmp v30
bySupport1 & 0x2, 支持区分回放和下载
wDevType
设备型号
byDevTypeName
设备型号名称
byRes2
保留，置为0

Remarks

如果byDVRType是0，则接口中解析wDevType作为设备型号，设备端同时将设备型号的名称传过来。
如果byDVRType不是0，则接口中将不解析wDevType及byDevTypeName，使用已有的设备型号及名称对byDVRType、wDevType、byDevTypeName进行填充，其中byDVRType=wDevType。
建议开发时使用wDevType、byDevTypeName，而不要使用byDVRType，sdk内部兼容。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_DEVICECFG


NET_DVR_DEVICEINFO

设备参数结构体。

struct{
  BYTE     sSerialNumber[SERIALNO_LEN];
  BYTE     byAlarmInPortNum;
  BYTE     byAlarmOutPortNum;
  BYTE     byDiskNum;
  BYTE     byDVRType;
  BYTE     byChanNum;
  BYTE     byStartChan;
}NET_DVR_DEVICEINFO,*LPNET_DVR_DEVICEINFO;

Members

sSerialNumber
序列号
byAlarmInPortNum
报警输入个数
byAlarmOutPortNum
报警输出个数
byDiskNum
硬盘个数
byDVRType
设备类型，详见下表
宏定义 | 宏定义值 | 设备类型
DVR | 1 | 尚未定义的DVR类型
ATMDVR | 2 | ATM DVR
DVS | 3 | DVS
DEC | 4 | 6001D
ENC_DEC | 5 | 6001F
DVR_HC | 6 | 8000HC
DVR_HT | 7 | 8000HT
DVR_HF | 8 | 8000HF
DVR_HS | 9 | 8000HS DVR(no audio)
DVR_HTS | 10 | 8016HTS DVR(no audio)
DVR_HB | 11 | HB DVR(SATA HD)
DVR_HCS | 12 | 8000HCS DVR
DVS_A | 13 | 带ATA硬盘的DVS
DVR_HC_S | 14 | 8000HC-S
DVR_HT_S | 15 | 8000HT-S
DVR_HF_S | 16 | 8000HF-S
DVR_HS_S | 17 | 8000HS-S
ATMDVR_S | 18 | ATM-S
DVR_7000H | 19 | 7000H系列
DEC_MAT | 20 | 多路解码器
DVR_MOBILE | 21 | mobile DVR
DVR_HD_S | 22 | 8000HD-S
DVR_HD_SL | 23 | 8000HD-SL
DVR_HC_SL | 24 | 8000HC-SL
DVR_HS_ST | 25 | 8000HS_ST
DVS_HW | 26 | 6000HW
DS630X_D | 27 | 多路解码器
IPCAM | 30 | IP 摄像机
MEGA_IPCAM | 31 | X52MF系列摄像机
IPCAM_X62MF | 32 | X62MF系列摄像机
ITCCAM | 35 | 智能高清IPC
IPDOME | 40 | IP标清快球
IPDOME_MEGA200 | 41 | IP 200万高清快球
IPDOME_MEGA130 | 42 | IP 130万高清快球
IPMOD | 50 | IP 模块
IDS6101_HF_A | 61 | 智能ATM
IDS6002_HF_B | 62 | 双摄像机跟踪：DS6002-HF/B
IDS6101_HF_B | 63 | 行为分析：DS6101-HF/B
IDS52XX | 64 | 智能分析仪
IDS90XX | 65 | 9000智能
IDS8104_AHL_S_HX | 66 | 海鑫人脸识别 ATM
IDS91XX | 68 | 9100智能
IIP_CAM_B | 69 | 智能行为IP摄像机
DS71XX_H | 71 | DS71XXH_S
DS72XX_H_S | 72 | DS72XXH_S
DS73XX_H_S | 73 | DS73XXH_S
DS72XX_HF_S | 74 | DS72XXHF_S
DS76XX_H_S | 76 | DS76XX_H_S
DS76XX_N_S | 77 | DS76XX_N_S
DS81XX_HS_S | 81 | DS81XX_HS_S
DS81XX_HL_S | 82 | DS81XX_HL_S
DS81XX_HC_S | 83 | DS81XX_HC_S
DS81XX_HD_S | 84 | DS81XX_HD_S
DS81XX_HE_S | 85 | DS81XX_HE_S
DS81XX_HF_S | 86 | DS81XX_HF_S
DS81XX_AH_S | 87 | DS81XX_AH_S
DS81XX_AHF_S | 88 | DS81XX_AHF_S
DS90XX_HF_S | 90 | DS90XX_HF_S
DS91XX_HF_S | 91 | DS91XX_HF_S
DS91XX_HD_S | 92 | 91XXHD-S(MD)
DS95XX_N_S | 95 | DS95XXN-S NVR
DS96XX_N_SH | 96 | DS96XXN-SH NVR
DS90XX_HF_SH | 97 | DS90XX_HF_SH
DS91XX_HF_SH | 98 | DS91XX_HF_SH
DS_65XXHC | 105 | 65XXHC DVS
DS_65XXHC_S | 106 | 65XXHC-SATA DVS
DS_65XXHF | 107 | 65XXHF DVS
DS_65XXHF_S | 108 | 65XXHF-SATA DVS
IVMS-6400 | 110 | 人流量统计设备
IVMS_6200_B | 111 | iVMS-6200(/B)
DS_72XXHV_ST15 | 112 | 72XXHV_ST15 DVR
DS_72XXHV_ST20 | 113 | 72XXHV_ST20 DVR
DS_66XXDVS | 120 | DS_66XXDVS
byChanNum
设备模拟通道个数
byStartChan
起始通道号，目前设备通道号从1开始

See Also

NET_DVR_Login


NET_DVR_DEVICEINFO_V30

设备参数结构体。

struct{
  BYTE     sSerialNumber[SERIALNO_LEN];
  BYTE     byAlarmInPortNum;
  BYTE     byAlarmOutPortNum;
  BYTE     byDiskNum;
  BYTE     byDVRType;
  BYTE     byChanNum;
  BYTE     byStartChan;
  BYTE     byAudioChanNum;
  BYTE     byIPChanNum;
  BYTE     byZeroChanNum;
  BYTE     byMainProto;
  BYTE     bySubProto;
  BYTE     bySupport;
  BYTE     bySupport1;
  BYTE     byRes1;
  WORD     wDevType;
  BYTE     byRes2[16];
}NET_DVR_DEVICEINFO_V30,*LPNET_DVR_DEVICEINFO_V30;

Members

sSerialNumber
序列号
byAlarmInPortNum
报警输入个数
byAlarmOutPortNum
报警输出个数
byDiskNum
硬盘个数
byDVRType
设备类型，详见下表
宏定义 | 宏定义值 | 设备类型
DVR | 1 | 尚未定义的DVR类型
ATMDVR | 2 | ATM DVR
DVS | 3 | DVS
DEC | 4 | 6001D
ENC_DEC | 5 | 6001F
DVR_HC | 6 | 8000HC
DVR_HT | 7 | 8000HT
DVR_HF | 8 | 8000HF
DVR_HS | 9 | 8000HS DVR(no audio)
DVR_HTS | 10 | 8016HTS DVR(no audio)
DVR_HB | 11 | HB DVR(SATA HD)
DVR_HCS | 12 | 8000HCS DVR
DVS_A | 13 | 带ATA硬盘的DVS
DVR_HC_S | 14 | 8000HC-S
DVR_HT_S | 15 | 8000HT-S
DVR_HF_S | 16 | 8000HF-S
DVR_HS_S | 17 | 8000HS-S
ATMDVR_S | 18 | ATM-S
DVR_7000H | 19 | 7000H系列
DEC_MAT | 20 | 多路解码器
DVR_MOBILE | 21 | mobile DVR
DVR_HD_S | 22 | 8000HD-S
DVR_HD_SL | 23 | 8000HD-SL
DVR_HC_SL | 24 | 8000HC-SL
DVR_HS_ST | 25 | 8000HS_ST
DVS_HW | 26 | 6000HW
DS630X_D | 27 | 多路解码器
DS640X_HD | 28 | 640X高清解码器
DS610X_D | 29 | 610X解码器
IPCAM | 30 | IP 摄像机
MEGA_IPCAM | 31 | X52MF系列摄像机
IPCAM_X62MF | 32 | X62MF系列摄像机
ITCCAM | 35 | 智能高清IPC
IVS_IPCAM | 36 | 智能分析高清网络摄像机(人脸抓拍机)
ZOOMCAM | 38 | 一体机
IPDOME | 40 | IP标清快球
IPDOME_MEGA200 | 41 | IP 200万高清快球
IPDOME_MEGA130 | 42 | IP 130万高清快球
TII_IPCAM | 44 | 红外热成像摄像机
IPMOD | 50 | IP 模块
IDS6501_HF_P | 60 | 6501 车牌识别
IDS6101_HF_A | 61 | 智能ATM
IDS6002_HF_B | 62 | 双摄像机跟踪：DS6002-HF/B
IDS6101_HF_B | 63 | 行为分析：DS6101-HF/B
IDS52XX | 64 | 智能分析仪
IDS90XX | 65 | 9000智能
IDS8104_AHL_S_HX | 66 | 海鑫人脸识别 ATM
IDS8104_AHL_S_H | 67 | 私有人脸识别 ATM
IDS91XX | 68 | 9100智能
IIP_CAM_B | 69 | 智能行为IP摄像机
DS71XX_H | 71 | DS71XXH_S
DS72XX_H_S | 72 | DS72XXH_S
DS73XX_H_S | 73 | DS73XXH_S
DS72XX_HF_S | 74 | DS72XX_HF_S
DS73XX_HFI_S | 75 | DS73XX_HFI_S
DS76XX_H_S | 76 | DS76XX_H_S
DS76XX_N_S | 77 | DS76XX_N_S
DS81XX_HS_S | 81 | DS81XX_HS_S
DS81XX_HL_S | 82 | DS81XX_HL_S
DS81XX_HC_S | 83 | DS81XX_HC_S
DS81XX_HD_S | 84 | DS81XX_HD_S
DS81XX_HE_S | 85 | DS81XX_HE_S
DS81XX_HF_S | 86 | DS81XX_HF_S
DS81XX_AH_S | 87 | DS81XX_AH_S
DS81XX_AHF_S | 88 | DS81XX_AHF_S
DS90XX_HF_S | 90 | DS90XX_HF_S
DS91XX_HF_S | 91 | DS91XX_HF_S
DS91XX_HD_S | 92 | 91XXHD-S(MD)
IDS90XX_A | 93 | 9000智能 ATM
IDS91XX_A | 94 | 9100智能 ATM
DS95XX_N_S | 95 | DS95XXN-S NVR
DS96XX_N_SH | 96 | DS96XXN-SH NVR
DS90XX_HF_SH | 97 | DS90XX_HF_SH
DS91XX_HF_SH | 98 | DS91XX_HF_SH
DS_65XXHC | 105 | 65XXHC DVS
DS_65XXHC_S | 106 | 65XXHC-SATA DVS
DS_65XXHF | 107 | 65XXHF DVS
DS_65XXHF_S | 108 | 65XXHF-SATA DVS
DS_6500HF_B | 109 | 65 rack DVS
IVMS_6200_C | 110 | iVMS-6200(/C) 人流量统计
IVMS_6200_B | 111 | IVMS_6200_B 行为分析
DS_72XXHV_ST15 | 112 | 72XXHV_ST15 DVR
DS_72XXHV_ST20 | 113 | 72XXHV_ST20 DVR
IVMS_6200_T | 114 | IVMS-6200(/T)
IVMS_6200_BP | 115 | IVMS-6200(/BP)
DS_81XXHC_ST | 116 | DS_81XXHC_ST
DS_81XXHS_ST | 117 | DS_81XXHS_ST
DS_81XXAH_ST | 118 | DS_81XXAH_ST
DS_81XXAHF_ST | 119 | DS_81XXAHF_ST
DS_66XXDVS | 120 | DS_66XXDVS
DS_19AXX | 142 | 通用报警主机类产品
DS_19CXX | 144 | 自助银行报警主机
DS_19DXX | 145 | 动环监控报警主机
DS_19XX | 146 | 1900系列报警主机
DS_1HXX | 148 | ATM防护舱控制器
DS_C10H | 161 | 多屏控制器
IDS_8104_AHFL_S_H | 171 | 8104ATM
IDS_65XX_HF_A | 172 | 65 ATM
IDS90XX_HF_RH | 173 | 9000 智能RH
IDS91XX_HF_RH | 174 | 9100 智能RH设备
IDS_65XX_HF_B | 175 | 65 行为分析
IDS_65XX_HF_P | 176 | 65 车牌识别
DS90XX_HF_RH | 181 | DS90XX_HF_RH
DS91XX_HF_RH | 182 | 9100 RH设备
DS78XX_S | 183 | 78系列设备
DS81XXHW_S | 185 | DVR_81XXHW_S
DS81XXHW_ST | 186 | DVR_81XXHW_ST
DS91XXHW_ST | 187 | DVR_91XXHW_ST
DS91XX_ST | 188 | DVR_91XX_ST
DS81XX_ST | 189 | DVR_81XX_ST
DS81XXH_ST | 190 | DS81XXHDI_ST,DS81XXHE_ST
DS73XXH_ST | 191 | DS73XXHI_ST
DS81XX_SH | 192 | 审讯81SH，81SHF
DS81XX_SN | 193 | 审讯81SNL
DS96XXN_ST | 194 | NVR：DS96xxN_ST
DS86XXN_ST | 195 | NVR：DS86xxN_ST
DS80XXHF_ST | 196 | DS80xxHF_ST
DS90XXHF_ST | 197 | DS90xxHF_ST
DS76XXN_ST | 198 | NVR：DS76xxN_ST
DS_9664N_RX | 199 | NVR：DS-9664N-RH、DS-9664N-RT
ENCODER_SERVER | 200 | 编码卡服务器
DECODER_SERVER | 201 | 解码卡服务器
PCNVR_SERVER | 202 | PCNVR存储服务器
CVR_SERVER | 203 | 邦诺CVR
DS_91XXHFH_ST | 204 | 高清DVR：DS_91xxHFH_ST
DS64XXHD_T | 701 | 64-T高清解码器
byChanNum
设备模拟通道个数
byStartChan
起始通道号，目前设备通道号从1开始
byAudioChanNum
设备语音通道数
byIPChanNum
设备最大数字通道个数
byZeroChanNum
零通道编码个数
byMainProto
主码流传输协议类型：0-private，1-rtsp
bySubProto
子码流传输协议类型：0-private，1-rtsp
bySupport
能力，位与结果为0表示不支持，1表示支持
bySupport & 0x1，表示是否支持智能搜索
bySupport & 0x2，表示是否支持备份
bySupport & 0x4，表示是否支持压缩参数能力获取
bySupport & 0x8, 表示是否支持双网卡
bySupport & 0x10, 表示支持远程SADP
bySupport & 0x20, 表示支持Raid卡功能
bySupport & 0x40, 表示支持IPSAN目录查找
bySupport & 0x80, 表示支持rtp over rtsp
bySupport1
能力集扩充，位与结果为0表示不支持，1表示支持
bySupport1 & 0x1, 表示是否支持snmp v30
bySupport1 & 0x2, 表示是否支持区分回放和下载
bySupport1 & 0x4, 表示是否支持布防优先级
bySupport1 & 0x8, 表示智能设备是否支持布防时间段扩展
byRes1
保留，置为0
wDevType
设备型号
byRes2
保留，置为0

Remarks

如果byDVRType是0，则接口中解析wDevType作为设备型号；如果byDVRType非0，则接口中byDVRType和wDevType值相等，都是byDVRType。推荐使用wDevType作为设备类型。

See Also

NET_DVR_Login_V30


NET_DVR_DEVICENATINFO

NAT模式下网络信息结构体。

struct{
  NET_DVR_IPADDR    struPuIp;
  WORD              wOuterPort;
  WORD              wInterPort;
  BYTE              byRes[8];
}NET_DVR_DEVICENATINFO,*LPNET_DVR_DEVICENATINFO;

Members

struPuIp
PU端外网IP地址
wOuterPort
PU外网端口
wInterPort
PU发送视频的本地端口
byRes
保留

See Also

NET_DVR_PreviewRequest


NET_DVR_DEVICESTATECFG

智能高清IPC设备状态参数结构体。

struct{
  DWORD            dwSize;
  WORD             wPreviewNum;
  WORD             wFortifyLinkNum;
  NET_DVR_IPADDR   struPreviewIP[MAX_LINK];
  NET_DVR_IPADDR   struFortifyIP[MAX_FORTIFY_NUM];
  DWORD            dwVideoFrameRate;
  BYTE             byResolution;
  BYTE             bySnapResolution;
  BYTE             byStreamType;
  BYTE             byTriggerType;
  BYTE             dwSDVolume;
  WORD             dwSDFreeSpace;
  BYTE             byDetectorState[MAX_DRIVECHAN_NUM][MAX_COIL_NUM];
  BYTE             byDetectorLinkState;
  BYTE             bySDStatus;
  BYTE             byFortifyLevel[MAX_FORTIFY_NUM];
  BYTE             byRes2[116];
}NET_DVR_DEVICESTATECFG, *LPNET_DVR_DEVICESTATECFG;

Members

dwSize
结构体大小
wPreviewNum
预览连接个数
wFortifyLinkNum
布防连接个数
struPreviewIP
预览的用户IP地址
struFortifyIP
布防连接的用户IP地址
dwVideoFrameRate
帧率：0-全部; 1- 1/16; 2- 1/8; 3- 1/4; 4- 1/2; 5- 1; 6- 2; 7- 4; 8- 6; 9- 8; 10- 10; 11- 12; 12- 16; 13- 20; 14- 15; 15- 18; 16- 22;
byResolution
视频分辨率：0-DCIF 1-CIF, 2-QCIF, 3-4CIF, 4-2CIF，16-VGA（640*480）, 17-UXGA（1600*1200）, 18-SVGA （800*600）,19-HD720p（1280*720）,20-XVGA, 21-HD900p, 27-HD1080i, 28-2560*1920, 29-1600*304, 30-2048*1536, 31-2448*2048
bySnapResolution
抓拍分辨率：0-DCIF 1-CIF, 2-QCIF, 3-4CIF, 4-2CIF，16-VGA（640*480）, 17-UXGA（1600*1200）, 18-SVGA （800*600）,19-HD720p（1280*720）,20-XVGA, 21-HD900p, 27-HD1080i, 28-2560*1920, 29-1600*304, 30-2048*1536, 31-2448*2048
byStreamType
码流类型：0- 主码流，1- 子码流
byTriggerType
触发模式：0- 视频触发，1- 普通触发
dwSDVolume
SD卡容量
dwSDFreeSpace
SD卡剩余空间
byDetectorState
车道的线圈状态：0- 未使用，1- 正常，2- 异常
byDetectorLinkState
车检器连接状态：0- 未连接，1- 连接
bySDStatus
SD卡状态：0- 活动，1- 休眠，2- 异常，3- 无sd卡
byFortifyLevel
布防等级：0- 一等级（高），1- 二等级（中），2- 三等级（低），0xff- 无
byRes2
保留，置为0

Remarks

该结构体中参数byFortifyLevel和struFortifyIP是一一对应的。

See Also

NET_DVR_GetDVRConfig


NET_DVR_DIALPARAM

拨号参数结构体。

struct{
  DWORD              dwSize;
  BYTE               bEnable3G;
  BYTE               byDialMethod;
  BYTE               bySwitchMethod;
  BYTE               byRes1[11];
  WORD               wOffLineTime;
  NET_DVR_PPPDPARAM  struPppdParam;
  NET_DVR_QOSPARAM   struQosParam;
  BYTE               byUimNumber[MAX_PHONE_NUM];
  BYTE               byRes2[24];
}NET_DVR_DIALPARAM, *LPNET_DVR_DIALPARAM;

Members

dwSize
结构体大小
bEnable3G
是否启用3G，0- 禁用，1- 启用
byDialMethod
拨号方式，0- 自动拨号，1- 手动拨号
bySwitchMethod
切换方式，0- 自动切换，1- 3G优先，2- 手动切换成2G，3- 手动切换成3G
byRes1
保留
wOffLineTime
无连接时自动下线时间，单位：分钟，范围：5~65535分钟
struPppdParam
PPP拨号参数
struQosParam
QoS参数
byUimNumber
手机号码
byRes2
保留

See Also

NET_DVR_GetDialParam NET_DVR_SetDialParam


NET_DVR_DIALREQUEST

拨号请求结构体。

struct{
  BYTE         byConnNum;
  BYTE         byNetType;
  BYTE         byRes[6];
}NET_DVR_DIALREQUEST, *LPNET_DVR_DIALREQUEST;

Members

byConnNum
网卡序号
byNetType
指定获得某个网络的默认拨号参数，调用接口NET_DVR_SetDialParam设置时此参数无效。
0- 自动, 1- CDMA，2- EVDO，3- WCDMA，4- TD-SCDMA
byRes
保留

See Also

NET_DVR_GetDialParam NET_DVR_SetDialParam


NET_DVR_DIALSTATUS

拨号状态结构体。

struct{
  BYTE               byRealMode;
  BYTE               byUimCard;
  BYTE               byRes1[6];
  DWORD              dwSignal;
  DWORD              dwDialStatus;
  NET_DVR_IPADDR     struLocalIp;
  NET_DVR_IPADDR     struRemoteIp;
  NET_DVR_IPADDR     struNetMask;
  NET_DVR_IPADDR     struDns;
  BYTE               byRes2[16];
}NET_DVR_DIALSTATUS,*LPNET_DVR_DIALSTATUS;

Members

byRealMode
3G网络模式，具体定义如下：
enum _REAL_MODE_{
  RMODE_CDMA1X     = 12,
  RMODE_EVDO       = 14,
  RMODE_CDMAHYBRID = 18,

  RMODE_GSM        = 21,
  RMODE_GPRS       = 22,
  RMODE_EDGE       = 23,
  RMODE_WCDMA      = 24,
  RMODE_HSDPA      = 25,
  RMODE_HSUPA      = 26,
  RMODE_HSPA       = 27,

  RMODE_TGSM       = 31,
  RMODE_TGPRS      = 32,
  RMODE_TEDGE      = 33,
  RMODE_TDSCDMA    = 34,
  RMODE_TDHSDPA    = 35,
  RMODE_TDHSUPA    = 36,
  RMODE_TDHSPA     = 37
}REAL_MODE
byUimCard
UIM卡状态，具体定义如下：
enum _UIM_INFO_{
  UIM_UNKNOWN = 0,
  UIM_VALID   = 1,
  UIM_NOVALID = 4,
  UIM_ROAM    = 11,
  UIM_NOEXIST = 255
}UIM_INFO
UIM_UNKNOWN
未知
UIM_VALID
有效
UIM_NOVALID
无效
UIM_ROAM
漫游
UIM_NOEXIST
不存在
byRes1
保留
dwSignal
当前网络信号强度
dwDialStatus
拨号状态
struLocalIp
无线网络IP地址
struRemoteIp
无线网络网关
struNetMask
无线网络子网掩码
struDns
无线网络DNS地址
byRes2
保留

See Also

NET_DVR_GetDVRConfig


NET_DVR_DIRECT_CONNECT_CHAN_INFO

IP通道信息结构体。

struct{
  BYTE               byEnable;
  BYTE               byProType;
  BYTE               byRes1[2];
  BYTE               sUserName[NAME_LEN];
  BYTE               sPassword[PASSWD_LEN];
  BYTE               byDomain[MAX_DOMAIN_NAME];
  NET_DVR_IPADDR     struIP;
  WORD               wDVRPort;
  BYTE               byStreamType;
  BYTE               byRes2;
  DWORD              dwChannel;
  BYTE               byRes3[28];
}NET_DVR_DIRECT_CONNECT_CHAN_INFO, *LPNET_DVR_DIRECT_CONNECT_CHAN_INFO;

Members

byEnable
是否启用
byProType
协议类型：0- 海康协议(default)，1- 松下协议，2- 索尼，3- 大华
byRes1
保留，置为0
sUserName
用户名
sPassword
密码
byDomain
设备域名
struIP
IP地址
wDVRPort
端口号
byStreamType
码流类型：0- 主码流，1- 子码流
byRes2
保留，置为0
dwChannel
通道号
byRes3
保留，置为0

See Also

NET_DVR_STREAM_TYPE_UNION


NET_DVR_DIRECTION

方向结构体。

struct{
  NET_VCA_POINT     struStartPoint;
  NET_VCA_POINT     struEndPoint;
}NET_DVR_DIRECTION,*LPNET_DVR_DIRECTION;

Members

struStartPoint
方向起始点
struEndPoint
方向结束点

See Also

NET_DVR_AID_INFO NET_DVR_ONE_LANE


NET_DVR_DISK_QUOTA

磁盘配额信息结构体。

struct{
  BYTE      byQuotaType;
  BYTE      byRes1[7];
  DWORD     dwHCapacity;
  DWORD     dwLCapacity;
  DWORD     dwHUsedSpace;
  DWORD     dwLUsedSpace;
  BYTE      byRes2[22];
}NET_DVR_DISK_QUOTA,*LPNET_DVR_DISK_QUOTA;

Members

byQuotaType
磁盘配额类型，1- 按容量
byRes1
保留
dwHCapacity
分配的磁盘容量高32位，单位MB
dwLCapacity
分配的磁盘容量低32位，单位MB
dwHUsedSpace
已使用的磁盘空间高32位，位MB
dwLUsedSpace
已使用的磁盘空间低32位，单位MB
byRes2
保留

See Also

NET_DVR_DISK_QUOTA_CFG


NET_DVR_DISK_QUOTA_CFG

磁盘配额配置结构体。

struct{
  DWORD                    dwSize;
  NET_DVR_DISK_QUOTA       struPicQuota;
  NET_DVR_DISK_QUOTA       struRecordQuota;
  BYTE                     res2[60];
}NET_DVR_DISK_QUOTA_CFG,*LPNET_DVR_DISK_QUOTA_CFG;

Members

dwSize
结构体大小
struPicQuota
图片配额
struRecordQuota
录像配额
res2
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_DISK_RAID_INFO

磁盘Raid信息结构体。

struct{
  DWORD                    dwSize;
  BYTE                     byEnable;
  BYTE                     byRes[35];
}NET_DVR_DISK_RAID_INFO,*LPNET_DVR_DISK_RAID_INFO;

Members

dwSize
结构体大小
byEnable
磁盘Raid是否禁用，0- 禁用，1- 启用
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_DISKABILITY_LIST

设备磁盘列表结构体。

struct{
  DWORD                dwSize;
  DWORD                dwNodeNum;
  NET_DVR_DESC_NODE    struDescNode[MAX_NODE_NUM];
}NET_DVR_DISKABILITY_LIST,*LPNET_DVR_DISKABILITY_LIST;

Members

dwSize
结构体大小
dwNodeNum
可用磁盘个数
struDescNode
可用磁盘的参数结构

See Also

NET_DVR_GetDiskList


NET_DVR_DISKSTATE

硬盘信息结构体。

struct{
  DWORD    dwVolume;
  DWORD    dwFreeSpace;
  DWORD    dwHardDiskStatic;
}NET_DVR_DISKSTATE, *LPNET_DVR_DISKSTATE;

Members

dwVolume
硬盘容量
dwFreeSpace
硬盘剩余空间
dwHardDiskStatic
硬盘的状态：0－活动，1－休眠，2－异常，3-休眠硬盘出错，4-未格式化，5-未连接状态(网络硬盘)，6-硬盘正在格式化

Remarks

此处获取的是IPC的硬盘状态，其他设备的硬盘状态通过NET_DVR_GetDVRConfig的NET_DVR_GET_HDCFG命令获取。

See Also

NET_DVR_WORKSTATE_V30


NET_DVR_DISP_CHAN_STATUS

显示通道状态结构体。

struct{
  BYTE   byDispStatus;
  BYTE   byBVGA;
  BYTE   byVideoFormat;
  BYTE   byWindowMode;
  BYTE   byJoinDecChan[MAX_WINDOWS];
  BYTE   byFpsDisp[NET_DVR_MAX_DISPREGION];
  BYTE   byRes[32];
}NET_DVR_DISP_CHAN_STATUS,*LPNET_DVR_DISP_CHAN_STATUS;

Members

byDispStatus
显示状态：0-未显示，1-启动显示
byBVGA
显示接口，0-BNC输出，1-VGA输出，2-HDMI输出，3-DVI输出
byVideoFormat
视频制式，具体定义如下：
enum{
  VS_NON  = 0,
  VS_NTSC = 1,
  VS_PAL  = 2
}VIDEO_STANDARD
VS_NON
无
VS_NTSC
NTSC制式
VS_PAL
PAL制式
byWindowMode
当前画面模式
byJoinDecChan
各个子窗口关联的解码通道
byFpsDisp
每个子画面的显示帧率
byRes
保留，置为0

See Also

NET_DVR_DECODER_WORK_STATUS


NET_DVR_DISP_CHAN_STATUS_V41

显示通道状态结构体。

struct{
  BYTE   byDispStatus;
  BYTE   byBVGA;
  BYTE   byVideoFormat;
  BYTE   byWindowMode;
  BYTE   byJoinDecChan[MAX_WINDOWS_V41];
  BYTE   byFpsDisp[MAX_WINDOWS_V41];
  BYTE   byScreenMode;
  BYTE   byRes1[31];
}NET_DVR_DISP_CHAN_STATUS_V41,*LPNET_DVR_DISP_CHAN_STATUS_V41;

Members

byDispStatus
显示状态：0-未显示，1-启动显示
byBVGA
显示接口，0-BNC输出，1-VGA输出，2-HDMI输出，3-DVI输出
byVideoFormat
视频制式，具体定义如下：
enum{
  VS_NON  = 0,
  VS_NTSC = 1,
  VS_PAL  = 2
}VIDEO_STANDARD
VS_NON
无
VS_NTSC
NTSC制式
VS_PAL
PAL制式
byWindowMode
当前画面模式
byJoinDecChan
各个子窗口关联的解码通道
byFpsDisp
每个子画面的显示帧率
byScreenMode
屏幕模式：0- 普通，1- 大屏
byRes
保留，置为0

See Also

NET_DVR_DECODER_WORK_STATUS_V41


NET_DVR_DISP_LOGOCFG

上传的LOGO的结构体。

struct{
  DWORD   dwCorordinateX;
  DWORD   dwCorordinateY;
  BYTE    byRes1[8];
  BYTE    byFlash;
  BYTE    byTranslucent;
  BYTE    byRes2[6];
  DWORD   dwLogoSize;
}NET_DVR_DISP_LOGOCFG,*LPNET_DVR_DISP_LOGOCFG;

Members

dwCorordinateX
图片显示区域X坐标
dwCorordinateY
图片显示区域Y坐标
byRes1
保留，置为0
byFlash
是否闪烁：0-不闪烁，1-闪烁
byTranslucent
是否半透明：0-不半透明，1-半透明
byRes2
保留，置为0
dwLogoSize
LOGO的大小，包括BMP的文件头

See Also

NET_DVR_UploadLogo


NET_DVR_DISPINFO

解码器显示通道信息结构体。

struct{
  BYTE     byChanNums;
  BYTE     byStartChan;
  BYTE     byRes[2];
  DWORD    dwSupportResolution[MAX_SUPPORT_RES];
}NET_DVR_DISPINFO,*LPNET_DVR_DISPINFO;

Members

byChanNums
通道个数
byStartChan
起始通道号
byRes
保留，置为0
dwSupportResolution
支持的分辨率，具体定义如下所示：
宏定义 宏定义值
MAKE_RESOLUTION(_interlace_, _width_, _height_, _fps_) 		含义
NOT_AVALIABLE | MAKE_RESOLUTION(0,0,0,0) | 无
SVGA_60HZ | MAKE_RESOLUTION(0, 800, 600, 60) | SVGA:800*600，频率：60HZ
SVGA_75HZ | MAKE_RESOLUTION(0, 800, 600, 75) | SVGA:800*600，频率：75HZ
XGA_60HZ | MAKE_RESOLUTION(0, 1024, 768, 60) | XGA:1024*768，频率：60HZ
XGA_75HZ | MAKE_RESOLUTION(0, 1024, 768, 75) | XGA:1024*768，频率：75HZ
SXGA_60HZ | MAKE_RESOLUTION(0, 1280, 1024, 60) | SXGA:1280*1024，频率：60HZ
SXGA2_60HZ | MAKE_RESOLUTION(0, 1280, 960, 60) | SXGA2:1280*960，频率：60HZ
720P_60HZ | MAKE_RESOLUTION(0, 1280, 720, 60) | 720P:1280*720，频率：60HZ
720P_50HZ | MAKE_RESOLUTION(0, 1280, 720, 50) | 720P:1280*720，频率：50HZ
1080I_60HZ | MAKE_RESOLUTION(1, 1920, 1080, 60) | 1080I:1920*1080，频率：60HZ
1080I_50HZ | MAKE_RESOLUTION(1, 1920, 1080, 50) | 1080I:1920*1080，频率：50HZ
1080P_60HZ | MAKE_RESOLUTION(0, 1920, 1080, 60) | 1080P:1920*1080，频率：60HZ
1080P_50HZ | MAKE_RESOLUTION(0, 1920, 1080, 50) | 1080P:1920*1080，频率：50HZ
1080P_30HZ | MAKE_RESOLUTION(0, 1920, 1080, 30) | 1080P:1920*1080，频率：30HZ
1080P_25HZ | MAKE_RESOLUTION(0, 1920, 1080, 25) | 1080P:1920*1080，频率：25HZ
1080P_24HZ | MAKE_RESOLUTION(0, 1920, 1080, 24) | 1080P:1920*1080，频率：24HZ
UXGA_60HZ | MAKE_RESOLUTION(0, 1600, 1200, 60) | UXGA:1600*1200，频率：60HZ
UXGA_30HZ | MAKE_RESOLUTION(0, 1600, 1200, 30) | UXGA:1600*1200，频率：30HZ
WSXGA_60HZ | MAKE_RESOLUTION(0, 1680, 1050, 60) | WSXGA:1680*1050，频率：60HZ
WUXGA_60HZ | MAKE_RESOLUTION(0, 1920, 1200, 60) | WUXGA:1920*1200，频率：60HZ
WUXGA_30HZ | MAKE_RESOLUTION(0, 1920, 1200, 30) | WUXGA:1920*1200，频率：30HZ

Remarks

#define MAKE_RESOLUTION(_interlace_, _width_, _height_, _fps_) \
(((_interlace_)<<28) \
|((((_width_)>>3)&0x1ff)<<19)\
|((((_height_)>>1)&0x7ff)<<8) \
|((_fps_)&0xff))

#define GET_RES_INTERLACE(_res_) (((_res_)>>28)&0x1)

#define GET_RES_WIDTH(_res_) ((((_res_)>>19)&0x1ff)<<3)

#define GET_RES_HEIGHT(_res_) ((((_res_)>>8)&0x7ff)<<1)

#define GET_RES_FPS(_res_) ((_res_)&0xff)

See Also

NET_DVR_MATRIX_ABILITY_V41


NET_DVR_DISPLAY_PARA

硬解码显示参数结构体。

struct{
  long    lToScreen;
  long    lToVideoOut;
  long    lLeft;
  long    lTop;
  long    lWidth;
  long    lHeight;
  long    lReserved;
}NET_DVR_DISPLAY_PARA,*LPNET_DVR_DISPLAY_PARA;

Members

lToScreen
是否输出到PC显示器屏幕上：1－是；0－否
lToVideoOut
是否输出到监视器上：1－是；0－否
lLeft
lToScreen取值为1时，输出位置的左上点的横坐标，相对于父窗口而言
lTop
lToScreen取值为1时，输出位置的左上点的纵坐标，相对与父窗口而言
lWidth
lToScreen取值为1时，输出图象的宽度
lHeight
lToScreen取值为1时，输出图象的高度
lReserved
保留，置为0

See Also

NET_DVR_ResetPara_Card NET_DVR_CARDINFO


NET_DVR_DISPWINDOWMODE

解码器显示通道画面分割模式结构体。

struct{
  BYTE     byDispChanType;
  BYTE     byDispChanSeq;
  BYTE     byRes[2];
  DWORD    byDispMode[MAX_WINDOWSMODE];
}NET_DVR_DISPWINDOWMODE,*LPNET_DVR_DISPWINDOWMODE;

Members

byDispChanType
显示通道类型：0- BNC，1- VGA，2- HDMI，3- DVI
byDispChanSeq
显示通道序号，从1开始，如果类型是VGA，则表示第几个VGA
byRes
保留，置为0
byDispMode
支持的画面分割模式。

Remarks

取值举例说明：
NET_DVR_MATRIX_ABILITY_V41  m_Ability;
m_Ability.struDispMode[0].byDispChanType = 1;   //VGA
m_Ability.struDispMode[0].byDispChanSeq  = 1;   //第一个VGA
m_Ability.struDispMode[0].byDispMode[0]  = 1;   //1画面
m_Ability.struDispMode[0].byDispMode[1]  = 4;   //4画面
m_Ability.struDispMode[0].byDispMode[2]  = 0;
...
m_Ability.struDispMode[0].byDispMode[11] = 0;
m_Ability.struDispMode[1].byDispChanType = 2;   //HDMI
m_Ability.struDispMode[1].byDispChanSeq  = 1;   //第一个HDMI
m_Ability.struDispMode[1].byDispMode[0]  = 1;   //1画
m_Ability.struDispMode[1].byDispMode[1]  = 4;   //4画面
m_Ability.struDispMode[1].byDispMode[2]  = 16;  //16画面
m_Ability.struDispMode[1].byDispMode[3]  = 0;
...
m_Ability.struDispMode[1].byDispMode[11] = 0;
...
//m_Ability.struDispMode[2]~ m_Ability.struDispMode[31]所有的参数值为0
...
则该能力集表示只支持一个VGA和一个HDMI，VGA支持1、4画面分割，HDMI支持1、4、16画面分割。

See Also

NET_DVR_MATRIX_ABILITY_V41


NET_DVR_DOME_MOVEMENT_PARAM

球机机芯参数结构体。

struct{
  WORD    wMaxZoom;
  BYTE    byRes[42];
}NET_DVR_DOME_MOVEMENT_PARAM, *LPNET_DVR_DOME_MOVEMENT_PARAM;

Members

wMaxZoom
球机最大倍率系数
byRes
处理方式参数

See Also

NET_DVR_GetDVRConfig


NET_DVR_EMAILCFG

网络应用参数（EMAIL）结构体。

struct{
  DWORD    dwSize;
  char     sUserName[32];
  char     sPassWord[32];
  char     sFromName[32];
  char     sFromAddr[48];
  char     sToName1[32];
  char     sToName2[32];
  char     sToAddr1[48];
  char     sToAddr2[48];
  char     sEmailServer[32];
  BYTE     byServerType;
  BYTE     byUseAuthen;
  BYTE     byAttachment;
  BYTE     byMailinterval;
}NET_DVR_EMAILCFG, *LPNET_DVR_EMAILCFG;

Members

dwSize
结构体大小
sUserName
Email用户名
sPassWord
Email密码
sFromName
发件人名称
sFromAddr
发件人地址，字符串中的第一个字符和最后一个字符不能是"@"，并且字符串中要有"@"字符
sToName1
收件人1的名称
sToName2
收件人2的名称
sToAddr1
收件人1的地址
sToAddr2
收件人2的地址
sEmailServer
Email服务器地址
byServerType
Email服务器类型
byUseAuthen
是否启动Email服务器验证：1－是，0－否
byAttachment
是否带附件
byMailinterval
邮件发送间隔：0－2秒，1－3秒，2－4秒，3－5秒

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_EMAILCFG_V30


NET_DVR_EMAILCFG_V30

网络应用参数（EMAIL）结构体。

struct{
  DWORD     dwSize;
  BYTE      sAccount[NAME_LEN];
  BYTE      sPassword[MAX_EMAIL_PWD_LEN];
  struct{
           BYTE   sName[NAME_LEN];
           BYTE   sAddress[MAX_EMAIL_ADDR_LEN];
  }struSender
  BYTE      sSmtpServer[MAX_EMAIL_ADDR_LEN];
  BYTE      sPop3Server[MAX_EMAIL_ADDR_LEN];
  struct{
           BYTE   sName[NAME_LEN];
           BYTE   sAddress[MAX_EMAIL_ADDR_LEN];
  }struReceiver[3];
  BYTE      byAttachment;
  BYTE      bySmtpServerVerify;
  BYTE      byMailInterval;
  BYTE      byEnableSSL;
  WORD      wSmtpPort;
  BYTE      byRes[74];
}NET_DVR_EMAILCFG_V30,*LPNET_DVR_EMAILCFG_V30;

Members

dwSize
结构体大小
sAccount
账号
sPassword
密码
sName
发件人姓名
sAddress
发件人地址
sSmtpServer
SMTP服务器
sPop3Server
POP3服务器
sName
收件人姓名
sAddress
收件人地址
byAttachment
是否带附件
bySmtpServerVerify
发送服务器要求身份验证
byMailInterval
邮件发送间隔：0－2秒，1－3秒，2－4秒，3－5秒
byEnableSSL
是否启用SSL：0-禁用，非0-启用
wSmtpPort
SMTP端口：GMAIL的465，其他为25
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_EMAILCFG


NET_DVR_ENFORCESYS_PARA

车辆稽查参数结构体。

struct{
  DWORD                   dwSize;
  NET_DVR_SPEEDLMT_PARA   struSpeedLmtPara;
  NET_DVR_PLATECHECK_PARA struPlateCheckPara;
  BYTE                    bySelPeccType;
  BYTE                    byEnfOptHabit;
  BYTE                    byAdjPrevFpsMode;
  BYTE                    byRes1;
  NET_DVR_IPADDR          struUploadServerIp;
  WORD                    wUploadServerPort;
  BYTE                    byRes2[18];
}NET_DVR_ENFORCESYS_PARA, *LPNET_DVR_ENFORCESYS_PARA;

Members

dwSize
结构体大小
struSpeedLmtPara
限速设置
struPlateCheckPara
车牌比对
bySelPeccType
是否选择违章类型，0- 否，1- 是
byEnfOptHabit
取证操作习惯，0- 长按取证，1- 短按两次取证
byAdjPrevFpsMode
预览帧率调节模式
0- 关闭，以固定高帧率(25FPS)预览；
1- 标准，以固定低帧率(6FPS)预览；
2- 自适应，根据GPS速度信息动态调整预览帧率，3秒无有效GPS的情况下，以固定高帧率预览
byRes1
保留
struUploadServerIp
上传服务器地址
wUploadServerPort
上传服务器端口
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_ETHERNET

以太网配置结构体。

struct{
  char    sDVRIP[16];
  char    sDVRIPMask[16];
  DWORD   dwNetInterface;
  WORD    wDVRPort;
  BYTE    byMACAddr[MACADDR_LEN];
}NET_DVR_ETHERNET, *LPNET_DVR_ETHERNET;

Members

sDVRIP
设备IP地址
sDVRIPMask
设备IP地址掩码
dwNetInterface
网络接口：1-10MBase-T；2-10MBase-T全双工；3-100MBase-TX；4-100M全双工；5-10M/100M自适应
wDVRPort
设备端口号
byMACAddr
设备物理地址

See Also

NET_DVR_NETCFG


NET_DVR_ETHERNET_MULTI

单个网卡配置信息结构体。

struct{
  NET_DVR_IPADDR    struDVRIP;
  NET_DVR_IPADDR    struDVRIPMask;
  DWORD             dwNetInterface;
  BYTE              byRes1[2];
  WORD              wMTU;
  BYTE              byMACAddr[MACADDR_LEN];
  BYTE              byRes2[2];
  BYTE              byUseDhcp;
  BYTE              byRes3[3];
  NET_DVR_IPADDR    struGatewayIpAddr;
  NET_DVR_IPADDR    struDnsServer1IpAddr;
  NET_DVR_IPADDR    struDnsServer2IpAddr;
}NET_DVR_ETHERNET_MULTI, *LPNET_DVR_ETHERNET_MULTI;

Members

struDVRIP
设备IP地址
struDVRIPMask
设备IP地址掩码
dwNetInterface
网络接口：1-10MBase-T；2-10MBase-T全双工；3-100MBase-TX；4-100M全双工；5-10M/100M/1000M自适应
byRes1
保留
wMTU
MTU设置，默认1500
byMACAddr
设备物理地址，只读
byRes2
保留
byUseDhcp
是否启用DHCP
byRes3
保留
struGatewayIpAddr
网关地址
struDnsServer1IpAddr
域名服务器1的IP地址
struDnsServer2IpAddr
域名服务器2的IP地址

Remarks

MTU的设置范围为500-9676，若MTU设置过小客户端将无法注册到设备，并且客户端预览、回放、配置参数也会失败。

See Also

NET_DVR_NETCFG_MULTI


NET_DVR_ETHERNET_V30

以太网配置结构体。

struct{
  NET_DVR_IPADDR    struDVRIP;
  NET_DVR_IPADDR    struDVRIPMask;
  DWORD             dwNetInterface;
  WORD              wDVRPort;
  WORD              wMTU;
  BYTE              byMACAddr[MACADDR_LEN];
  BYTE              byRes[2];
}NET_DVR_ETHERNET_V30, *LPNET_DVR_ETHERNET_V30;

Members

struDVRIP
设备IP地址
struDVRIPMask
设备IP地址掩码
dwNetInterface
网络接口：1-10MBase-T；2-10MBase-T全双工；3-100MBase-TX；4-100M全双工；5-10M/100M/1000M自适应；6-1000M全双工
wDVRPort
设备端口号
wMTU
MTU设置，默认1500
byMACAddr
设备物理地址
byRes
保留

Remarks

MTU的设置范围为500-9676，若MTU设置过小客户端将无法注册到设备，并且客户端预览、回放、配置参数也会失败。

See Also

NET_DVR_NETCFG_V30 NET_DVR_ONE_BONDING


NET_DVR_EVENT_CAPTURE

事件抓图参数结构体。

struct{
  NET_DVR_JPEGPARA               struJpegPara;
  DWORD                          dwPicInterval;
  NET_DVR_REL_CAPTURE_CHAN       struRelCaptureChan[MAX_PIC_EVENT_NUM];
  NET_DVR_REL_CAPTURE_CHAN       struAlarmInCapture[MAX_ALARMIN_CAPTURE];
  BYTE                           byRes[60];
}NET_DVR_EVENT_CAPTURE, *LPNET_DVR_EVENT_CAPTURE;

Members

struJpegPara
事件抓图图片质量
dwPicInterval
事件抓图时间间隔，单位为秒
struRelCaptureChan
数组下标为：0表示移动侦测触发抓图，1表示视频遮挡触发抓图，2表示视频丢失触发抓图，3表示PIR报警抓图，4表示无线报警抓图，5表示呼救报警抓图。例如，struRelCaptureChan[0]里的byChan[0]第0位为1表示当前配置通道的移动侦测会触发第一通道的抓图
struAlarmInCapture
报警输入触发抓图，下标为0表示报警输入1，依次类推(用于一个通道多个报警输入触发的情况)。例如，struAlarmInCapture[0]里的byChan[0]第0位为1表示当前配置通道的第一个报警输入会触发第一通道的抓图。
byRes
保留

See Also

NET_DVR_JPEG_CAPTURE_CFG


NET_DVR_EVENT_INFO

单个事件信息。

struct{
  BYTE                          byRuleID;
  BYTE                          byRes[3];
  BYTE                          byRuleName[NAME_LEN];
  DWORD                         dwEventType;
  NET_DVR_EVENT_PARAM_UNION     uEventParam;
}NET_DVR_EVENT_INFO, *LPNET_DVR_EVENT_INFO;

Members

byRuleID
规则序号，为规则配置结构的下标
byRes1
保留
byRuleName
规则名称
dwAIDType
事件类型，具体定义见下表：
enum _VCA_EVENT_TYPE_{
  VCA_TRAVERSE_PLANE   = 0x1,
  VCA_ENTER_AREA       = 0x2,
  VCA_EXIT_AREA        = 0x4,
  VCA_INTRUSION        = 0x8,
  VCA_LOITER           = 0x10,
  VCA_LEFT_TAKE        = 0x20,
  VCA_PARKING          = 0x40,
  VCA_RUN              = 0x80,
  VCA_HIGH_DENSITY     = 0x100,
  VCA_VIOLENT_MOTION   = 0x200,
  VCA_REACH_HIGHT      = 0x400,
  VCA_GET_UP           = 0x800,
  VCA_LEFT             = 0x1000,
  VCA_TAKE             = 0x2000,
  VCA_HUMAN_ENTER      = 0x10000000,
  VCA_OVER_TIME        = 0x20000000,
  VCA_STICK_UP         = 0x40000000,
  VCA_INSTALL_SCANNER  = 0x80000000
}VCA_EVENT_TYPE
VCA_TRAVERSE_PLANE
穿越警戒面
VCA_ENTER_AREA
目标进入区域，支持区域规则
VCA_EXIT_AREA
目标离开区域，支持区域规则
VCA_INTRUSION
周界入侵，支持区域规则
VCA_LOITER
徘徊，支持区域规则
VCA_LEFT_TAKE
丢包捡包，支持区域规则
VCA_PARKING
停车，支持区域规则
VCA_RUN
奔跑，支持区域规则
VCA_HIGH_DENSITY
区域内人员密度，支持区域规则
VCA_VIOLENT_MOTION
剧烈运动检测
VCA_REACH_HIGHT
攀高检测
VCA_GET_UP
起身检测
VCA_LEFT
丢包
VCA_TAKE
捡包
VCA_HUMAN_ENTER
人靠近ATM（仅在ATM_PANEL模式下支持）
VCA_OVER_TIME
操作超时（仅在ATM_PANEL模式下支持）
VCA_STICK_UP
贴纸条,支持区域规则
VCA_INSTALL_SCANNER
安装读卡器,支持区域规则
uEventParam
事件参数联合体

See Also

NET_DVR_EVENT_INFO_LIST


NET_DVR_EVENT_INFO_LIST

事件信息列表。

struct{
  BYTE                 byNum;
  BYTE                 byRes1[3];
  NET_DVR_EVENT_INFO   struEventInfo[MAX_RULE_NUM];
}NET_DVR_EVENT_INFO_LIST, *LPNET_DVR_EVENT_INFO_LIST;

Members

byNum
事件实时信息个数
byRes1
保留
struEventInfo
事际实时信息

See Also

NET_DVR_RULE_INFO_ALARM


NET_DVR_EVENT_PARAM_UNION

事件参数联合体。

struct{
  DWORD                 uLen[3];
  DWORD                 dwHumanIn;
  float                 fCrowdDensity;
}NET_DVR_EVENT_PARAM_UNION, *LPNET_DVR_EVENT_PARAM_UNION;

Members

uLen
联合体大小，12字节
dwHumanIn
有没有人接近：0- 无人， 1- 有人
fCrowdDensity
人员聚集值

See Also

NET_DVR_EVENT_INFO


NET_DVR_EXCEPTION

异常参数结构体。

struct{
  DWORD                       dwSize;
  NET_DVR_HANDLEEXCEPTION     struExceptionHandleType[MAX_EXCEPTIONNUM];
}NET_DVR_EXCEPTION,*LPNET_DVR_EXCEPTION;

Members

dwSize
结构体大小
struExceptionHandleType
异常信息处理方式：
数组0－硬盘满
数组1－硬盘出错
数组2－网线断
数组3－IP 地址冲
数组4－非法访问
数组5－输入/输出视频制式不匹配
数组6－视频信号异常

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_EXCEPTION_V30


NET_DVR_EXCEPTION_V30

异常参数结构体。

struct{
  DWORD                           dwSize;
  NET_DVR_HANDLEEXCEPTION_V30     struExceptionHandleType[MAX_EXCEPTIONNUM_V30];
}NET_DVR_EXCEPTION_V30,*LPNET_DVR_EXCEPTION_V30;

Members

dwSize
结构体大小
struExceptionHandleType
异常信息处理方式：
数组0－硬盘满
数组1－硬盘出错
数组2－网线断
数组3－IP 地址冲
数组4－非法访问
数组5－输入/输出视频制式不匹配
数组6－视频信号异常
数组7－录像异常
数组8－阵列异常
数组9－前端/录像分辨率不匹配异常

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_EXCEPTION


NET_DVR_EXPOSURE

CCD曝光控制参数结构体。

struct{
  BYTE       byExposureMode;
  BYTE       byAutoApertureLevel;
  BYTE       byRes[2];
  DWORD      dwVideoExposureSet;
  DWORD      dwExposureUserSet;
  DWORD      dwRes;
}NET_DVR_EXPOSURE, *LPNET_DVR_EXPOSURE;

Members

byExposureMode
0-手动曝光，1-自动曝光
byAutoApertureLevel
自动光圈灵敏度，取值范围：0~10
byRes
保留
dwVideoExposureSet
自定义视频曝光时间（单位us），自动曝光时该值为曝光最慢值
dwExposureUserSet
自定义曝光时间。在智能高清网络摄像机上应用及CCD模式时，是指抓拍快门速度，（单位us）
dwRes
保留

See Also

NET_DVR_CAMERAPARAMCFG


NET_DVR_FACEDETECT_ALARM

人脸报警上传结构体。

struct{
  DWORD                  dwSize;
  DWORD                  dwRelativeTime;
  DWORD                  dwAbsTime;
  BYTE                   byRuleName[NAME_LEN];
  NET_VCA_TARGET_INFO    struTargetInfo;
  NET_VCA_DEV_INFO       struDevInfo;
  DWORD                  dwPicDataLen;
  BYTE                   byAlarmPicType;
  BYTE                   byPanelChan;
  BYTE                   byRes1[2];
  DWORD                  dwFacePicDataLen;
  BYTE                   byRes[48];
  BYTE                   *pFaceImage;
  BYTE                   *pImage;
}NET_DVR_FACEDETECT_ALARM, *LPNET_DVR_FACEDETECT_ALARM;

Members

dwSize
结构大小
dwRelativeTime
相对时标
dwAbsTime
绝对时标
byRuleName
规则名称
struTargetInfo
报警目标信息
struDevInfo
前端设备信息
dwPicDataLen
返回图片的长度，为0表示没有图片，大于0表示该结构后面紧跟图片数据。
byAlarmPicType
0-异常人脸报警图片，1- 人脸图片
byPanelChan
人脸通道关联的面板通道
byRes1
保留
dwFacePicDataLen
人脸图片的长度，为0表示没有图片，大于0表示该结构后面紧跟图片数据
byRes
保留
pFaceImage
指向人脸图指针
pImage
指向图片的指针

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_DVR_FACEDETECT_RULECFG

人脸检测规则结构体。

struct{
  DWORD                         dwSize;
  BYTE                          byEnable;
  BYTE                          byEventType;
  BYTE                          byUpLastAlarm;
  BYTE                          byRes1;
  BYTE                          byRuleName[NAME_LEN];
  NET_VCA_POLYGON               struPolygon;
  BYTE                          byPicProType;
  BYTE                          bySensitivity;
  DWORD                         wDuration;
  NET_DVR_JPEGPARA              struPictureParam;
  NET_VCA_SIZE_FILTER           struSizeFilter;
  NET_DVR_SCHEDTIME             struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_2];
  NET_DVR_HANDLEEXCEPTION_V30   struHandleType;
  BYTE                          byRelRecordChan[MAX_CHANNUM_V30];
  BYTE                          byPicRecordEnable;
  BYTE                          byRes2[39];
 }NET_DVR_FACEDETECT_RULECFG,*LPNET_DVR_FACEDETECT_RULECFG;

Members

dwSize
结构体大小
byEnable
是否启用人脸检测规则
byEventType
警戒事件类型， 0-异常人脸; 1-正常人脸;2-异常人脸&正常人脸
byUpLastAlarm
是否先上传最近一次的报警
byRes1
保留，置为0
byRuleName
规则名称
struPolygon
人脸检测规则区域
byPicProType
报警时图片处理方式：0-不处理，非0-上传
bySensitivity
规则灵敏度
wDuration
触发人脸报警时间阈值
struPictureParam
图片规格结构
struSizeFilter
尺寸过滤器
struAlarmTime
布防时间
struHandleType
处理方式
byRelRecordChan
报警触发的录象通道，为1表示触发该通道
byPicRecordEnable
是否启用图片存储：0- 不启用，1- 启用
byRes2
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_FILECOND

查找的录像文件信息结构体。

struct{
  LONG             lChannel;
  DWORD            dwFileType;
  DWORD            dwIsLocked;
  DWORD            dwUseCardNo;
  BYTE             sCardNumber[32];
  NET_DVR_TIME     struStartTime;
  NET_DVR_TIME     struStopTime;
}NET_DVR_FILECOND,*LPNET_DVR_FILECOND;

Members

lChannel
通道号
dwFileType
录象文件类型（根据dwUseCardNo参数是否带卡号查找分为两类）：
不带卡号查找时类型：0xff－全部，0－定时录像，1-移动侦测，2－报警触发，3-报警触发或移动侦测，4-报警触发和移动侦测，5-命令触发，6-手动录像，7-智能录像，10-PIR报警，11-无线报警，12-呼救报警，13-PIR|无线报警|呼救报警
带卡号查找时类型：0xff－全部，0－定时录像，1—移动侦测，2－接近报警，3－出钞报警，4－进钞报警，5—命令触发，6－手动录像，7－震动报警，8-环境报警，9-智能报警，10-PIR报警，11-无线报警，12-呼救报警，13-PIR|无线报警|呼救报警
dwIsLocked
是否锁定：0-未锁定文件，1-锁定文件，0xff表示所有文件（包括锁定和未锁定）
dwUseCardNo
是否带卡号查找
sCardNumber
卡号，ATM机按卡号查找时若卡号为空，则
struStartTime
开始时间
struStopTime
停止时间

Remarks

按卡号查找录像文件需要设备支持，比如ATM机。如果ATM机按卡号查找（dwUseCardNo=1）时，卡号sCardNumber为空，则搜索所有录像文件

See Also

NET_DVR_FindFile_V30


NET_DVR_FILTER

ATM报文过滤配置结构体。

struct{
  BYTE    byEnable;
  BYTE    byMode;
  BYTE    byFrameBeginPos;
  BYTE    byRes[1];
  BYTE    byFilterText[16];
  BYTE    byRes2[12];
}NET_DVR_FILTER, *LPNET_DVR_FILTER;

Members

byEnable
是否启用过滤设置，0-不启用；1-启用
byMode
过滤字符模式，0-ASCII；1-HEX
byFrameBeginPos
需过滤目标字符串的起始位置
byRes
保留
byFilterText
过滤字符串
byRes2
保留

See Also

NET_DVR_ATM_USER_DEFINE_PROTOCOL


NET_DVR_FIND_DATA

录像文件信息结构体。

struct{
  char             sFileName[100];
  NET_DVR_TIME     struStartTime;
  NET_DVR_TIME     struStopTime;
  DWORD            dwFileSize;
}NET_DVR_FIND_DATA,*LPNET_DVR_FIND_DATA;

Members

sFileName
文件名
struStartTime
文件的开始时间
struStopTime
文件的结束时间
dwFileSize
文件大小

See Also

NET_DVR_FindNextFile


NET_DVR_FIND_LABEL

录像标签查找结构体。

struct{
  DWORD            dwSize;
  LONG             lChannel;
  NET_DVR_TIME     struStartTime;
  NET_DVR_TIME     struStopTime;
  BYTE             sLabelName[LABEL_NAME_LEN];
  BYTE             byRes[40];
}NET_DVR_FIND_LABEL,*LPNET_DVR_FIND_LABEL;

Members

dwSize
结构体大小
lChannel
查找的通道
struStartTime
开始时间
struStopTime
结束时间
sLabelName
录像标签名称。如果标签名称为空，则搜索起止时间所有标签
byRes
保留

See Also

NET_DVR_FindRecordLabel


NET_DVR_FIND_PICTURE

图片查找信息结构体。

struct{
  char             sFileName[PICTURE_NAME];
  NET_DVR_TIME     struTime;
  DWORD            dwFileSize;
  char             sCardNum[32];
  BYTE             byRes[32];
}NET_DVR_FIND_PICTURE,*LPNET_DVR_FIND_PICTURE;

Members

sFileName
图片名称
struTime
图片的时间
dwFileSize
图片的大小
sCardNum
卡号
byRes
保留

See Also

NET_DVR_FindNextPicture


NET_DVR_FIND_PICTURE_PARAM

图片信息结构体。

struct{
  DWORD            dwSize;
  LONG             lChannel;
  BYTE             byFileType;
  BYTE             byNeedCard;
  BYTE             byRes1[2];
  BYTE             sCardNum[CARDNUM_LEN_V30];
  NET_DVR_TIME     struStartTime;
  NET_DVR_TIME     struStopTime;
  BYTE             byRes2[40];
}NET_DVR_FIND_PICTURE_PARAM,*LPNET_DVR_FIND_PICTURE_PARAM;

Members

dwSize
结构体大小
lChannel
通道号
byFileType
查找的图片类型：0- 定时抓图，1- 移动侦测抓图，2- 报警抓图，3- 报警|移动侦测抓图， 4- 报警&移动侦测抓图，6- 手动抓图，10- PIR报警，11- 无线报警，12- 呼救报警，0xa- 预览时截图，0xff- 全部类型
byNeedCard
是否需要卡号
byRes1
保留
sCardNum
卡号
struStartTime
查找图片的开始时间
struStopTime
查找图片的结束时间
byRes2
保留，置为0

See Also

NET_DVR_FindPicture


NET_DVR_FINDDATA_V30

录像文件信息结构体。

struct{
  char             sFileName[100];
  NET_DVR_TIME     struStartTime;
  NET_DVR_TIME     struStopTime;
  DWORD            dwFileSize;
  char             sCardNum[32];
  BYTE             byLocked;
  BYTE             byFileType;
  BYTE             byRes[2];
}NET_DVR_FINDDATA_V30,*LPNET_DVR_FINDDATA_V30;

Members

sFileName
文件名
struStartTime
文件的开始时间
struStopTime
文件的结束时间
dwFileSize
文件大小
sCardNum
卡号
byLocked
文件是否被锁定，1－文件已锁定；0－文件未锁定
byFileType
文件类型：0－定时录像，1-移动侦测，2－报警触发，3-报警|移动侦测，4-报警&移动侦测，5-命令触发，6-手动录像，7-震动报警，8-环境报警，9-智能报警，10-PIR报警，11-无线报警，12-呼救报警
byRes
保留，置为0

See Also

NET_DVR_BACKUP_NAME_PARAM

NET_DVR_FindNextFile_V30


NET_DVR_FINDLABEL_DATA

标签信息结构体。

struct{
  BYTE                    sLabelName[LABEL_NAME_LEN];
  NET_DVR_TIME            struTimeLabel;
  NET_DVR_LABEL_IDENTIFY  struLabelIdentify;
  BYTE                    byRes1[32];
}NET_DVR_FINDLABEL_DATA,*LPNET_DVR_FINDLABEL_DATA;

Members

sLabelName
标签名称
struTimeLabel
标签时间
struLabelIdentify
标签标识
byRes
保留，置为0

See Also

NET_DVR_FindNextLabel


NET_DVR_FLASH_OUTCFG

IO闪光灯输出参数结构体。

struct{
  DWORD      dwSize;
  BYTE       byMode;
  BYTE       byRelatedIoIn;
  BYTE       byRecognizedLane;
  BYTE       byDetectBrightness;
  BYTE       byBrightnessThreld;
  BYTE       byStartHour;
  BYTE       byStartMinute;
  BYTE       byEndHour;
  BYTE       byEndMinute;
  BYTE       byFlashLightEnable;
  BYTE       byRes[2];
}NET_DVR_FLASH_OUTCFG, *LPNET_DVR_FLASH_OUTCFG;

Members

dwSize
结构体大小
byMode
闪光灯闪烁模式，0-不闪，1-闪，2-关联闪，3-轮闪
byRelatedIoIn
闪光灯关联的输入IO号（关联闪时此参数有效，暂时保留）
byRecognizedLane
关联的IO号，按位表示，bit0表示IO1是否关联，0-不关联，1-关联
byDetectBrightness
自动检测亮度使能闪光灯0-不检测；1-检测
byBrightnessThreld
使能闪光灯亮度阈值，范围[0,100],高于阈值闪
byStartHour
开始时间，单位：小时，取值范围[0,23]
byStartMinute
开始时间，单位：分，取值范围[0,59]
byEndHour
结束时间，单位：小时，取值范围[0,23]
byEndMinute
结束时间，单位：分，取值范围[0,59]
byFlashLightEnable
闪光灯时间是否开启：0-关，1-开
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_FLOW_INFO

检测网络流量结果参数。

struct{
  DWORD     dwSize;
  DWORD     dwSendFlowSize;
  DWORD     dwRecvFlowSize;
  BYTE      byRes[16];
}NET_DVR_FLOW_INFO,*LPNET_DVR_FLOW_INFO;

Members

dwSize
结构体大小
dwSendFlowSize
发送流量大小，单位kbps
dwRecvFlowSize
接收流量大小，单位kbps
byRes
保留

See Also

NET_DVR_StartNetworkFlowTest


NET_DVR_FLOW_TEST_PARAM

检测网络流量参数结构体。

struct{
  DWORD     dwSize;
  DWORD     lCardIndex;
  DWORD     dwTime;
  BYTE      byRes[8];
}NET_DVR_FLOW_TEST_PARAM,*LPNET_DVR_FLOW_TEST_PARAM;

Members

dwSize
结构体大小
lCardIndex
网卡索引：0–网卡0，1-网卡1，依此类推；最高位为1表示bonding网卡，0表示普通网卡
dwTime
上传时间间隔,单位100 毫秒
byRes
保留

See Also

NET_DVR_StartNetworkFlowTest


NET_DVR_FRAMEFORMAT

ATM交易协议结构体。

struct{
  DWORD                     dwSize;
  char                      sATMIP[16];
  DWORD                     dwATMType;
  DWORD                     dwInputMode;
  DWORD                     dwFrameSignBeginPos;
  DWORD                     dwFrameSignLength;
  BYTE                      byFrameSignContent[12];
  DWORD                     dwCardLengthInfoBeginPos;
  DWORD                     dwCardLengthInfoLength;
  DWORD                     dwCardNumberInfoBeginPos;
  DWORD                     dwCardNumberInfoLength;
  DWORD                     dwBusinessTypeBeginPos;
  DWORD                     dwBusinessTypeLength;
  NET_DVR_FRAMETYPECODE     frameTypeCode[10];
}NET_DVR_FRAMEFORMAT,*LPNET_DVR_FRAMEFORMAT;

Members

dwSize
结构体大小
sATMIP
ATM IP地址
dwATMType
ATM类型
宏定义 | 宏定义值
NCR | 0
DIEBOLD | 1
WINCOR_NIXDORF | 2
SIEMENS | 3
OLIVETTI | 4
FUJITSU | 5
HITACHI | 6
SMI | 7
IBM | 8
BULL | 9
YiHua | 10
LiDe | 11
GDYT | 12
Mini_Banl | 13
GuangLi | 14
DongXin | 15
ChenTong | 16
NanTian | 17
XiaoXing | 18
GZYY | 19
QHTLT | 20
DRS918 | 21
KALATEL | 22
NCR_2 | 23
NXS | 24
dwInputMode
输入方式：0-网络侦听，1-网络接收，2-串口直接输入，3-串口ATM命令输入
dwFrameSignBeginPos
报文标志位的起始位置
dwFrameSignLength
报文标志位的长度
byFrameSignContent
报文标志位的内容
dwCardLengthInfoBeginPos
卡号长度信息的起始位置
dwCardLengthInfoLength
卡号长度信息的长度
dwCardNumberInfoBeginPos
卡号信息的起始位置
dwCardNumberInfoLength
卡号信息的长度
dwBusinessTypeBeginPos
交易类型的起始位置
dwBusinessTypeLength
交易类型的长度
frameTypeCode
交易方式类型码

See Also

NET_DVR_ClientGetframeformat NET_DVR_ClientSetframeformat


NET_DVR_FRAMETYPECODE

交易方式类型码。

struct{
  BYTE    code[12];
}NET_DVR_FRAMETYPECODE;

Members

code
类型码


NET_DVR_FTPCFG

FTP上传参数结构体。

struct{
  DWORD      dwSize;
  DWORD      dwEnableFTP;
  char       sFTPIP[16];
  DWORD      dwFTPPort;
  BYTE       sUserName[NAME_LEN];
  BYTE       sPassword[PASSWD_LEN];
  DWORD      dwDirLevel;
  WORD       wTopDirMode;
  WORD       wSubDirMode;
  BYTE       byRes[24];
}NET_DVR_FTPCFG, *LPNET_DVR_FTPCFG;

Members

dwSize
结构体大小
dwEnableFTP
是否启用FTP，0-不启用，1-启用
sFTPIP
FTP服务器IP地址
dwFTPPort
FTP端口号
sUserName
用户名
sPassword
密码
dwDirLevel
目录结构，0-不使用目录结构，直接保存在根目录，1-使用1级目录，2-使用2级目录
wTopDirMode
一级目录，1-使用设备名，2-使用设备号，3-使用设备ip地址，4-使用监测点，5-使用时间(年月)
wSubDirMode
二级目录，1-使用通道名，2-使用通道号，3-使用时间(年月日)，4-使用车道号
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_GAIN

增益参数结构体。

struct{
  BYTE      byGainLevel;
  BYTE      byGainUserSet;
  BYTE      byRes[2];
  DWORD     dwMaxGainValue;
}NET_DVR_GAIN, *LPNET_DVR_GAIN;

Members

byGainLevel
增益，单位dB，取值范围[0,100]
byGainUserSet
用户自定义增益，单位dB，取值范围[0,100]，对于智能高清网络摄像机，是CCD模式下的抓拍增益
byRes
保留，置为0
dwMaxGainValue
最大增益值，单位dB

See Also

NET_DVR_CAMERAPARAMCFG


NET_DVR_GAMMACORRECT

Gamma校正配置参数结构体。

struct{
  BYTE       byGammaCorrectionEnabled;
  BYTE       byGammaCorrectionLevel;
  BYTE       byRes[6];
}NET_DVR_GAMMACORRECT, *LPNET_DVR_GAMMACORRECT;

Members

byGammaCorrectionEnabled
Gamma校正是否启用，0-不启用，1-启用
byGammaCorrectionLevel
0-100
byRes
保留，置为0

See Also

NET_DVR_CAMERAPARAMCFG


NET_DVR_GATEWAY_CFG

门禁参数配置结构体。

struct{
  DWORD        dwSize;
  BYTE         byName[NAME_LEN];
  BYTE         byEnable;
  BYTE         byLocalEnable;
  WORD         wDelayTime;
  BYTE         byLockWorkMode;
  BYTE         byRes[31];
}NET_DVR_GATEWAY_CFG, *LPNET_DVR_GATEWAY_CFG;

Members

dwSize
结构体大小
byName
门禁名称
byEnable
是否启用
byLocalEnable
本地是否启用
wDelayTime
开启延时时间，单位为：秒，取值范围：0~65535，0为一直开启
byLockWorkMode
电锁工作模式：0- 通电启动，1-断电启动
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_ALARMER

设备网络SDK开发使用手册

NET_DVR_GEOGLOCATION

地址位置信息结构体。

struct{
  int     iRes[2];
  DWORD   dwCity;
}NET_DVR_GEOGLOCATION,*LPNET_DVR_GEOGLOCATION;

Members

iRes
保留，置为0
dwCity
城市
enum _PROVINCE_CITY_IDX_{
  ANHUI_PROVINCE             = 0,
  AOMEN_PROVINCE             = 1,
  BEIJING_PROVINCE           = 2,
  CHONGQING_PROVINCE         = 3,
  FUJIAN_PROVINCE            = 4,
  GANSU_PROVINCE             = 5,
  GUANGDONG_PROVINCE         = 6,
  GUANGXI_PROVINCE           = 7,
  GUIZHOU_PROVINCE           = 8,
  HAINAN_PROVINCE            = 9,
  HEBEI_PROVINCE             = 10,
  HENAN_PROVINCE             = 11,
  HEILONGJIANG_PROVINCE      = 12,
  HUBEI_PROVINCE             = 13,
  HUNAN_PROVINCE             = 14,
  JILIN_PROVINCE             = 15,
  JIANGSU_PROVINCE           = 16,
  JIANGXI_PROVINCE           = 17,
  LIAONING_PROVINCE          = 18,
  NEIMENGGU_PROVINCE         = 19,
  NINGXIA_PROVINCE           = 20,
  QINGHAI_PROVINCE           = 21,
  SHANDONG_PROVINCE          = 22,
  SHANXI_JIN_PROVINCE        = 23,
  SHANXI_SHAN_PROVINCE       = 24,
  SHANGHAI_PROVINCE          = 25,
  SICHUAN_PROVINCE           = 26,
  TAIWAN_PROVINCE            = 27,
  TIANJIN_PROVINCE           = 28,
  XIZANG_PROVINCE            = 29,
  XIANGGANG_PROVINCE         = 30,
  XINJIANG_PROVINCE          = 31,
  YUNNAN_PROVINCE            = 32,
  ZHEJIANG_PROVINCE          = 33
}PROVINCE_CITY_IDX
ANHUI_PROVINCE
安徽
AOMEN_PROVINCE
澳门
BEIJING_PROVINCE
北京
CHONGQING_PROVINCE
重庆
FUJIAN_PROVINCE
福建
GANSU_PROVINCE
甘肃
GUANGDONG_PROVINCE
广东
GUANGXI_PROVINCE
广西
GUIZHOU_PROVINCE
贵州
HAINAN_PROVINCE
海南
HEBEI_PROVINCE
河北
HENAN_PROVINCE
河南
HEILONGJIANG_PROVINCE
黑龙江
HUBEI_PROVINCE
湖北
HUNAN_PROVINCE
湖南
JILIN_PROVINCE
吉林
JIANGSU_PROVINCE
江苏
JIANGXI_PROVINCE
江西
LIAONING_PROVINCE
辽宁
NEIMENGGU_PROVINCE
内蒙古
NINGXIA_PROVINCE
宁夏
QINGHAI_PROVINCE
青海
SHANDONG_PROVINCE
山东
SHANXI_JIN_PROVINCE
山西
SHANXI_SHAN_PROVINCE
陕西
SHANGHAI_PROVINCE
上海
SICHUAN_PROVINCE
四川
TAIWAN_PROVINCE
台湾
TIANJIN_PROVINCE
天津
XIZANG_PROVINCE
西藏
XIANGGANG_PROVINCE
香港
XINJIANG_PROVINCE
新疆
YUNNAN_PROVINCE
云南
ZHEJIANG_PROVINCE
浙江

See Also

NET_DVR_VTPARAM


NET_DVR_GET_STREAM_UNION

取流方式联合体。

struct{
  NET_DVR_IPCHANINFO          struChanInfo;
  NET_DVR_IPSERVER_STREAM     struIPServerStream;
  NET_DVR_PU_STREAM_CFG       struPUStream;
  NET_DVR_DDNS_STREAM_CFG     struDDNSStream;
  NET_DVR_PU_STREAM_URL       struStreamUrl;
}NET_DVR_GET_STREAM_UNION,*LPNET_DVR_GET_STREAM_UNION;

Members

struChanInfo
IP通道信息
struIPServerStream
通过IPServer获得IP地址后取流
struPUStream
从流媒体取流
struDDNSStream
通过IPServer找到设备，再通过流媒体取设备的码流
struStreamUrl
通过流媒体到url取流

See Also

NET_DVR_STREAM_MODE


NET_DVR_GPSALARMINFO

GPS报警信息结构体。

struct{
  BYTE              byDeviceID[NAME_LEN];
  NET_DVR_TIME_EX   struGpsTime;
  DWORD             dwLongitude;
  DWORD             dwLatitude;
  int               iTimeZone;
  DWORD             dwDirection;
  WORD              wSatellites;
  WORD              wPrecision;
  DWORD             dwHeight;
  DWORD             dwGPSSeq;
  WORD              wSpeed;
  char              sDirection[2];
  BYTE              byLocateMode;
  BYTE              byRes[3];
}NET_DVR_GPSALARMINFO,*LPNET_DVR_GPSALARMINFO;

Members

byDeviceID
设备的ID串
struGpsTime
GPS上传的时间
dwLongitude
经度
dwLatitude
纬度
iTimeZone
时区，用分钟数表示，+60代表东1区，+480代表东8区，-60代表西1区，-480代表西8区，该字段和GPSTime构成一个完整的时间描述
dwDirection
车辆方向=实际方向*100。实际方向：以度为单位，正北方向为基准，顺时针方向计算
wSatellites
卫星数量
wPrecision
精度
dwHeight
高度：厘米，预留
dwGPSSeq
GPS序号，GPS补传时要用到
wSpeed
速度，单位：km/h
sDirection
direction[0]：‘E’或‘W’(东经或西经)，direction[1]：‘N’或‘S’(北纬或南纬)
byLocateMode
定位模式(初值0)，1- 自主定位，2- 差分，3- 估算，4- 数据无效
byRes
保留

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_DVR_GSENSORPARA

G SENSOR 配置结构体。

struct{
  DWORD                        dwSize;
  NET_DVR_ACCELERATIONCFG      struAccelerationCfg;
  BYTE                         byModuleSelect;
  BYTE                         byRes1[3];
  NET_DVR_HANDLEEXCEPTION_V30  struHandleException;
  BYTE                         byRes2[24];
}NET_DVR_GSENSORPARA, *LPNET_DVR_GSENSORPARA;

Members

dwSize
结构体大小
struAccelerationCfg
加速报警参数
byModuleSelect
模块选择，0- 内置，1- 外置
byRes1
保留
struHandleException
处理方式
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_HANDLEEXCEPTION

报警和异常处理结构体。

struct{
  DWORD    dwHandleType;
  BYTE     byRelAlarmOut[MAX_ALARMOUT];
}NET_DVR_HANDLEEXCEPTION, *LPNET_DVR_HANDLEEXCEPTION;

Members

dwHandleType
处理方式：
0x00: 无响应
0x01: 监视器上警告
0x02: 声音警告
0x04: 上传中心
0x08: 触发报警输出
0x10: Jpeg抓图并上传EMail
byRelAlarmOut
报警触发的输出通道，0-不触发，1-触发输出


NET_DVR_HANDLEEXCEPTION_V30

报警和异常处理结构体。

struct{
  DWORD    dwHandleType;
  BYTE     byRelAlarmOut[MAX_ALARMOUT_V30];
}NET_DVR_HANDLEEXCEPTION_V30, *LPNET_DVR_HANDLEEXCEPTION_V30;

Members

dwHandleType
处理方式：
0x00: 无响应
0x01: 监视器上警告
0x02: 声音警告
0x04: 上传中心
0x08: 触发报警输出
0x10: Jpeg抓图并上传EMail
0x20: 无线声光报警器联动
0x200：抓图并上传ftp
byRelAlarmOut
报警触发的输出通道，0-不触发，1-触发输出，按位表示输出通道，例如byRelAlarmOut[0]==1表示触发输出通道1，byRelAlarmOut[1]==1表示触发输出通道2，依此类推


NET_DVR_HDCFG

设备硬盘配置结构体。

struct{
  DWORD                 dwSize;
  DWORD                 dwHDCount;
  NET_DVR_SINGLE_HD     struHDInfo[MAX_DISKNUM_V30];
}NET_DVR_HDCFG, *LPNET_DVR_HDCFG;

Members

dwSize
结构体大小
dwHDCount
硬盘数，该参数只能获取，不支持设置
struHDInfo
硬盘信息参数

Remarks

本结构体中的dwHDCount参数是指设备本地的硬盘数，因此只能获取该信息，不能设置。对硬盘的信息进行设置后需要重启设备才生效。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_HDGROUP_CFG

设备盘组配置结构体。

struct{
  DWORD                      dwSize;
  DWORD                      dwHDGroupCount;
  NET_DVR_SINGLE_HDGROUP     struHDGroupAttr[MAX_HD_GROUP];
}NET_DVR_HDGROUP_CFG, *LPNET_DVR_HDGROUP_CFG;

fMembers

dwSize
结构体大小
fkl,.;dKKdwHDGroupCount
盘组总数，该参数只能获取，不支持设置
struHDGroupAttr
盘组信息参数

Remarks

本结构体中的dwHDGroupCount参数是指设备本地的盘组数，因此只能获取该信息，不能设置。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_HIDEALARM

遮挡报警参数结构体。

struct{
  DWORD                      dwEnableHideAlarm;
  WORD                       wHideAlarmAreaTopLeftX;
  WORD                       wHideAlarmAreaTopLeftY;
  WORD                       wHideAlarmAreaWidth;
  WORD                       wHideAlarmAreaHeight;
  NET_DVR_HANDLEEXCEPTION    strHideAlarmHandleType;
  NET_DVR_SCHEDTIME          struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT];
}NET_DVR_HIDEALARM, *LPNET_DVR_HIDEALARM;

Members

dwEnableHideAlarm
是否启动遮挡报警：0-否，1-低灵敏度，2-中灵敏度，3-高灵敏度
wHideAlarmAreaTopLeftX
遮挡区域的x坐标
wHideAlarmAreaTopLeftY
遮挡区域的y坐标
wHideAlarmAreaWidth
遮挡区域的宽
wHideAlarmAreaHeight
遮挡区域的高
strHideAlarmHandleType
处理方法
struAlarmTime
布防时间

Remarks

SDK设定整个图像的区域大小为704*576，结构中遮挡区域的坐标以及宽和高需要转换成704*576大小区域下的坐标和宽高值。

See Also

NET_DVR_PICCFG NET_DVR_PICCFG_EX


NET_DVR_HIDEALARM_V30

遮挡报警参数结构体。

struct{
  DWORD                          dwEnableHideAlarm;
  WORD                           wHideAlarmAreaTopLeftX;
  WORD                           wHideAlarmAreaTopLeftY;
  WORD                           wHideAlarmAreaWidth;
  WORD                           wHideAlarmAreaHeight;
  NET_DVR_HANDLEEXCEPTION_V30    strHideAlarmHandleType;
  NET_DVR_SCHEDTIME              struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];
}NET_DVR_HIDEALARM_V30, *LPNET_DVR_HIDEALARM_V30;

Members

dwEnableHideAlarm
是否启动遮挡报警：0-否，1-低灵敏度，2-中灵敏度，3-高灵敏度
wHideAlarmAreaTopLeftX
遮挡区域的x坐标
wHideAlarmAreaTopLeftY
遮挡区域的y坐标
wHideAlarmAreaWidth
遮挡区域的宽
wHideAlarmAreaHeight
遮挡区域的高
strHideAlarmHandleType
处理方法
struAlarmTime
布防时间

Remarks

SDK设定整个图像的区域大小为704*576，结构中遮挡区域的坐标以及宽和高需要转换成704*576大小区域下的坐标和宽高值。

See Also

NET_DVR_PICCFG_V30


NET_DVR_HISTORICDATACFG

历史数据信息结构体。

struct{
  DWORD                 dwSize;
  DWORD                 dwTotalNum;
  BYTE                  byRes[16];
}NET_DVR_HISTORICDATACFG, *LPNET_DVR_HISTORICDATACFG;

Members

dwSize
结构体大小
dwTotalNum
历史数据个数
byRes
保留

See Also

NET_DVR_GetHistoricDataInfo


NET_DVR_HOLIDATE_MODEA

假日日期模式A。

struct{
  BYTE    byStartMonth;
  BYTE    byStartDay;
  BYTE    byEndMonth;
  BYTE    byEndDay;
  BYTE    byRes[4];
}NET_DVR_HOLIDATE_MODEA, *LPNET_DVR_HOLIDATE_MODEA;

Members

byStartMonth
开始月，从1开始
byStartDay
开始日，从1开始
byEndMonth
结束月份
byEndDay
结束日
byRes
保留

See Also

NET_DVR_HOLIDATE_UNION


NET_DVR_HOLIDATE_MODEB

假日日期模式B。

struct{
  BYTE    byStartMonth;
  BYTE    byStartWeekNum;
  BYTE    byStartWeekday;
  BYTE    byEndMonth;
  BYTE    byEndWeekNum;
  BYTE    byEndWeekday;
  BYTE    byRes[2];
}NET_DVR_HOLIDATE_MODEB, *LPNET_DVR_HOLIDATE_MODEB;

Members

byStartMonth
开始月份，从1开始
byStartWeekNum
第几个星期,从1开始
byStartWeekday
星期几
byEndMonth
结束月份，从1开始
byEndWeekNum
第几个星期,从1开始
byEndWeekday
星期几
byRes
保留

See Also

NET_DVR_HOLIDATE_UNION


NET_DVR_HOLIDATE_MODEC

假日日期模式C。

struct{
  WORD        wStartYear;
  BYTE        byStartMon;
  BYTE        byStartDay;
  WORD        wEndYear;
  BYTE        byEndMon;
  BYTE        byEndDay;
}NET_DVR_HOLIDATE_MODEC, *LPNET_DVR_HOLIDATE_MODEC;

Members

wStartYear
开始年份
byStartMon
开始月份，从1开始
byStartDay
开始日
wEndYear
结束年份
byEndMon
结束月份
byEndDay
结束日

See Also

NET_DVR_HOLIDATE_UNION


NET_DVR_HOLIDATE_UNION

假日日期结构联合体。

struct{
  DWORD                    dwSize[3];
  NET_DVR_HOLIDATE_MODEA   struModeA;
  NET_DVR_HOLIDATE_MODEB   struModeB;
  NET_DVR_HOLIDATE_MODEC   struModeC;
}NET_DVR_HOLIDATE_UNION, *LPNET_DVR_HOLIDATE_UNION;

Members

dwSize
联合体大小
struModeA
日期模式A
struModeB
日期模式B
struModeC
日期模式C

See Also

NET_DVR_HOLIDAY_PARAM


NET_DVR_HOLIDAY_HANDLE

假日报警处理方式结构体。

struct{
  DWORD                       dwSize;
  NET_DVR_SCHEDTIME           struAlarmTime[MAX_TIMESEGMENT_V30];
  BYTE                        byRes2[240];
}NET_DVR_HOLIDAY_HANDLE,*LPNET_DVR_HOLIDAY_HANDLE;

Members

dwSize
结构体大小
struAlarmTime
布防时间段
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_HOLIDAY_PARAM

假日参数结构体。

struct{
  BYTE                     byEnable;
  BYTE                     byDateMode;
  BYTE                     byRes1[2];
  NET_DVR_HOLIDATE_UNION   uHolidate;
  BYTE                     byName[NAME_LEN];
  BYTE                     byRes2[20];
}NET_DVR_HOLIDAY_PARAM, *LPNET_DVR_HOLIDAY_PARAM;

Members

byEnable
是否启用
byDateMode
日期模式:0-模式A,1-模式B,2-模式C
byRes1
保留
uHolidate
假日日期
byName
假日名称
byRes2
保留

See Also

NET_DVR_HOLIDAY_PARAM_CFG


NET_DVR_HOLIDAY_PARAM_CFG

假日参数配置结构体。

struct{
  DWORD                    dwSize;
  NET_DVR_HOLIDAY_PARAM    struHolidayParam[MAX_HOLIDAY_NUM];
  DWORD                    byRes[40];
}NET_DVR_HOLIDAY_PARAM_CFG, *LPNET_DVR_HOLIDAY_PARAM_CFG;

Members

dwSize
结构体大小
struHolidayParam
假日参数
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_HOLIDAY_RECORD

假日录像参数结构体。

struct{
  DWORD                    dwSize;
  NET_DVR_RECORDDAY        struRecDay;
  NET_DVR_RECORDSCHED      struRecordSched[MAX_TIMESEGMENT_V30];
  BYTE                     byRes[20];
}NET_DVR_HOLIDAY_RECORD, *LPNET_DVR_HOLIDAY_RECORD;

Members

dwSize
结构体大小
struRecDay
录像参数
struRecordSched
录像时间段
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_IDENTIFICAT

ATM自定义协议报文起始标识结构体。

struct{
  BYTE                      byStartMode;
  BYTE                      byEndMode;
  BYTE                      byRes[2];
  NET_DVR_FRAMETYPECODE     struStartCode;
  NET_DVR_FRAMETYPECODE     struEndCode;
  BYTE                      byRes1[12];
}NET_DVR_IDENTIFICAT, *LPNET_DVR_IDENTIFICAT;

Members

byStartMode
起始字符模式，0-ASCII；1-HEX
byEndMode
结束字符模式，0-ASCII；1-HEX
byRes
保留
struStartCode
数据报起始字符
struEndCode
数据报结束字符
byRes1
保留

See Also

NET_DVR_ATM_USER_DEFINE_PROTOCOL


NET_DVR_IMAGEOVERLAYCFG

图像叠加参数结构体。

struct{
  DWORD    dwSize;
  BYTE     byOverlayInfo;
  BYTE     byOverlayMonitorInfo;
  BYTE     byOverlayTime;
  BYTE     byOverlaySpeed;
  BYTE     byOverlaySpeeding;
  BYTE     byOverlayLimitFlag;
  BYTE     byOverlayPlate;
  BYTE     byOverlayColor;
  BYTE     byOverlayLength;
  BYTE     byOverlayType;
  BYTE     byOverlayColorDepth;
  BYTE     byOverlayDriveChan;
  BYTE     byOverlayMilliSec;
  BYTE     byOverlayIllegalInfo;
  BYTE     byOverlayRedOnTime;
  BYTE     byRes1[5];
  BYTE     byMonitorInfo1[32];
  BYTE     byMonitorInfo2[44];
  BYTE     byRes2[52];
}NET_DVR_IMAGEOVERLAYCFG, *LPNET_DVR_IMAGEOVERLAYCFG;

Members

dwSize
结构体大小
byOverlayInfo
叠加使能开关，0-不叠加，1-叠加
byOverlayMonitorInfo
是否叠加监测点信息，0-不叠加，1-叠加
byOverlayTime
是否叠加时间，0-不叠加，1-叠加
byOverlaySpeed
是否叠加速度，0-不叠加，1-叠加
byOverlaySpeeding
是否叠加超速比例，0-不叠加，1-叠加
byOverlayLimitFlag
是否叠加限速标志，0-不叠加，1-叠加
byOverlayPlate
是否叠加车牌，0-不叠加，1-叠加
byOverlayColor
是否叠加车身颜色，0-不叠加，1-叠加
byOverlayLength
是否叠加车长，0-不叠加，1-叠加
byOverlayType
是否叠加车型，0-不叠加，1-叠加
byOverlayColorDepth
是否叠加车身颜色深浅，保留
byOverlayDriveChan
是否叠加车道，0-不叠加，1-叠加
byOverlayMilliSec
是否叠加毫秒信息，0-不叠加，1-叠加
byOverlayIllegalInfo
是否叠加违章信息，0-不叠加，1-叠加
byOverlayRedOnTime
叠加红灯已亮时间 0-不叠加，1-叠加
byres1
保留，置为0
byMonitorInfo1
监测点信息1
byMonitorInfo2
监测点信息2
byres2
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_IN_CAL_SAMPLE

样本参数结构体。

struct{
  NET_VCA_RECT           struVcaRect;
  NET_DVR_LINE_SEGMENT   struLineSegment;
}NET_DVR_IN_CAL_SAMPLE, *LPNET_DVR_IN_CAL_SAMPLE;

Members

struVcaRect
目标框
struLineSegment
高度标定线

Remarks

该结构体表示IAS智能库标定样本，其中包括一个目标框和一条对应的高度标定线：目标框为站立的人体外接矩形框，高度线样本标识从人头顶点到脚点的标定线。

See Also

NET_DVR_BEHAVIOR_IN_CALIBRATION


NET_DVR_INPUTSTREAM_LIST

信号源列表

struct{
  DWORD                      dwSize;
  NET_DVR_INPUTSTREAMCFG            struInputStreamInfo[MAX_CAM_COUNT];
  BYTE	                   byRes[4];
}NET_DVR_INPUTSTREAM_LIST,*LPNET_DVR_INPUTSTREAM_LIST;

Members

dwSize
结构体大小
struInputStreamInfo
输入流信息:0- (INPUT_UNKNOWN)未知输入信息，1- (INPUT_VIDEO)视频信号，2- (INPUT_RGB)计算机信号，3- (INPUT_SCREENCAPTURE)网络抓屏
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig


NET_DVR_INPUTSTREAMCFG

输入流参数结构体。

struct{
  DWORD                             dwSize;
  BYTE                              byValid;
  BYTE                              byCamMode;
  WORD                              wInputNo;
  BYTE                              sCamName[NAME_LEN];
  NET_DVR_VIDEOEFFECT               struVideoEffect;
  NET_DVR_PU_STREAM_CFG             struPuStream;
  WORD                              wBoardNum;
  WORD                              wInputIdxOnBoard;
  WORD                              wResolutionX;
  WORD                              wResolutionY;
  BYTE                              byVideoFormat;
  BYTE                              byRes[35];
}NET_DVR_INPUTSTREAMCFG,*LPNET_DVR_INPUTSTREAMCFG;

Members

dwSize
结构体大小
byValid
是否有效
byCamMode
信号输入源类型：
enum _CAM_MODE_{
  CAM_BNC = 1,
  CAM_VGA = 2,
  CAM_DVI = 3,
  CAM_HDMI= 4,
  CAM_IP  = 5
}CAM_MODE
wInputNo
信号源序号：0~224
sCamName
信号输入源名称
struVideoEffect
视频参数
struPuStream
输入流参数，ip输入时使用
wBoardNum
信号源所在的板卡号，只能获取
wInputIdxOnBoard
信号源在板卡上的位置，只能获取
wResolutionX
分辨率X*Y
wResolutionY
分辨率X*Y
byVideoFormat
视频制式，0-无，1-NTSC，2-PAL
byRes
保留，置为0

See Also

NET_DVR_SetDVRConfig


NET_DVR_INQUEST_CDRW

单个刻录状态信息结构体。

struct{
  DWORD    dwEnable;
  DWORD    dwStatus;
  DWORD    dwVolumn;
  DWORD    dwFreeSpace;
  BYTE     byRes[8];
}NET_DVR_INQUEST_CDRW,*LPNET_DVR_INQUEST_CDRW;

Members

dwEnable
刻录机状态是否有效：0-无效，1-有效
dwStatus
刻录机状态
dwVolumn
光盘容量，单位M
dwFreeSpace
光盘剩余容量，单位M
byRes
保留

Remarks

该结构中的参数dwStatus与结构体NET_DVR_INQUEST_CDRW_STATUS中的dwType参数相关，详见如下：
当dwType=0时，0-光盘正常，1-无光盘或光盘异常
当dwType=1或2时，0-刻录正常，1-无光盘或光盘异常，2-光盘已封盘(81不支持)，3-光盘空间不足，4-异常导致审讯终止(81不支持)
当dwType=3时，0-刻录正常，1-无光盘或光盘异常，2-光盘已封盘(81不支持)，3-光盘空间不足
当dwType=4时，0-刻录正常，1-无光盘或光盘异常，2-光盘已封盘(81不支持)，3-光盘空间不足
当dwType=5时，0-刻录正常，1-无光盘或光盘异常，2-光盘已封盘(81不支持)
当dwType=6或7时，0-刻录正常，1-无光盘或光盘异常，2-光盘已封盘(81不支持)，3-光盘空间不足

See Also

NET_DVR_INQUEST_CDRW_STATUS


NET_DVR_INQUEST_CDRW_CFG

刻录参数结构体。

struct{
  DWORD   dwSize;
  DWORD   dwNum;
  DWORD   dwRwSelectPara[MAX_CHANNUM_V30];
  DWORD   dwModeSelect;
  BYTE    byRes[24];
  DWORD   dwStartCDRW;
  DWPRD   dwHdExcp;
  DWORD   dwInterval;
  char    sLable[64];
}NET_DVR_INQUEST_CDRW_CFG, *LPNET_DVR_INQUEST_CDRW_CFG;

Members

dwSize
结构体大小
dwNum
刻录机的个数
dwRwSelectPara
各通道与刻录机之间的关联（是否选中该刻录机）：0-不选中，1-选中。如：dwRwSelectPara[0]表示通道1与各刻录机的关联，按位表示刻录机是否选中，第一位表示1号刻录机是否选中
dwModeSelect
刻录模式：0-循环刻录模式，1-并行刻录模式(默认模式)
byRes
保留，置为0
dwStartCDRW
本地是否开始刻录：0-未开始刻录，1-已开始刻录
dwHdExcp
硬盘是否有异常：0-无异常，1-有异常
dwInterval
时间间隔：0-10分钟、1-20分钟、2-30分钟
sLable
光盘名称

See Also

NET_DVR_InquestGetCDRWScheme NET_DVR_InquestSetCDRWScheme


NET_DVR_INQUEST_CDRW_STATUS

刻录状态信息结构体。

struct{
  DWORD                   dwType;
  NET_DVR_INQUEST_CDRW    strCDRWNum[MAX_INQUEST_CDRW_NUM];
  BYTE                    byRes[24];
}NET_DVR_INQUEST_CDRW_STATUS,*LPNET_DVR_INQUEST_CDRW_STATUS;

Members

dwType
运行状态：0-审讯开始，1-审讯过程中刻录，2-审讯停止，3-刻录审讯文件，4-备份(事后备份和本地备份)， 5-空闲，6-初始化硬盘，7-恢复审讯
strCDRWNum
刻录机编号，数组0表示刻录机1
byRes
保留

See Also

NET_DVR_InquestGetCDWState_V30 NET_DVR_InquestGetCDWState


NET_DVR_INQUEST_DEVICE_VERSION

审讯设备版本信息结构体。

struct{
  BYTE                  byMainVersion;
  BYTE                  bySubVersion;
  BYTE                  byUpgradeVersion;
  BYTE                  byCustomizeVersion;
  BYTE                  byRes[60];
}NET_DVR_INQUEST_DEVICE_VERSION, *LPNET_DVR_INQUEST_DEVICE_VERSION;

Members

byMainVersion
基线主版本
bySubVersion
基线次版本
byUpgradeVersion
升级版本。如果未升级的，版本为0
byCustomizeVersion
定制版本。如果是非定制的，版本为0
byRes
保留

Remarks

主版本为0，设备为未知版本。
主版本为1，设备为8000系列审讯DVR。如果次版本为1，设备为8000HD-S.
主版本为2，设备为8100系列审讯DVR。如果次版本为1，设备为审讯81SNL；如果次版本为2，设备为审讯81SH；如果次版本为3，设备为审讯81SFH。

See Also

NET_DVR_InquestGetDeviceVersion


NET_DVR_INQUEST_FILEINFO

审讯文件信息结构体。

struct{
  char    sFileName[36];
  DWORD   dwFileLen;
}NET_DVR_INQUEST_FILEINFO,*LPNET_DVR_INQUEST_FILEINFO;

Members

sFileName
文件名
dwFileLen
文件大小

See Also

NET_DVR_INQUEST_FILES


NET_DVR_INQUEST_FILES

审讯文件结构体。

struct{
  DWORD                       dwFileNum;
  NET_DVR_INQUEST_FILEINFO    struFileInfo[MAX_RECORD_FILE_NUM];
  DWORD                       dwCDIndex;
  BYTE                        bFinalizeDisc;
}NET_DVR_INQUEST_FILES,*LPNET_DVR_INQUEST_FILES;

Members

dwFileNum
删除的文件数，一次最多20个
struFileInfo
单个文件的信息
dwCDIndex
刻录机的索引：1-1号刻录机，2-2号刻录机，3-3号刻录机，4-4号刻录机，5-所有刻录机
bFinalizeDisc
0-刻录完之后不封盘；1-刻录完之后封盘

Remarks

该结构中的后面两个参数仅当刻录时有效。

See Also

NET_DVR_InquestCDWByFile NET_DVR_InquestDeleteFile_V30


NET_DVR_INQUEST_MESSAGE

重点标记信息结构体。

struct{
  char                  sMessage[INQUEST_MESSAGE_LEN];
  BYTE                  byRes[46];
}NET_DVR_INQUEST_MESSAGE, *LPNET_DVR_INQUEST_MESSAGE;

Members

sMessage
重点标记信息
byRes
保留

See Also

NET_DVR_InquestSendMessage


NET_DVR_INQUEST_PIP_PARAM

画中画位置信息结构体。

struct{
  BYTE   byPipChan;
  BYTE   byRes[3];
  WORD   wTopLeftX;
  WORD   wTopLeftY;
}NET_DVR_INQUEST_PIP_PARAM,*LPNET_DVR_INQUEST_PIP_PARAM;

Members

byPipChan
画中画显示的通道，0xFF表示关闭
byRes
保留
wTopLeftX
画中画的x坐标
wTopLeftY
画中画的y坐标

See Also

NET_DVR_INQUEST_PIP_STATUS


NET_DVR_INQUEST_PIP_STATUS

画中画状态信息结构体。

struct{
  BYTE                        byBaseChan;
  BYTE                        byBackChan;
  BYTE                        byPIPMode;
  BYTE                        byRes;
  NET_DVR_INQUEST_PIP_PARAM   strPipPara[MAX_INQUEST_PIP_NUM];
}NET_DVR_INQUEST_PIP_STATUS,*LPNET_DVR_INQUEST_PIP_STATUS;

Members

byBaseChan
显示画中画所在的通道
byBackChan
显示画中画背景通道
byPIPMode
是否开启
0-当前窗口无小画面
1-当前窗口有1个小画面
2-当前窗口有2个小画面
3-当前窗口有3个小画面
255-当前窗口关闭预览画面
byRes
保留
strPipPara
画面位置的参数

See Also

NET_DVR_InquestGetPIPStatus_V30


NET_DVR_INQUEST_RESUME_EVENT

需恢复的事件信息结构体。

struct{
  DWORD                          dwResumeNum;
  NET_DVR_INQUEST_RESUME_SEGMENT   struResumeSegment[MAX_RESUME_SEGMENT];
  BYTE                           byRes[200];
}NET_DVR_INQUEST_RESUME_EVENT, *LPNET_DVR_INQUEST_RESUME_EVENT;

Members

dwResumeNum
需恢复的事件个数
struResumeSegment
需恢复的事件片段信息
byRes
保留

See Also

NET_DVR_InquestResumeEvent


NET_DVR_INQUEST_RESUME_SEGMENT

事件片段信息结构体。

struct{
  NET_DVR_TIME          struStartTime;
  NET_DVR_TIME          struStopTime;
  BYTE                  byRoomIndex;
  BYTE                  byDriveIndex;
  WORD                  wSegmetSize;
  DWORD                 dwSegmentNo;
  BYTE                  byRes[24];
}NET_DVR_INQUEST_RESUME_SEGMENT, *LPNET_DVR_INQUEST_RESUME_SEGMENT;

Members

struStartTime
事件起始时间
struStopTime
事件终止时间
byRoomIndex
审讯室编号，从1开始
byDriveIndex
刻录机编号，1开始
wSegmetSize
本片断的大小，单位M
dwSegmentNo
本片断在本次审讯中的序号，从1开始
byRes
保留

See Also

NET_DVR_INQUEST_RESUME_EVENT


NET_DVR_INQUEST_ROOM

审讯室信息结构体。

struct{
  BYTE                  byRoomIndex;
  BYTE                  byRes[23];
}NET_DVR_INQUEST_ROOM, *LPNET_DVR_INQUEST_ROOM;

Members

byRoomIndex
审讯室编号
byRes
保留


NET_DVR_INQUEST_SECRET_INFO

设备码流加密密钥信息结构体。

struct{
  BYTE   sSecretKey[16];
  BYTE   byRes[64];
}NET_DVR_INQUEST_SECRET_INFO,*LPNET_DVR_INQUEST_SECRET_INFO;

Members

sSecretKey
码流加密密钥
byRes
保留

See Also

NET_DVR_InquestSetSecretKey


NET_DVR_INQUEST_SENSOR_DEVICE

传感器设备信息结构体。

struct{
  WORD                  wDeviceType;
  WORD                  wDeviceAddr;
  BYTE                  byRes[28];
}NET_DVR_INQUEST_SENSOR_DEVICE, *LPNET_DVR_INQUEST_SENSOR_DEVICE;

Members

wDeviceType
数据采集设备型号：1-米乐，2-镭彩，3-优力
wDeviceAddr
数据采集设备地址
byRes
保留

See Also

NET_DVR_INQUEST_SENSOR_INFO


NET_DVR_INQUEST_SENSOR_INFO

传感器配置结构体。

struct{
  NET_DVR_INQUEST_SENSOR_DEVICE    struSensorDevice[INQUEST_MAX_ROOM_NUM];
  DWORD                            dwSupportPro;
  BYTE                             byRes[120];
}NET_DVR_INQUEST_SENSOR_INFO, *LPNET_DVR_INQUEST_SENSOR_INFO;

Members

struSensorDevice
传感器设备信息
dwSupportPro
支持协议类型，按位表示。
0x1:米乐
0x2:镭彩
0x4:优力
byRes
保留

See Also

NET_DVR_INQUEST_SYSTEM_INFO


NET_DVR_INQUEST_SYSTEM_INFO

传感器设备信息结构体。

struct{
  DWORD                         dwRecordMode;
  DWORD                         dwWorkMode;
  DWORD                         dwResolutionMode;
  NET_DVR_INQUEST_SENSOR_INFO   struSensorInfo;
  BYTE                          byRes[120];
}NET_DVR_INQUEST_SYSTEM_INFO, *LPNET_DVR_INQUEST_SYSTEM_INFO;

Members

dwRecordMode
刻录模式：1-单室双刻模式，2-单室轮刻模式，3-双室双刻模式
dwWorkMode
工作模式：0-标准模式，1-通用模式
dwResolutionMode
设备分辨率：0-标清，1-D1，2-720P，3-1080P
struSensorInfo
温湿度传感器配置信息
byRes
保留

See Also

NET_DVR_InquestGetSystemInfo NET_DVR_InquestSetSystemInfo


NET_DVR_IO_INCFG

IO输入配置参数结构体。

struct{
  DWORD      dwSize;
  BYTE       byIoInStatus;
  BYTE       byRes[3];
}NET_DVR_IO_INCFG, *LPNET_DVR_IO_INCFG;

Members

dwSize
结构体大小
byIoInStatus
输入的IO口状态，0-下降沿，1-上升沿，2-上升沿和下降沿，3-高电平，4-低电平
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_IO_OUTCFG

IO输出配置参数结构体。

struct{
  DWORD   dwSize;
  BYTE    byDefaultStatus;
  BYTE    byIoOutStatus;
  WORD    wAheadTime;
  DWORD   dwTimePluse;
  DWORD   dwTimeDelay;
  BYTE    byFreqMulti;
  BYTE    byDutyRate;
  BYTE    byRes[2];
}NET_DVR_IO_OUTCFG, *LPNET_DVR_IO_OUTCFG;

Members

dwSize
结构体大小
byDefaultStatus
IO默认状态：0-低电平，1-高电平
byIoOutStatus
IO起效时状态：0-低电平，1-高电平，2-脉冲
wAheadTime
输出IO提前时间，单位us，取值范围[0,300]
dwTimePluse
脉冲间隔时间，单位us
dwTimeDelay
IO有效持续时间，单位us
byFreqMulti
倍频，数值范围[1,15]
byDutyRate
占空比，[0,40%]
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_IPADDR

IP地址结构体。

struct{
  char    sIpV4[16];
  BYTE    sIpV6[128];
}NET_DVR_IPADDR, *LPNET_DVR_IPADDR;

Members

sIpV4
设备IPv4地址
sIpV6
设备IPv6地址


NET_DVR_IPALARMINCFG

IP报警输入配置结构体。

struct{
  DWORD                      dwSize;
  NET_DVR_IPALARMININFO      struIPAlarmInInfo[MAX_IP_ALARMIN];
}NET_DVR_IPALARMINCFG, *LPNET_DVR_IPALARMINCFG;

Members

dwSize
结构体大小
struIPAlarmInInfo
IP报警输入信息

Remarks

1.IP报警输入资源只能获取，9000设备从IP设备资源获取对应的报警参数后进行紧凑排列，然后传给网络SDK。
2.IP报警输入资源的下标索引值（0到MAX_IP_ALARMIN -1）加上MAX_ANALOG_ALARMIN对应的是报警输入相关参数（报警输入配置结构等）的下标索引值（MAX_ANALOG_ALARMIN到MAX_ALARMIN_V30-1）。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_IPALARMINFO

IPC接入配置改变的报警信息结构体。

struct{
  NET_DVR_IPDEVINFO         struIPDevInfo[MAX_IP_DEVICE];
  BYTE                      byAnalogChanEnable[MAX_ANALOG_CHANNUM];
  NET_DVR_IPCHANINFO        struIPChanInfo[MAX_IP_CHANNEL];
  NET_DVR_IPALARMININFO     struIPAlarmInInfo[MAX_IP_ALARMIN];
  NET_DVR_IPALARMOUTINFO    struIPAlarmOutInfo[MAX_IP_ALARMOUT];
}NET_DVR_IPALARMINFO,*LPNET_DVR_IPALARMINFO;

Members

struIPDevInfo
IP设备信息结构体
byAnalogChanEnable
模拟通道是否启用：0-未启用；1-启用。如byAnalogChanEnable[0]值为1表示模拟通道1启用
struIPChanInfo
IP通道参数
struIPAlarmInInfo
IP报警输入
struIPAlarmOutInfo
IP报警输出

See Also

NET_DVR_SetDVRMessageCallBack_V30 NET_DVR_StartListen_V30


NET_DVR_IPALARMINFO_V31

IPC接入配置改变的报警信息结构体（扩展）。

struct{
  NET_DVR_IPDEVINFO_V31     struIPDevInfo[MAX_IP_DEVICE];
  BYTE                      byAnalogChanEnable[MAX_ANALOG_CHANNUM];
  NET_DVR_IPCHANINFO        struIPChanInfo[MAX_IP_CHANNEL];
  NET_DVR_IPALARMININFO     struIPAlarmInInfo[MAX_IP_ALARMIN];
  NET_DVR_IPALARMOUTINFO    struIPAlarmOutInfo[MAX_IP_ALARMOUT];
}NET_DVR_IPALARMINFO_V31,*LPNET_DVR_IPALARMINFO_V31;

Members

struIPDevInfo
IP设备信息结构体
byAnalogChanEnable
模拟通道是否启用：0-未启用；1-启用。如byAnalogChanEnable[0]值为1表示模拟通道1启用
struIPChanInfo
IP通道参数
struIPAlarmInInfo
IP报警输入
struIPAlarmOutInfo
IP报警输出

See Also

NET_DVR_SetDVRMessageCallBack_V30 NET_DVR_StartListen_V30


NET_DVR_IPALARMININFO

IP报警输入信息结构体。

struct{
  BYTE     byIPID;
  BYTE     byAlarmIn;
  BYTE     byRes[18];
}NET_DVR_IPALARMININFO, *LPNET_DVR_IPALARMININFO;

Members

byIPID
IP设备ID，取值范围[1,MAX_IP_DEVICE]，其中#define MAX_IP_DEVICE 32
byAlarmIn
报警输入号
byRes
保留，置为0

See Also

NET_DVR_IPALARMINCFG NET_DVR_IPALARMINFO NET_DVR_IPALARMINFO_V31


NET_DVR_IPALARMOUTCFG

IP报警输出配置结构体。

struct{
  DWORD                      dwSize;
  NET_DVR_IPALARMOUTINFO     struIPAlarmOutInfo[MAX_IP_ALARMOUT];
}NET_DVR_IPALARMOUTCFG, *LPNET_DVR_IPALARMOUTCFG;

Members

dwSize
结构体大小
struIPAlarmOutInfo
IP报警输出信息

Remarks

1.IP报警输出资源只能获取，9000设备从IP设备资源获取对应的报警参数后进行紧凑排列，然后传给设备。
2.IP报警输出资源的下标索引值（0到MAX_IP_ALARMOUT -1）加上MAX_ANALOG_ALARMOUT对应的是报警输出相关参数（报警输出配置结构、联动触发报警输出等）的下标索引值（MAX_ANALOG_ALARMOUT到MAX_ALARMOUT_V30-1）。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_IPALARMOUTINFO

IP报警输出信息结构体。

struct{
  BYTE     byIPID;
  BYTE     byAlarmOut;
  BYTE     byRes[18];
}NET_DVR_IPALARMOUTINFO, *LPNET_DVR_IPALARMOUTINFO;

Members

byIPID
IP设备ID，取值范围[1,MAX_IP_DEVICE]，其中#define MAX_IP_DEVICE 32
byAlarmOut
报警输出号
byRes
保留，置为0

See Also

NET_DVR_IPALARMINFO NET_DVR_IPALARMINFO_V31
NET_DVR_IPALARMOUTCFG


NET_DVR_IPC_NETCFG

IPC的网络参数配置结构体。

struct{
  DWORD                    dwSize;
  NET_DVR_IPADDR           struIP;
  WORD                     wPort;
  char                     res[126];
}NET_DVR_IPC_NETCFG,*LPNET_DVR_IPC_NETCFG;

Members

dwSize
结构体大小
struIP
IPC的IP地址
wPort
IPC的端口
res
保留，置为0

See Also

NET_DVR_SetDVRConfig


NET_DVR_IPC_PASSWD

IPC用户名密码配置结构体。

struct{
  DWORD                    dwSize;
  char                     sOldPasswd[PASSWD_LEN];
  char                     sNewPasswd[PASSWD_LEN];
  BYTE                     byRes[32];
}NET_DVR_IPC_PASSWD,*LPNET_DVR_IPC_PASSWD;

Members

dwSize
结构体大小
sOldPasswd
IPC的旧密码，传给设备让设备验证
sNewPasswd
IPC的新密码
byRes
保留，置为0

See Also

NET_DVR_SetDVRConfig


NET_DVR_IPC_PROTO_LIST

IPC协议列表的结构体。

struct{
  DWORD                dwSize;
  DWORD                dwProtoNum;
  NET_DVR_PROTO_TYPE   struProto[IPC_PROTOCOL_NUM];
  BYTE                 byRes[8];
}NET_DVR_IPC_PROTO_LIST,*LPNET_DVR_IPC_PROTO_LIST;

Members

dwSize
结构体大小
dwProtoNum
有效的IPC协议个数
struProto
有效的IPC协议的参数结构
byRes
保留，置为0

See Also

NET_DVR_GetIPCProtoList


NET_DVR_IPCHANINFO

IP通道信息结构体。

struct{
  BYTE     byEnable;
  BYTE     byIPID;
  BYTE     byChannel;
  BYTE     byIPIDHigh;
  BYTE     byRes[32];
}NET_DVR_IPCHANINFO, *LPNET_DVR_IPCHANINFO;

Members

byEnable
IP通道在线状态，是一个只读的属性；0表示9000设备的数字通道连接对应的IP设备失败，该通道不在线；1表示连接成功，该通道在线
byIPID
IP设备ID的低8位，byIPID = iDevID % 256
byChannel
IP设备的通道号
byIPIDHigh
IP设备ID的高8位，byIPIDHigh = iDevID /256
byRes
保留，置为0

Remarks

iDevID为设备ID号，iDevID = byIPIDHigh*256 + byIPID。通过iDevID值查找具体的设备信息struIPDevInfo（结构体NET_DVR_IPPARACFG_V40的数组参数），与设备信息数组下标（iDevInfoIndex）换算关系为：iDevID = iDevInfoIndex + iGroupNO*64 +1。

See Also

NET_DVR_GET_STREAM_UNION NET_DVR_IPALARMINFO NET_DVR_IPALARMINFO_V31

NET_DVR_IPPARACFG NET_DVR_IPPARACFG_V31 NET_DVR_IPPARACFG_V40


NET_DVR_IPDEVINFO

IP设备信息结构体。

struct{
  DWORD              dwEnable;
  BYTE               sUserName[NAME_LEN];
  BYTE               sPassword[PASSWD_LEN];
  NET_DVR_IPADDR     struIP;
  WORD               wDVRPort;
  BYTE               byRes[34];
}NET_DVR_IPDEVINFO, *LPNET_DVR_IPDEVINFO;

Members

dwEnable
该IP设备是否启用
sUserName
用户名
sPassword
密码
struIP
IP地址
wDVRPort
端口号
byRes
保留，置为0

Remarks

当某个IP设备参数对应的所有IP通道被删除，即IP通道资源的中所有IP通道参数的IPID减1没有与该IP设备参数的下标值相对应的时候，9000设备本地的该IP设备参数将被删除。

See Also

NET_DVR_IPALARMINFO NET_DVR_IPPARACFG


NET_DVR_IPDEVINFO_V31

IP设备信息结构体。

struct{
  BYTE               byEnable;
  BYTE               byProType;
  BYTE               byEnableQuickAdd;
  BYTE               byRes1;
  BYTE               sUserName[NAME_LEN];
  BYTE               sPassword[PASSWD_LEN];
  BYTE               byDomain[MAX_DOMAIN_NAME];
  NET_DVR_IPADDR     struIP;
  WORD               wDVRPort;
  BYTE               byRes2[34];
}NET_DVR_IPDEVINFO_V31, *LPNET_DVR_IPDEVINFO_V31;

Members

byEnable
该IP设备是否启用
byProType
协议类型(默认为私有协议)，0- 私有协议，1- 松下协议，2- 索尼，3- 大华
byEnableQuickAdd
0-不支持快速添加；1-使用快速添加
byRes1
保留，置为0
sUserName
用户名
sPassword
密码
byDomain
设备域名
struIP
IP地址
wDVRPort
端口号
byRes2
保留，置为0

Remarks

当某个IP设备参数对应的所有IP通道被删除，即IP通道资源的中所有IP通道参数的IPID减1没有与该IP设备参数的下标值相对应的时候，9000设备本地的该IP设备参数将被删除。

在该结构体中，设备域名为空，ipv4地址有效时，使用ipv4地址去连接设备；ipv6和设备域名都为空，ipv6地址有效时，使用ipv6去连接设备。

See Also

NET_DVR_IPALARMINFO_V31 NET_DVR_IPPARACFG_V31 NET_DVR_IPPARACFG_V40


NET_DVR_IPPARACFG

IP设备资源及IP通道资源配置结构体。

struct{
  DWORD                  dwSize;
  NET_DVR_IPDEVINFO      struIPDevInfo[MAX_IP_DEVICE];
  BYTE                   byAnalogChanEnable[MAX_ANALOG_CHANNUM];
  NET_DVR_IPCHANINFO     struIPChanInfo[MAX_IP_CHANNEL];
}NET_DVR_IPPARACFG, *LPNET_DVR_IPPARACFG;

Members

dwSize
结构体大小
struIPDevInfo
IP设备，下标0对应设备IP ID为1
byAnalogChanEnable
模拟通道资源是否启用：0-禁用，1-启用。DS-9000该配置修改后会自动重启
struIPChanInfo
IP通道信息

Remarks

1.混合型DVR接的IP设备包括IP Camera和DVS等，struDevInfo保存混合型DVR注册的设备信息； struIPChanInfo的byIPID对应IP设备资源struDevInfo的数组下标索引值加1；IP报警输入资源NET_DVR_IPALARMINCFG 以及IP报警输出资源NET_DVR_IPALARMOUTCFG中的byIPID同样对应NET_DVR_IPPARACFG 的IP设备资源struDevInfo的数组下标索引值加1。

2.模拟通道资源 的下标（0到MAX_ANALOG_CHANNUM-1）与通道相关参数（通道图像参数，压缩参数，录像参数，报警联动及录像触发通道的）下标索引值一一对应，其通道号为下标索引加上设备的起始通道号（结构NET_DVR_DEVICEINFO_V30中的byStartChan）。

3.IP通道资源struIPChanInfo的下标索引值（0到MAX_IP_CHANNEL -1）加上MAX_ANALOG_CHANNUM再加上设备的起始通道号（结构NET_DVR_DEVICEINFO_V30中的byStartChan）对应的是预览以及参数配置要使用的音视频通道号（MAX_ANALOG_CHANNUM+byStartChan到MAX_CHANNUM_V30-1+byStartChan）。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_IPPARACFG_V31


NET_DVR_IPPARACFG_V31

IP设备资源及IP通道资源配置结构体。

struct{
  DWORD                   dwSize;
  NET_DVR_IPDEVINFO_V31   struIPDevInfo[MAX_IP_DEVICE];
  BYTE                    byAnalogChanEnable[MAX_ANALOG_CHANNUM];
  NET_DVR_IPCHANINFO      struIPChanInfo[MAX_IP_CHANNEL];
}NET_DVR_IPPARACFG_V31, *LPNET_DVR_IPPARACFG_V31;

Members

dwSize
结构体大小
struIPDevInfo
IP设备，下标0对应设备IP ID为1
byAnalogChanEnable
模拟通道资源是否启用：0-禁用，1-启用。DS-9000该配置修改后会自动重启
struIPChanInfo
IP通道信息

Remarks

1.混合型DVR设备接的IP设备包括IP Camera和DVS等，struIPDevInfo保存混合型DVR注册的设备信息； struIPChanInfo的byIPID对应IP设备资源struIPDevInfo的数组下标索引值加1；IP报警输入资源NET_DVR_IPALARMINCFG 以及IP报警输出资源NET_DVR_IPALARMOUTCFG中的byIPID同样对应NET_DVR_IPPARACFG_V31的IP设备资源struDevInfo的数组下标索引值加1。

2.模拟通道资源 的下标（0到MAX_ANALOG_CHANNUM-1）与通道相关参数（通道图像参数，压缩参数，录像参数，报警联动及录像触发通道的）下标索引值一一对应，其通道号为下标索引加上设备的起始通道号（结构NET_DVR_DEVICEINFO_V30中的byStartChan）。

3.IP通道资源struIPChanInfo的下标索引值（0到MAX_IP_CHANNEL -1）加上MAX_ANALOG_CHANNUM再加上设备的起始通道号（结构NET_DVR_DEVICEINFO_V30中的byStartChan）对应的是预览以及参数配置要使用的音视频通道号（MAX_ANALOG_CHANNUM+byStartChan到MAX_CHANNUM_V30-1+byStartChan）。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_IPPARACFG


NET_DVR_IPPARACFG_V40

IP设备资源及IP通道资源配置结构体。

struct{
  DWORD                   dwSize;
  DWORD                   dwGroupNum;
  DWORD                   dwAChanNum;
  DWORD                   dwDChanNum;
  DWORD                   dwStartDChan;
  BYTE                    byAnalogChanEnable[MAX_CHANNUM_V30];
  NET_DVR_IPDEVINFO_V31   struIPDevInfo[MAX_IP_DEVICE_V40];
  NET_DVR_STREAM_MODE     struStreamMode[MAX_CHANNUM_V30];
  BYTE                    byRes2[20];
}NET_DVR_IPPARACFG_V40, *LPNET_DVR_IPPARACFG_V40;

Members

dwSize
结构体大小
dwGroupNum
设备支持的总组数（只读）。若设备支持的组数大于1，NET_DVR_GetDVRConfig（或者NET_DVR_SetDVRConfig）获取（或设置）相关通道参数需要按照组数调用多次命令分别获取（或设置）各组通道参数，此时接口中lChannel对应组号。
dwAChanNum
最大模拟通道个数（只读）
dwDChanNum
数字通道个数（只读）
dwStartDChan
起始数字通道（只读）
byAnalogChanEnable
模拟通道资源是否启用，从低到高表示1-64通道：0-禁用，1-启用。
struIPDevInfo
IP设备信息，下标0对应设备IP ID为1
struStreamMode
取流模式
byRes2
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_IPPARACFG


NET_DVR_IPSERVER_STREAM

IP Server模式配置结构体。

struct{
  BYTE               byEnable;
  BYTE               byRes[3];
  NET_DVR_IPADDR     struIPServer;
  WORD               wPort;
  WORD               wDvrNameLen;
  BYTE               byDVRName[NAME_LEN];
  WORD               wDVRSerialLen;
  WORD               byRes1[2];
  BYTE               byDVRSerialNumber[SERIALNO_LEN];
  BYTE               byUserName[NAME_LEN];
  BYTE               byPassWord[PASSWD_LEN];
  BYTE               byChannel;
  BYTE               byRes2[11];
}NET_DVR_IPSERVER_STREAM, *LPNET_DVR_IPSERVER_STREAM;

Members

byEnable
是否启用
byRes
保留，置为0
struIPServer
IPServer 地址
wPort
IPServer 端口
wDvrNameLen
DVR 名称长度
byDVRName
DVR名称
wDVRSerialLen
序列号长度
byRes1
保留，置为0
byDVRSerialNumber
DVR序列号
byUserName
DVR 登陆用户名
byPassWord
DVR 登陆密码
byChannel
DVR 通道，参数值为通道号，例如byChannel=1表示通道1
byRes2
保留，置为0

See Also

NET_DVR_GET_STREAM_UNION


NET_DVR_ITS_ABILITY

交通能力集结构体。

struct{
  DWORD             dwSize;
  DWORD             dwAbilityType;
  BYTE              byMaxRuleNum;
  BYTE              byMaxTargetNum;
  BYTE              byRes[10];
}NET_DVR_ITS_ABILITY,*LPNET_DVR_ITS_ABILITY;

Members

dwSize
结构体大小
dwAbilityType
支持的能力列表
enum _ITS_ABILITY_TYPE_{
  ITS_CONGESTION_ABILITY              = 0x01,
  ITS_PARKING_ABILITY                 = 0x02,
  ITS_INVERSE_ABILITY                 = 0x04,
  ITS_PEDESTRIAN_ABILITY              = 0x08,
  ITS_DEBRIS_ABILITY                  = 0x10,
  ITS_SMOG_ABILITY                    = 0x20,
  ITS_LANE_VOLUME_ABILITY             = 0x010000,
  ITS_LANE_VELOCITY_ABILITY           = 0x020000,
  ITS_TIME_HEADWAY_ABILITY            = 0x040000,
  ITS_SPACE_HEADWAY_ABILITY           = 0x080000,
  ITS_TIME_OCCUPANCY_RATIO_ABILITY    = 0x100000,
  ITS_SPACE_OCCUPANCY_RATIO_ABILITY   = 0x200000,
  ITS_LANE_QUEUE_ABILITY              = 0x400000
}ITS_ABILITY_TYPE
ITS_CONGESTION_ABILITY
拥堵
ITS_PARKING_ABILITY
停车
ITS_INVERSE_ABILITY
逆行
ITS_PEDESTRIAN_ABILITY
行人
ITS_DEBRIS_ABILITY
遗留物，抛洒物碎片
ITS_SMOG_ABILITY
烟雾-隧道
ITS_LANE_VOLUME_ABILITY
车道流量
ITS_LANE_VELOCITY_ABILITY
车道平均速度
ITS_TIME_HEADWAY_ABILITY
车头时距
ITS_SPACE_HEADWAY_ABILITY
车头间距
ITS_TIME_OCCUPANCY_RATIO_ABILITY
车道占有率（时间上)
ITS_SPACE_OCCUPANCY_RATIO_ABILITY
车道占有率，百分比计算（空间上)
ITS_LANE_QUEUE_ABILITY
排队长度
byMaxRuleNum
最大规则个数
byMaxTargetNum
最大目标个数
byRes
保留

See Also

NET_DVR_GetDeviceAbility


NET_DVR_ITS_CALIBRATION

智能交通事件标定结构体。

struct{
  unsigned int           dwPointNum;
  NET_VCA_POINT          struPoint[CALIB_PT_NUM];
  float                  fWidth;
  float                  fHeight;
  BYTE                   byRes1[100];
}NET_DVR_ITS_CALIBRATION, *LPNET_DVR_ITS_CALIBRATION;

Members

dwPointNum
标定点数
struPoint
图像坐标
fWidth
宽度
fHeight
高度
byRes1
保留

See Also

NET_DVR_CALIBRATION_PRARM_UNION


NET_DVR_JPEG_CAPTURE_CFG

设备抓图配置结构体。

struct{
  DWORD                   dwSize;
  NET_DVR_TIMING_CAPTURE  struTimingCapture;
  NET_DVR_EVENT_CAPTURE   struEventCapture;
  BYTE                    byRes3[20];
}NET_DVR_JPEG_CAPTURE_CFG,*LPNET_DVR_JPEG_CAPTURE_CFG;

Members

dwSize
结构体大小
struTimingCapture
定时抓图参数配置
struEventCapture
事件抓图参数配置
byRes3
保留，置为0

Remarks

抓图分辨率只支持:0- CIF，1- QCIF，2- 4CIF。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_JPEGCFG_V30

JPEG抓图参数配置结构体。

struct{
  DWORD                              dwSize;
  NET_DVR_JPEGPARA                   struJpegPara[MAX_CHANNUM_V30];
  WORD                               wBurstMode;
  WORD                               wUploadInterval;
  NET_DVR_PICTURE_NAME               struPicNameRule;
  BYTE                               bySaveToHD;
  BYTE                               byRes1;
  WORD                               wCatchInterval;
  BYTE                               byRes2[12];
  NET_DVR_SERIAL_CATCHPIC_PARA       struRs232Cfg;
  NET_DVR_SERIAL_CATCHPIC_PARA       struRs485Cfg;
  DWORD                              dwTriggerPicTimes[MAX_CHANNUM_V30];
  DWORD                              dwAlarmInPicChanTriggered[MAX_ALARMIN_V30];
}NET_DVR_JPEGCFG_V30, *LPNET_DVR_JPEGCFG_V30;

Members

dwSize
结构体大小
struJpegPara
每个通道的图像参数
wBurstMode
抓图方式，按位设置，0x1=报警输入触发，0x2=移动侦测触发，0x4=232触发，0x8=485触发，0x10=网络触发
wUploadInterval
图片上传间隔(秒)，取值范围[0，65535]
struPicNameRule
图片命名规则
bySaveToHD
是否保存到硬盘
byRes1
保留
wCatchInterval
抓图间隔（秒），取值范围[0，65535]
byRes2
保留
struRs232Cfg
232抓图参数
struRs485Cfg
485串口抓图参数
dwTriggerPicTimes
每个通道一次触发拍照次数
dwAlarmInPicChanTriggered
报警触发抓拍通道，按位设置，从第1位开始

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_JPEGPARA

JPEG图像信息结构体。

struct{
  WORD     wPicSize;
  WORD     wPicQuality;
}NET_DVR_JPEGPARA,*LPNET_DVR_JPEGPARA;

Members

wPicSize
图片尺寸：0-CIF，1-QCIF，2-D1，3-UXGA(1600x1200)，4-SVGA(800x600)，5-HD720p(1280x720)，6-VGA，7-XVGA，8-HD900p，9-HD1080，10-2560*1920，11-1600*304，12-2048*1536，13-2448*2048，14-2448*1200，15-2448*800，16-XGA(1024*768)，17-SXGA(1280*1024)，18-WD1(960*576/960*480),19-1080i
wPicQuality
图片质量系数：0-最好，1-较好，2-一般

Remarks

参数wPicQuality支持的分辨率值可通过NET_DVR_GetDeviceAbility获取能力集类型PIC_CAPTURE_ABILITY获取(NET_DVR_COMPRESSIONCFG_ABILITY)得到。


NET_DVR_LABEL_IDENTIFY

添加录像标签后的标识结构体。

struct{
  BYTE   sLabelIdentify[LABEL_IDENTIFY_LEN];
  BYTE   byRes[8];
}NET_DVR_LABEL_IDENTIFY,*LPNET_DVR_LABEL_IDENTIFY;

Members

sLabelIdentify
录像标签的标识
byRes
保留，置为0

See Also

NET_DVR_DEL_LABEL_PARAM NET_DVR_InsertRecordLabel


NET_DVR_LANE_CFG

车道规则配置结构体。

struct{
  DWORD                   dwSize;
  NET_DVR_ONE_LANE        struLan[MAX_LANE_NUM];
  BYTE                    byRes1[40];
}NET_DVR_LANE_CFG, *LPNET_DVR_LANE_CFG;

Members

dwSize
结构体大小
struLan
车道参数，数组下标为车道ID
byRes1
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_LANE_PARAM

车道参数结构体。

struct{
  BYTE                     byRuleName[NAME_LEN];
  BYTE                     byRuleID;
  BYTE                     byVaryType;
  BYTE                     byLaneType;
  BYTE                     byRes1;
  DWORD                    dwLaneVolume;
  DWORD                    dwLaneVelocity;
  DWORD                    dwTimeHeadway ;
  DWORD                    dwSpaceHeadway;
  float                    fSpaceOccupyRation;
  NET_DVR_LANE_QUEUE       struLaneQueue;
  NET_VCA_POINT            struRuleLocation;
  BYTE                     byRes2[32];
}NET_DVR_LANE_PARAM,*LPNET_DVR_LANE_PARAM;

Members

byRuleName
车道规则名称
byRuleID
规则序号，[0,7]，为规则配置结构下标
byVaryType
车道交通参数变化类型
enum _TRAFFIC_DATA_VARY_TYPE_{
  NO_VARY,
  VEHICLE_ENTER,
  VEHICLE_LEAVE,
  UEUE_VARY
}TRAFFIC_DATA_VARY_TYPE
NO_VARY
无变化
VEHICLE_ENTER
车辆进入虚拟线圈
VEHICLE_LEAVE
车辆离开虚拟线圈
UEUE_VARY
队列变化
byLaneType
车道上行或下行
byRes1
保留
dwLaneVolume
车道流量，统计有多少车子通过
dwLaneVelocity
车道速度，公里计算
dwTimeHeadway
车头时距，以秒计算
dwSpaceHeadway
车头间距，以米来计算
fSpaceOccupyRation
车道占有率，百分比计算（空间上)
struLaneQueue
车道队列长度
struRuleLocation
线圈规则的中心点位置
byRes2
保留

See Also

NET_DVR_TPS_INFO


NET_DVR_LANE_QUEUE

车道队列结构体。

struct{
  NET_VCA_POINT            struHead;
  NET_VCA_POINT            struTail;
  DWORD                    dwLength;
}NET_DVR_LANE_QUEUE,*LPNET_DVR_LANE_QUEUE;

Members

struHead
队列头
struTail
队列尾
dwLength
实际队列长度，单位：米，范围[0-500]

See Also

NET_DVR_LANE_PARAM


NET_DVR_LAYOUT_LIST

布局参数设置

struct{
  DWORD                      dwSize;
  NET_DVR_LAYOUTCFG          struLayoutInfo[MAX_LAYOUT_COUNT];
  BYTE                       byRes[4];
}NET_DVR_LAYOUT_LIST,*LPNET_DVR_LAYOUT_LIST;

Members

dwSize
结构体大小
struLayoutInfo
所有布局名称
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig


NET_DVR_LAYOUTCFG

布局参数设置。

struct{
  DWORD                  dwSize;
  BYTE                   byValid;
  BYTE                   byRes1[3];
  BYTE                   byLayoutName[NAME_LEN];
  NET_DVR_SCREEN_WINCFG  struWinCfg[MAX_WIN_COUNT];
  BYTE                   byRes2[16];
}NET_DVR_LAYOUTCFG,*LPNET_DVR_LAYOUTCFG;

Members

dwSize
结构体大小
byValid
是否有效：0- 否，1- 是
byRes1
保留，置为0
byLayoutName
布局名称
struWinCfg
布局内窗口参数
byRes2
保留，置为0

See Also

NET_DVR_LAYOUT_LIST

NET_DVR_SetDVRConfig


NET_DVR_LIGHTSNAPCFG

红绿灯功能参数结构体。

struct{
  DWORD      dwSize;
  BYTE       byLightIoIn;
  BYTE       byTrigIoIn;
  BYTE       byRelatedDriveWay;
  BYTE       byTrafficLight;
  BYTE       bySnapTimes1;
  BYTE       bySnapTimes2;
  BYTE       byRes1[2];
  WORD       wIntervalTime1[MAX_INTERVAL_NUM];
  WORD       wIntervalTime2[MAX_INTERVAL_NUM];
  BYTE       byRecord;
  BYTE       bySessionTimeout;
  BYTE       byPreRecordTime;
  BYTE       byVideoDelay;
  BYTE       byRes2[32];
}NET_DVR_LIGHTSNAPCFG, *LPNET_DVR_LIGHTSNAPCFG;

Members

dwSize
结构体大小
byLightIoIn
红绿灯的IO号，从1开始
byTrigIoIn
触发的IO号，从1开始
byRelatedDriveWay
触发IO关联的车道号，取值范围[0,9]
byTrafficLight
0-高电平红灯，低电平绿灯；1-高电平绿灯，低电平红灯
bySnapTimes1
红灯抓拍次数，0-不抓拍，非0-连拍次数，最大5次
bySnapTimes2
绿灯抓拍次数，0-不抓拍，非0-连拍次数，最大5次
byRes1
保留，置为0
wIntervalTime1
红灯连拍间隔时间，单位ms，取值范围[67,60000]
wIntervalTime2
绿灯连拍间隔时间，单位ms，取值范围[67,60000]
byRecord
闯红灯周期录像标志，0-不录像，1-录像
bySessionTimeout
闯红灯周期录像超时时间（单位秒），取值范围[0,100]
byPreRecordTime
闯红灯录像片段预录时间(单位秒)，取值范围[0,100]
byVideoDelay
闯红灯录像片段延时时间（单位秒），取值范围[0,100]
byRes2
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_LIMIT_ANGLE

限位参数配置结构。

struct{
  BYTE              byEnable;
  BYTE              byRes1[3];
  NET_DVR_PTZPOS    struUp;
  NET_DVR_PTZPOS    struDown;
  NET_DVR_PTZPOS    struLeft;
  NET_DVR_PTZPOS    struRight;
  BYTE              byRes2[20];
}NET_DVR_LIMIT_ANGLE, *LPNET_DVR_LIMIT_ANGLE;

Members

byEnable
是否启用场景限位功能：0-不启用，1-启用
byRes1
保留
struUp
上限位
struDown
下限位
struLeft
左限位
struRight
右限位
byRes2
保留

See Also

NET_DVR_GetPatrolLimitAngle NET_DVR_SetPatrolLimitAngle

NET_DVR_GetPositionLimitAngle NET_DVR_SetPositionLimitAngle


NET_DVR_LINE_SEGMENT

样本线参数结构体。

struct{
  BYTE            byLineMode;
  BYTE            byRes[3];
  NET_VCA_POINT   struStartPoint;
  NET_VCA_POINT   struEndPoint;
  float           fValue;
}NET_DVR_LINE_SEGMENT, *LPNET_DVR_LINE_SEGMENT;

Members

byLineMode
样本线类型，具体见如下定义：
enum tagLINE_MODE{
  HEIGHT_LINE,
  LENGTH_LINE
}LINE_MODE
HEIGHT_LINE
高度样本线
LENGTH_LINE
长度样本线
byRes
保留
struStartPoint
目标头部点或线段起始点
struEndPoint
目标脚部点或线段终点
fValue
高度或者长度

Remarks

当样本线类型为高度样本线时，参数struStartPoint表示目标头部点，参数struEndPoint表示目标脚部点，参数fValue表示高度；当样本线类型为长度样本线时，参数struStartPoint表示线段起始点，参数struEndPoint表示线段终点，参数fValue表示长度。

See Also

NET_DVR_BEHAVIOR_OUT_CALIBRATION NET_DVR_IN_CAL_SAMPLE

NET_DVR_VerifyCalibration


NET_DVR_LINK_STATUS

通道设备工作状态结构体。

struct{
  DWORD             dwSize;
  WORD              wLinkNum;
  BYTE              byRes1[2];
  NET_DVR_ONE_LINK  struOneLink[MAX_LINK_V30];
  BYTE              byRes[32];
}NET_DVR_LINK_STATUS, *LPNET_DVR_LINK_STATUS;

Members

dwSize
结构体大小
wLinkNum
连接的数目
byRes1
保留
struOneLink
连接的客户端信息
byRes
保留

See Also

NET_DVR_GetDVRConfig


NET_DVR_LOCK_RETURN

录像段加锁/解锁结果结构体。

struct{
  DWORD           dwSize;
  NET_DVR_TIME    strBeginTime;
  NET_DVR_TIME    strEndTime;
  BYTE            byRes[20];
}NET_DVR_LOCK_RETURN,*LPNET_DVR_LOCK_RETURN;

Members

dwSize
结构体大小
strBeginTime
开始时间
strEndTime
结束时间
byRes
保留，置为0

See Also

NET_DVR_LockFileByTime NET_DVR_UnLockFileByTime


NET_DVR_LOG

日志信息结构体。

struct{
  NET_DVR_TIME     strLogTime;
  DWORD            dwMajorType;
  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;

Members

strLogTime
日志时间
dwMajorType
报警主类型，定义如下：
宏定义 | 宏定义值 | 含义
MAJOR_ALARM | 0x1 | 报警
MAJOR_EXCEPTION | 0x2 | 异常
MAJOR_OPERATION | 0x3 | 操作
MAJOR_INFORMATION | 0x4 | 日志附加信息
dwMinorType
报警次类型，根据不同的主类型的次类型定义如下：
主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_ALARM | 0x1 | 报警
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_ALARM_IN | 0x1 | 报警输入
MINOR_ALARM_OUT | 0x2 | 报警输出
MINOR_MOTDET_START | 0x3 | 移动侦测报警开始
MINOR_MOTDET_STOP | 0x4 | 移动侦测报警结束
MINOR_HIDE_ALARM_START | 0x5 | 遮挡报警开始
MINOR_HIDE_ALARM_STOP | 0x6 | 遮挡报警结束
MINOR_VCA_ALARM_START | 0x7 | 智能报警开始
MINOR_VCA_ALARM_STOP | 0x8 | 智能报警结束

主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_EXCEPTION | 0x2 | 异常
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_VI_LOST | 0x21 | 视频信号丢失
MINOR_ILLEGAL_ACCESS | 0x22 | 非法访问
MINOR_HD_FULL | 0x23 | 硬盘满
MINOR_HD_ERROR | 0x24 | 网络硬盘错误，录像异常
MINOR_DCD_LOST | 0x25 | MODEM 掉线(保留)
MINOR_IP_CONFLICT | 0x26 | IP地址冲突
MINOR_NET_BROKEN | 0x27 | 网络断开
MINOR_REC_ERROR | 0x28 | 录像出错
MINOR_IPC_NO_LINK | 0x29 | IPC连接异常
MINOR_VI_EXCEPTION | 0x2a | 视频输入异常(只针对模拟通道)
MINOR_IPC_IP_CONFLICT | 0x2b | IPC的IP地址冲突

主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_OPERATION | 0x3 | 操作
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_START_DVR | 0x41 | 开机
MINOR_STOP_DVR | 0x42 | 关机
MINOR_STOP_ABNORMAL | 0x43 | 异常关机
MINOR_REBOOT_DVR | 0x44 | 本地重启设备
MINOR_LOCAL_LOGIN | 0x50 | 本地登陆
MINOR_LOCAL_LOGOUT | 0x51 | 本地注销登陆
MINOR_LOCAL_CFG_PARM | 0x52 | 本地配置参数
MINOR_LOCAL_PLAYBYFILE | 0x53 | 本地按文件回放或下载
MINOR_LOCAL_PLAYBYTIME | 0x54 | 本地按时间回放或下载
MINOR_LOCAL_START_REC | 0x55 | 本地开始录像
MINOR_LOCAL_STOP_REC | 0x56 | 本地停止录像
MINOR_LOCAL_PTZCTRL | 0x57 | 本地云台控制
MINOR_LOCAL_PREVIEW | 0x58 | 本地预览(保留不使用)
MINOR_LOCAL_MODIFY_TIME | 0x59 | 本地修改时间(保留不使用)
MINOR_LOCAL_UPGRADE | 0x5a | 本地升级
MINOR_LOCAL_RECFILE_OUTPUT | 0x5b | 本地备份录象文件
MINOR_LOCAL_FORMAT_HDD | 0x5c | 本地初始化硬盘
MINOR_LOCAL_CFGFILE_OUTPUT | 0x5d | 导出本地配置文件
MINOR_LOCAL_CFGFILE_INPUT | 0x5e | 导入本地配置文件
MINOR_LOCAL_COPYFILE | 0x5f | 本地备份文件
MINOR_LOCAL_LOCKFILE | 0x60 | 本地锁定录像文件
MINOR_LOCAL_UNLOCKFILE | 0x61 | 本地解锁录像文件
MINOR_LOCAL_DVR_ALARM | 0x62 | 本地手动清除和触发报警
MINOR_IPC_ADD | 0x63 | 本地添加IPC
MINOR_IPC_DEL | 0x64 | 本地删除IPC
MINOR_IPC_SET | 0x65 | 本地设置IPC
MINOR_LOCAL_START_BACKUP | 0x66 | 本地开始备份
MINOR_LOCAL_STOP_BACKUP | 0x67 | 本地停止备份
MINOR_LOCAL_COPYFILE_START_TIME | 0x68 | 本地备份开始时间
MINOR_LOCAL_COPYFILE_END_TIME | 0x69 | 本地备份结束时间
MINOR_LOCAL_ADD_NAS | 0x6a | 本地添加网络硬盘
MINOR_LOCAL_DEL_NAS | 0x6b | 本地删除NAS盘
MINOR_LOCAL_SET_NAS | 0x6c | 本地设置NAS盘
MINOR_REMOTE_LOGIN | 0x70 | 远程登录
MINOR_REMOTE_LOGOUT | 0x71 | 远程注销登陆
MINOR_REMOTE_START_REC | 0x72 | 远程开始录像
MINOR_REMOTE_STOP_REC | 0x73 | 远程停止录像
MINOR_START_TRANS_CHAN | 0x74 | 开始透明传输
MINOR_STOP_TRANS_CHAN | 0x75 | 停止透明传输
MINOR_REMOTE_GET_PARM | 0x76 | 远程获取参数
MINOR_REMOTE_CFG_PARM | 0x77 | 远程配置参数
MINOR_REMOTE_GET_STATUS | 0x78 | 远程获取状态
MINOR_REMOTE_ARM | 0x79 | 远程布防
MINOR_REMOTE_DISARM | 0x7a | 远程撤防
MINOR_REMOTE_REBOOT | 0x7b | 远程重启
MINOR_START_VT | 0x7c | 开始语音对讲
MINOR_STOP_VT | 0x7d | 停止语音对讲
MINOR_REMOTE_UPGRADE | 0x7e | 远程升级
MINOR_REMOTE_PLAYBYFILE | 0x7f | 远程按文件回放
MINOR_REMOTE_PLAYBYTIME | 0x80 | 远程按时间回放
MINOR_REMOTE_PTZCTRL | 0x81 | 远程云台控制
MINOR_REMOTE_FORMAT_HDD | 0x82 | 远程格式化硬盘
MINOR_REMOTE_STOP | 0x83 | 远程关机
MINOR_REMOTE_LOCKFILE | 0x84 | 远程锁定文件
MINOR_REMOTE_UNLOCKFILE | 0x85 | 远程解锁文件
MINOR_REMOTE_CFGFILE_OUTPUT | 0x86 | 远程导出配置文件
MINOR_REMOTE_CFGFILE_INTPUT | 0x87 | 远程导入配置文件
MINOR_REMOTE_RECFILE_OUTPUT | 0x88 | 远程导出录象文件
MINOR_REMOTE_DVR_ALARM | 0x89 | 远程手动清除和触发报警
MINOR_REMOTE_IPC_ADD | 0x8a | 远程添加IPC
MINOR_REMOTE_IPC_DEL | 0x8b | 远程删除IPC
MINOR_REMOTE_IPC_SET | 0x8c | 远程设置IPC
MINOR_REBOOT_VCA_LIB | 0x8d | 重启智能库
MINOR_REMOTE_ADD_NAS | 0x8e | 远程添加NAS盘
MINOR_REMOTE_DEL_NAS | 0x8f | 远程删除NAS盘
MINOR_REMOTE_SET_NAS | 0x90 | 远程设置NAS盘

主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_INFORMATION | 0x4 | 附加信息
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_HDD_INFO | 0xa1 | 硬盘信息
MINOR_SMART_INFO | 0xa2 | S.M.A.R.T信息
MINOR_REC_START | 0xa3 | 开始录像
MINOR_REC_STOP | 0xa4 | 停止录像
MINOR_REC_OVERDUE | 0xa5 | 过期录像删除
MINOR_LINK_START | 0xa6 | 连接前端设备
MINOR_LINK_STOP | 0xa7 | 断开前端设备
sPanelUser
操作面板的用户名
sNetUser
网络操作的用户名
sRemoteHostAddr
远程主机地址
dwParaType
当日志的主类型为 MAJOR_OPERATION=03（操作）， 且次类型为 MINOR_LOCAL_CFG_PARM=0x52（本地配置参数）或 MINOR_REMOTE_GET_PARM=0x76（远程获得参数）或 MINOR_REMOTE_CFG_PARM=0x77（远程配置参数）时， 该参数类型有效，其含义如下：
宏定义 | 宏定义值 | 含义
PARA_VIDEOOUT | 0x1 | 视频输出结构配置
PARA_IMAGE | 0x2 | 图像参数结构配置
PARA_ENCODE | 0x4 | 压缩参数结构配置
PARA_NETWORK | 0x8 | 网络参数结构配置
PARA_ALARM | 0x10 | 报警参数结构配置
PARA_EXCEPTION | 0x20 | 异常参数结构配置
PARA_DECODER | 0x40 | 解码器参数结构配置
PARA_RS232 | 0x80 | RS232参数结构配置
PARA_PREVIEW | 0x100 | 本地预览参数结构配置
PARA_SECURITY | 0x200 | 用户权限参数结构配置
PARA_DATETIME | 0x400 | 本地系统配置
PARA_FRAMETYPE | 0x800 | 帧信息参数结构配置
dwChannel
通道号
dwDiskNumber
硬盘号
dwAlarmInPort
报警输入端口
dwAlarmOutPort
报警输出端口

See Also

NET_DVR_FindNextLog


NET_DVR_LOG_V30

日志信息结构体。

struct{
  NET_DVR_TIME     strLogTime;
  DWORD            dwMajorType;
  DWORD            dwMinorType;
  BYTE             sPanelUser[MAX_NAMELEN];
  BYTE             sNetUser[MAX_NAMELEN];
  NET_DVR_IPADDR   struRemoteHostAddr;
  DWORD            dwParaType;
  DWORD            dwChannel;
  DWORD            dwDiskNumber;
  DWORD            dwAlarmInPort;
  DWORD            dwAlarmOutPort;
  DWORD            dwInfoLen;
  char             sInfo[LOG_INFO_LEN];
}NET_DVR_LOG_V30,*LPNET_DVR_LOG_V30;

Members

strLogTime
日志时间
dwMajorType
报警主类型，定义如下：
宏定义 | 宏定义值 | 含义
MAJOR_ALARM | 0x1 | 报警
MAJOR_EXCEPTION | 0x2 | 异常
MAJOR_OPERATION | 0x3 | 操作
MAJOR_INFORMATION | 0x4 | 日志附加信息
dwMinorType
报警次类型，根据不同的主类型的次类型定义如下：
主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_ALARM | 0x1 | 报警
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_ALARM_IN | 0x1 | 报警输入
MINOR_ALARM_OUT | 0x2 | 报警输出
MINOR_MOTDET_START | 0x3 | 移动侦测报警开始
MINOR_MOTDET_STOP | 0x4 | 移动侦测报警结束
MINOR_HIDE_ALARM_START | 0x5 | 遮挡报警开始
MINOR_HIDE_ALARM_STOP | 0x6 | 遮挡报警结束
MINOR_VCA_ALARM_START | 0x7 | 智能报警开始
MINOR_VCA_ALARM_STOP | 0x8 | 智能报警结束
MINOR_ITS_ALARM_START | 0x09 | 交通事件报警开始
MINOR_ITS_ALARM_STOP | 0x0a | 交通事件报警结束
MINOR_NETALARM_START | 0x0b | 网络报警开始
MINOR_NETALARM_STOP | 0x0c | 网络报警结束
MINOR_NETALARM_RESUME | 0x0d | 网络报警恢复
MINOR_WIRELESS_ALARM_START | 0x0e | 无线报警开始
MINOR_WIRELESS_ALARM_STOP | 0x0f | 无线报警结束
MINOR_PIR_ALARM_START | 0x10 | 人体感应报警开始
MINOR_PIR_ALARM_STOP | 0x11 | 人体感应报警结束
MINOR_CALLHELP_ALARM_START | 0x12 | 呼救报警开始
MINOR_CALLHELP_ALARM_STOP | 0x13 | 呼救报警结束

主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_EXCEPTION | 0x2 | 异常
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_RAID_ERROR | 0x20 | 阵列异常
MINOR_VI_LOST | 0x21 | 视频信号丢失
MINOR_ILLEGAL_ACCESS | 0x22 | 非法访问
MINOR_HD_FULL | 0x23 | 硬盘满
MINOR_HD_ERROR | 0x24 | 网络硬盘错误，录像异常
MINOR_DCD_LOST | 0x25 | MODEM 掉线(保留)
MINOR_IP_CONFLICT | 0x26 | IP地址冲突
MINOR_NET_BROKEN | 0x27 | 网络断开
MINOR_REC_ERROR | 0x28 | 录像出错
MINOR_IPC_NO_LINK | 0x29 | IPC连接异常
MINOR_VI_EXCEPTION | 0x2a | 视频输入异常(只针对模拟通道)
MINOR_IPC_IP_CONFLICT | 0x2b | IPC的IP地址冲突
MINOR_SENCE_EXCEPTION | 0x2c | 场景异常
MINOR_PIC_REC_ERROR | 0x2d | 抓图出错,获取图片文件失败
MINOR_VI_MISMATCH | 0x2e | 视频制式不匹配
MINOR_RESOLUTION_MISMATCH | 0x2f | 编码分辨率和前端分辨率不匹配
MINOR_SCREEN_SUBSYSTEM_ABNORMALREBOOT | 0x3c | 子板异常启动
MINOR_SCREEN_SUBSYSTEM_ABNORMALINSERT | 0x3d | 子板插入
MINOR_SCREEN_SUBSYSTEM_ABNORMALPULLOUT | 0x3e | 子板拔出
MINOR_SCREEN_ABNARMALTEMPERATURE | 0x3f | 温度异常

主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_OPERATION | 0x3 | 操作
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_START_DVR | 0x41 | 开机
MINOR_STOP_DVR | 0x42 | 关机
MINOR_STOP_ABNORMAL | 0x43 | 异常关机
MINOR_REBOOT_DVR | 0x44 | 本地重启设备
MINOR_LOCAL_LOGIN | 0x50 | 本地登陆
MINOR_LOCAL_LOGOUT | 0x51 | 本地注销登陆
MINOR_LOCAL_CFG_PARM | 0x52 | 本地配置参数
MINOR_LOCAL_PLAYBYFILE | 0x53 | 本地按文件回放或下载
MINOR_LOCAL_PLAYBYTIME | 0x54 | 本地按时间回放或下载
MINOR_LOCAL_START_REC | 0x55 | 本地开始录像
MINOR_LOCAL_STOP_REC | 0x56 | 本地停止录像
MINOR_LOCAL_PTZCTRL | 0x57 | 本地云台控制
MINOR_LOCAL_PREVIEW | 0x58 | 本地预览(保留不使用)
MINOR_LOCAL_MODIFY_TIME | 0x59 | 本地修改时间(保留不使用)
MINOR_LOCAL_UPGRADE | 0x5a | 本地升级
MINOR_LOCAL_RECFILE_OUTPUT | 0x5b | 本地备份录象文件
MINOR_LOCAL_FORMAT_HDD | 0x5c | 本地初始化硬盘
MINOR_LOCAL_CFGFILE_OUTPUT | 0x5d | 导出本地配置文件
MINOR_LOCAL_CFGFILE_INPUT | 0x5e | 导入本地配置文件
MINOR_LOCAL_COPYFILE | 0x5f | 本地备份文件
MINOR_LOCAL_LOCKFILE | 0x60 | 本地锁定录像文件
MINOR_LOCAL_UNLOCKFILE | 0x61 | 本地解锁录像文件
MINOR_LOCAL_DVR_ALARM | 0x62 | 本地手动清除和触发报警
MINOR_IPC_ADD | 0x63 | 本地添加IPC
MINOR_IPC_DEL | 0x64 | 本地删除IPC
MINOR_IPC_SET | 0x65 | 本地设置IPC
MINOR_LOCAL_START_BACKUP | 0x66 | 本地开始备份
MINOR_LOCAL_STOP_BACKUP | 0x67 | 本地停止备份
MINOR_LOCAL_COPYFILE_START_TIME | 0x68 | 本地备份开始时间
MINOR_LOCAL_COPYFILE_END_TIME | 0x69 | 本地备份结束时间
MINOR_LOCAL_ADD_NAS | 0x6a | 本地添加网络硬盘
MINOR_LOCAL_DEL_NAS | 0x6b | 本地删除NAS盘
MINOR_LOCAL_SET_NAS | 0x6c | 本地设置NAS盘
MINOR_REMOTE_LOGIN | 0x70 | 远程登录
MINOR_REMOTE_LOGOUT | 0x71 | 远程注销登陆
MINOR_REMOTE_START_REC | 0x72 | 远程开始录像
MINOR_REMOTE_STOP_REC | 0x73 | 远程停止录像
MINOR_START_TRANS_CHAN | 0x74 | 开始透明传输
MINOR_STOP_TRANS_CHAN | 0x75 | 停止透明传输
MINOR_REMOTE_GET_PARM | 0x76 | 远程获取参数
MINOR_REMOTE_CFG_PARM | 0x77 | 远程配置参数
MINOR_REMOTE_GET_STATUS | 0x78 | 远程获取状态
MINOR_REMOTE_ARM | 0x79 | 远程布防
MINOR_REMOTE_DISARM | 0x7a | 远程撤防
MINOR_REMOTE_REBOOT | 0x7b | 远程重启
MINOR_START_VT | 0x7c | 开始语音对讲
MINOR_STOP_VT | 0x7d | 停止语音对讲
MINOR_REMOTE_UPGRADE | 0x7e | 远程升级
MINOR_REMOTE_PLAYBYFILE | 0x7f | 远程按文件回放
MINOR_REMOTE_PLAYBYTIME | 0x80 | 远程按时间回放
MINOR_REMOTE_PTZCTRL | 0x81 | 远程云台控制
MINOR_REMOTE_FORMAT_HDD | 0x82 | 远程格式化硬盘
MINOR_REMOTE_STOP | 0x83 | 远程关机
MINOR_REMOTE_LOCKFILE | 0x84 | 远程锁定文件
MINOR_REMOTE_UNLOCKFILE | 0x85 | 远程解锁文件
MINOR_REMOTE_CFGFILE_OUTPUT | 0x86 | 远程导出配置文件
MINOR_REMOTE_CFGFILE_INTPUT | 0x87 | 远程导入配置文件
MINOR_REMOTE_RECFILE_OUTPUT | 0x88 | 远程导出录象文件
MINOR_REMOTE_DVR_ALARM | 0x89 | 远程手动清除和触发报警
MINOR_REMOTE_IPC_ADD | 0x8a | 远程添加IPC
MINOR_REMOTE_IPC_DEL | 0x8b | 远程删除IPC
MINOR_REMOTE_IPC_SET | 0x8c | 远程设置IPC
MINOR_REBOOT_VCA_LIB | 0x8d | 重启智能库
MINOR_REMOTE_ADD_NAS | 0x8e | 远程添加NAS盘
MINOR_REMOTE_DEL_NAS | 0x8f | 远程删除NAS盘
MINOR_REMOTE_SET_NAS | 0x90 | 远程设置NAS盘
MINOR_LOCAL_START_REC_CDRW | 0x91 | 本地开始刻录
MINOR_LOCAL_STOP_REC_CDRW | 0x92 | 本地停止刻录
MINOR_REMOTE_START_REC_CDRW | 0x93 | 远程开始刻录
MINOR_REMOTE_STOP_REC_CDRW | 0x94 | 远程停止刻录
MINOR_LOCAL_PIC_OUTPUT | 0x95 | 本地备份图片文件
MINOR_REMOTE_SET_NAS | 0x96 | 远程备份图片文件
MINOR_LOCAL_INQUEST_RESUME | 0x97 | 本地恢复审讯事件
MINOR_REMOTE_INQUEST_RESUME | 0x98 | 远程恢复审讯事件
MINOR_REMOTE_BYPASS | 0xd0 | 远程旁路
MINOR_REMOTE_UNBYPASS | 0xd1 | 远程旁路恢复
MINOR_REMOTE_SET_ALARMIN_CFG | 0xd2 | 远程设置报警输入参数
MINOR_REMOTE_GET_ALARMIN_CFG | 0xd3 | 远程获取报警输入参数
MINOR_REMOTE_SET_ALARMOUT_CFG | 0xd4 | 远程设置报警输出参数
MINOR_REMOTE_GET_ALARMOUT_CFG | 0xd5 | 远程获取报警输出参数
MINOR_REMOTE_ALARMOUT_OPEN_MAN | 0xd6 | 远程手动开启报警输出
MINOR_REMOTE_ALARMOUT_CLOSE_MAN | 0xd7 | 远程手动关闭报警输出
MINOR_REMOTE_ALARM_ENABLE_CFG | 0xd8 | 远程设置报警主机的RS485串口使能状态
MINOR_DBDATA_OUTPUT | 0xd9 | 导出数据库记录
MINOR_DBDATA_INPUT | 0xda | 导入数据库记录
MINOR_MU_SWITCH | 0xdb | 级联切换
MINOR_MU_PTZ | 0xdc | 级联PTZ控制
MINOR_LOCAL_CONF_REB_RAID | 0x101 | 本地配置自动重建
MINOR_LOCAL_CONF_SPARE | 0x102 | 本地配置热备
MINOR_LOCAL_ADD_RAID | 0x103 | 本地创建阵列
MINOR_LOCAL_DEL_RAID | 0x104 | 本地删除阵列
MINOR_LOCAL_MIG_RAID | 0x105 | 本地迁移阵列
MINOR_LOCAL_REB_RAID | 0x106 | 本地手动重建阵列
MINOR_LOCAL_QUICK_CONF_RAID | 0x107 | 本地一键配置
MINOR_LOCAL_ADD_VD | 0x108 | 本地创建虚拟磁盘
MINOR_LOCAL_DEL_VD | 0x109 | 本地删除虚拟磁盘
MINOR_LOCAL_RP_VD | 0x10a | 本地修复虚拟磁盘
MINOR_LOCAL_FORMAT_EXPANDVD | 0x10b | 本地扩展虚拟磁盘扩容
MINOR_LOCAL_RAID_UPGRADE | 0x10c | 本地raid卡升级
MINOR_LOCAL_STOP_RAID | 0x10d | 本地暂停RAID操作(即安全拔盘)
MINOR_REMOTE_CONF_REB_RAID | 0x111 | 远程配置自动重建
MINOR_REMOTE_CONF_SPARE | 0x112 | 远程配置热备
MINOR_REMOTE_ADD_RAID | 0x113 | 远程创建阵列
MINOR_REMOTE_DEL_RAID | 0x114 | 远程删除阵列
MINOR_REMOTE_MIG_RAID | 0x115 | 远程迁移阵列
MINOR_REMOTE_REB_RAID | 0x116 | 远程手动重建阵列
MINOR_REMOTE_QUICK_CONF_RAID | 0x117 | 远程一键配置
MINOR_REMOTE_ADD_VD | 0x118 | 远程创建虚拟磁盘
MINOR_REMOTE_DEL_VD | 0x119 | 远程删除虚拟磁盘
MINOR_REMOTE_RP_VD | 0x11a | 远程修复虚拟磁盘
MINOR_REMOTE_FORMAT_EXPANDVD | 0x11b | 远程虚拟磁盘扩容
MINOR_REMOTE_RAID_UPGRADE | 0x11c | 远程raid卡升级
MINOR_REMOTE_STOP_RAID | 0x11d | 远程暂停RAID操作(即安全拔盘)
MINOR_LOCAL_START_PIC_REC | 0x121 | 本地开始抓图
MINOR_LOCAL_STOP_PIC_REC | 0x122 | 本地停止抓图
MINOR_LOCAL_SET_SNMP | 0x125 | 本地配置SNMP
MINOR_LOCAL_TAG_OPT | 0x126 | 本地标签操作
MINOR_REMOTE_START_PIC_REC | 0x131 | 远程开始抓图
MINOR_REMOTE_STOP_PIC_REC | 0x132 | 远程停止抓图
MINOR_REMOTE_SET_SNMP | 0x135 | 远程配置SNMP
MINOR_REMOTE_TAG_OPT | 0x136 | 远程标签操作
MINOR_SET_MULTI_MASTER | 0x201 | 设置大屏主屏
MINOR_SET_MULTI_SLAVE | 0x202 | 设置大屏子屏
MINOR_CANCEL_MULTI_MASTER | 0x203 | 取消大屏主屏
MINOR_CANCEL_MULTI_SLAVE | 0x204 | 取消大屏子屏
MINOR_SCREEN_SET_INPUT | 0x251 | 修改输入源
MINOR_SCREEN_SET_OUTPUT | 0x252 | 修改输出通道
MINOR_SCREEN_SET_OSD | 0x253 | 修改OSD
MINOR_SCREEN_SET_LOGO | 0x254 | 修改LOGO
MINOR_SCREEN_SET_LAYOUT | 0x255 | 设置布局
MINOR_SET_TRIGGERMODE_CFG | 0x1001 | 设置触发模式参数
MINOR_GET_TRIGGERMODE_CFG | 0x1002 | 获取触发模式参数
MINOR_SET_IOOUT_CFG | 0x1003 | 设置IO输出参数
MINOR_GET_IOOUT_CFG | 0x1004 | 获取IO输出参数
MINOR_GET_TRIGGERMODE_DEFAULT | 0x1005 | 获取触发模式推荐参数
MINOR_GET_ITCSTATUS | 0x1006 | 获取状态检测参数
MINOR_SET_STATUS_DETECT_CFG | 0x1007 | 设置状态检测参数
MINOR_GET_STATUS_DETECT_CFG | 0x1008 | 获取状态检测参数
MINOR_GET_VIDEO_TRIGGERMODE_CFG | 0x1009 | 获取视频电警模式参数
MINOR_SET_VIDEO_TRIGGERMODE_CFG | 0x100a | 设置视频电警模式参数

主类型的宏定义 | 主类型的宏定义值 | 含义
MAJOR_INFORMATION | 0x4 | 附加信息
次类型的宏定义 | 次类型的宏定义值 | 含义
MINOR_HDD_INFO | 0xa1 | 硬盘信息
MINOR_SMART_INFO | 0xa2 | S.M.A.R.T信息
MINOR_REC_START | 0xa3 | 开始录像
MINOR_REC_STOP | 0xa4 | 停止录像
MINOR_REC_OVERDUE | 0xa5 | 过期录像删除
MINOR_LINK_START | 0xa6 | 连接前端设备
MINOR_LINK_STOP | 0xa7 | 断开前端设备
MINOR_NET_DISK_INFO | 0xa8 | 网络硬盘信息
MINOR_RAID_INFO | 0xa9 | raid相关信息
MINOR_PIC_REC_START | 0xb3 | 开始抓图
MINOR_PIC_REC_STOP | 0xb4 | 停止抓图
MINOR_PIC_REC_OVERDUE | 0xb5 | 过期图片文件删除
sPanelUser
操作面板的用户名
sNetUser
网络操作的用户名
struRemoteHostAddr
远程主机地址
dwParaType
对于DS-90xx设备，当日志次类型为MINOR_START_VT或者MINOR_STOP_VT时，表示语音对讲端口号；当日志的主类型为 MAJOR_OPERATION=03（操作）， 且次类型为 MINOR_LOCAL_CFG_PARM=0x52（本地配置参数）或 MINOR_REMOTE_GET_PARM=0x76（远程获得参数）或 MINOR_REMOTE_CFG_PARM=0x77（远程配置参数）时， 该参数类型有效，其含义如下：
宏定义 | 宏定义值 | 含义
PARA_VIDEOOUT | 0x1 | 视频输出结构配置
PARA_IMAGE | 0x2 | 图像参数结构配置
PARA_ENCODE | 0x4 | 压缩参数结构配置
PARA_NETWORK | 0x8 | 网络参数结构配置
PARA_ALARM | 0x10 | 报警参数结构配置
PARA_EXCEPTION | 0x20 | 异常参数结构配置
PARA_DECODER | 0x40 | 解码器参数结构配置
PARA_RS232 | 0x80 | RS232参数结构配置
PARA_PREVIEW | 0x100 | 本地预览参数结构配置
PARA_SECURITY | 0x200 | 用户权限参数结构配置
PARA_DATETIME | 0x400 | 本地系统配置
PARA_FRAMETYPE | 0x800 | 帧信息参数结构配置
dwChannel
通道号
dwDiskNumber
硬盘号
dwAlarmInPort
报警输入端口
dwAlarmOutPort
报警输出端口
dwInfoLen
日志附加信息长度
sInfo
日志附加信息

See Also

NET_DVR_FindNextLog_V30


NET_DVR_LOGONREPONSEPARAM

注册响应信息结构体。

struct{
  WORD        wHeartbeatTime;
  BYTE        byOvertimes;
  BYTE        byRes[13];
}NET_DVR_LOGONREPONSEPARAM,*LPNET_DVR_LOGONREPONSEPARAM;

Members

wHeartbeatTime
心跳时间间隔，单位：秒，5的倍数，180秒以内，默认是15秒
byOvertimes
设备心跳超时次数，默认是3次
byRes
保留

See Also

NET_DVR_SetRegisterCallBack


NET_DVR_MANUAL_CTRL_INFO

双摄像机手动控制结构体。

struct{
  NET_VCA_POINT     struCtrlPoint;
  BYTE              byRes[8];
}NET_DVR_MANUAL_CTRL_INFO, *LPNET_DVR_MANUAL_CTRL_INFO;

Members

struCtrlPoint
手动控制时的控制点参数
byRes
保留

See Also

NET_DVR_TRACK_MODE


NET_DVR_MANUAL_RECORD_PARA

手动录像参数结构体。

struct{
  NET_DVR_STREAM_INFO    struStreamInfo;
  LONG                   lRecordType;
  BYTE                   byRes[32];
}NET_DVR_MANUAL_RECORD_PARA,*LPNET_DVR_MANUAL_RECORD_PARA;

Members

struStreamInfo
流ID信息
lRecordType
录像类型：0- 手动录像，1- 移动侦测录像，2- 信号量IO报警录像，3- 遮挡报警录像
byRes
保留，置为0

See Also

NET_DVR_StartManualRecord


NET_DVR_MANUALSNAP

手动抓拍请求参数结构体。

struct{
  BYTE       byRes[24];
}NET_DVR_MANUALSNAP, *LPNET_DVR_MANUALSNAP;

Members

byRes
保留，置为0

See Also

NET_DVR_ManualSnap


NET_DVR_MATRIX_ABILITY

多路解码器显示和解码能力输出参数的结构体。

struct{
  DWORD   dwSize;
  BYTE    byDecNums;
  BYTE    byStartChan;
  BYTE    byVGANums;
  BYTE    byBNCNums;
  BYTE    byVGAWindowMode[8][12];
  BYTE    byBNCWindowMode[4];
  BYTE    byDspNums;
  BYTE    byHDMINums;
  BYTE    byDVINums;
  BYTE    byRes1[13];
  BYTE    bySupportResolution[MAX_RESOLUTIONNUM];
  BYTE    byHDMIWindowMode[4][8];
  BYTE    byDVIWindowMode[4][8];
  BYTE    byRes2[24];
}NET_DVR_MATRIX_ABILITY,*LPNET_DVR_MATRIX_ABILITY;

Members

dwSize
结构体大小
byDecNums
解码通道数
byStartChan
起始通道号
byVGANums
VGA显示通道个数
byBNCNums
BNC显示通道个数
byVGAWindowMode
VGA支持的窗口模式，共有1、2、4、9、16等几种模式，例如byVGAWindowMode[0][0]为1表示VGA1支持1画面窗口模式，byVGAWindowMode[0][1]为2表示VGA1支持2画面模式，到0为止
byBNCWindowMode
BNC支持的窗口模式，例如byBNCWindowMode[0]为1表示BNC输出支持1画面窗口模式，byBNCWindowMode[1]为2表示BNC输出支持2画面模式，到0为止
byDspNums
DSP数目
byHDMINums
HDMI显示通道个数（从25开始）
byDVINums
DVI显示通道个数（从29开始）
byRes1
保留，置为0
bySupportResolution
按下面的枚举类型定义，一个字节表示一种分辨率是否支持，0-不支持，1-支持，分辨率定义如下：
enum{
  VGA_NOT_AVALIABLE,
  VGA_THS8200_MODE_SVGA_60HZ,
  VGA_THS8200_MODE_SVGA_75HZ,
  VGA_THS8200_MODE_XGA_60HZ,
  VGA_THS8200_MODE_XGA_70HZ,
  VGA_THS8200_MODE_SXGA_60HZ,
  VGA_THS8200_MODE_720P_60HZ,
  VGA_THS8200_MODE_1080I_60HZ,
  VGA_THS8200_MODE_1080P_30HZ,
  VGA_THS8200_MODE_UXGA_30HZ,
  HDMI_SII9134_MODE_XGA_60HZ,
  HDMI_SII9134_MODE_SXGA_60HZ,
  HDMI_SII9134_MODE_SXGA2_60HZ,
  HDMI_SII9134_MODE_720P_60HZ,
  HDMI_SII9134_MODE_720P_50HZ,
  HDMI_SII9134_MODE_1080I_60HZ,
  HDMI_SII9134_MODE_1080I_50HZ,
  HDMI_SII9134_MODE_1080P_25HZ,
  HDMI_SII9134_MODE_1080P_30HZ,
  HDMI_SII9134_MODE_1080P_50HZ,
  HDMI_SII9134_MODE_1080P_60HZ,
  HDMI_SII9134_MODE_UXGA_60HZ,
  DVI_SII9134_MODE_XGA_60HZ,
  DVI_SII9134_MODE_SXGA_60HZ,
  DVI_SII9134_MODE_SXGA2_60HZ,
  DVI_SII9134_MODE_720P_60HZ,
  DVI_SII9134_MODE_720P_50HZ,
  DVI_SII9134_MODE_1080I_60HZ,
  DVI_SII9134_MODE_1080I_50HZ,
  DVI_SII9134_MODE_1080P_25HZ,
  DVI_SII9134_MODE_1080P_30HZ,
  DVI_SII9134_MODE_1080P_50HZ,
  DVI_SII9134_MODE_1080P_60HZ,
  DVI_SII9134_MODE_UXGA_60HZ
}VGA_MODE
VGA_NOT_AVALIABLE
无
VGA_THS8200_MODE_SVGA_60HZ
SVGA:800*600
VGA_THS8200_MODE_SVGA_75HZ
SVGA:800*600
VGA_THS8200_MODE_XGA_60HZ
XGA:1024*768
VGA_THS8200_MODE_XGA_70HZ
XGA:1024*768
VGA_THS8200_MODE_SXGA_60HZ
SXGA:1280*1024
VGA_THS8200_MODE_720P_60HZ
H720P:1280*720
VGA_THS8200_MODE_1080I_60HZ
1080i:1920*1080
VGA_THS8200_MODE_1080P_30HZ
1080P:1920*1080
VGA_THS8200_MODE_UXGA_30HZ
UXGA:1600*1200
HDMI_SII9134_MODE_XGA_60HZ
XGA:1024*768
HDMI_SII9134_MODE_SXGA_60HZ
SXGA:1280*1024
HDMI_SII9134_MODE_SXGA2_60HZ
SXGA2:1280*960
HDMI_SII9134_MODE_720P_60HZ
720P:1280*720
HDMI_SII9134_MODE_720P_50HZ
720P:1280*720
HDMI_SII9134_MODE_1080I_60HZ
1080P:1920*1080
HDMI_SII9134_MODE_1080I_50HZ
1080I:1920*1080
HDMI_SII9134_MODE_1080P_25HZ
1080P:1920*1080
HDMI_SII9134_MODE_1080P_30HZ
1080P:1920*1080
HDMI_SII9134_MODE_1080P_50HZ
1080P:1920*1080
HDMI_SII9134_MODE_1080P_60HZ
1080P:1920*1080
HDMI_SII9134_MODE_UXGA_60HZ
UXGA:1600*1200
DVI_SII9134_MODE_XGA_60HZ
XGA:1024*768
DVI_SII9134_MODE_SXGA_60HZ
SXGA:1280*1024
DVI_SII9134_MODE_SXGA2_60HZ
SXGA2:1280*960
DVI_SII9134_MODE_720P_60HZ
720P:1280*720
DVI_SII9134_MODE_720P_50HZ
720P:1280*720
DVI_SII9134_MODE_1080I_60HZ
1080P:1920*1080
DVI_SII9134_MODE_1080I_50HZ
1080I:1920*1080
DVI_SII9134_MODE_1080P_25HZ
1080P:1920*1080
DVI_SII9134_MODE_1080P_30HZ
1080P:1920*1080
DVI_SII9134_MODE_1080P_50HZ
1080P:1920*1080
DVI_SII9134_MODE_1080P_60HZ
1080P:1920*1080
DVI_SII9134_MODE_UXGA_60HZ
UXGA:1600*1200
byHDMIWindowMode
HDMI支持的窗口模式
byDVIWindowMode
DVI支持的窗口模式
byRes2
保留，置为0

See Also

NET_DVR_GetDeviceAbility


NET_DVR_MATRIX_ABILITY_V41

64-T解码器能力集结构体。

struct{
  DWORD                     dwSize;
  BYTE                      byDspNums;
  BYTE                      byDecChanNums;
  BYTE                      byStartChan;
  BYTE                      byRes1[5];
  NET_DVR_DISPINFO          struVgaInfo;
  NET_DVR_DISPINFO          struBncInfo;
  NET_DVR_DISPINFO          struHdmiInfo;
  NET_DVR_DISPINFO          struDviInfo;
  NET_DVR_DISPWINDOWMODE    struDispMode[MAX_DISPNUM_V41];
  NET_DVR_SCREENINFO        struBigScreenInfo;
  BYTE                      byRes2[120];
}NET_DVR_MATRIX_ABILITY_V41,*LPNET_DVR_MATRIX_ABILITY_V41;

Members

dwSize
结构体大小
byDspNums
DSP个数
byDecNums
解码通道数
byStartChan
起始解码通道
byRes1
保留，置为0
struVgaInfo
VGA显示通道信息
struBncInfo
BNC显示通道信息
struHdmiInfo
HDMI显示通道信息
struDviInfo
DVI显示通道信息
struDispMode
显示通道画面分割模式
struBigScreenInfo
大屏拼接信息
byRes2
保留，置为0

See Also

NET_DVR_GetDeviceAbility


NET_DVR_MATRIX_CHAN_INFO_V30

动态解码轮巡通道参数子结构体。

struct{
  DWORD                             dwEnable;
  NET_DVR_STREAM_MEDIA_SERVER_CFG   streamMediaServerCfg;
  NET_DVR_DEV_CHAN_INFO             struDevChanInfo;
}NET_DVR_MATRIX_CHAN_INFO_V30,*LPNET_DVR_MATRIX_CHAN_INFO_V30;

Members

dwEnable
是否启用：0－否，1－启用
streamMediaServerCfg
流媒体服务器参数
struDevChanInfo
轮巡解码通道信息

See Also

NET_DVR_MATRIX_LOOP_DECINFO_V30


NET_DVR_MATRIX_CHAN_STATUS

解码通道状态结构体。

struct{
  BYTE    byDecodeStatus;
  BYTE    byStreamType;
  BYTE    byPacketType;
  BYTE    byRecvBufUsage;
  BYTE    byDecBufUsage;
  BYTE    byFpsDecV;
  BYTE    byFpsDecA;
  BYTE    byCpuLoad;
  BYTE    byRes1[4];
  DWORD   dwDecodedV;
  DWORD   dwDecodedA;
  WORD    wImgW;
  WORD    wImgH;
  BYTE    byVideoFormat;
  BYTE    byRes2[27];
}NET_DVR_MATRIX_CHAN_STATUS,*LPNET_DVR_MATRIX_CHAN_STATUS;

Members

byDecodeStatus
当前状态：0-未启动，1-启动解码
byStreamType
码流类型，具体定义见下表：
宏定义 | 宏定义值 | 含义
NET_DVR_ENCODER_UNKOWN | 0 | 未知编码格式
NET_DVR_ENCODER_H264 | 1 | private 264
NET_DVR_ENCODER_S264 | 2 | 标准H264
NET_DVR_ENCODER_MPEG4 | 3 | MPEG4
NET_DVR_ORIGINALSTREAM | 4 | 原始流
NET_DVR_PICTURE | 5 | 智能分析联动的报警图片
NET_DVR_ENCODER_MJPEG | 6 | MJPEG
NET_DVR_ECONDER_MPEG2 | 7 | MPEG2
byPacketType
封装格式，具体定义见下表：
宏定义 | 宏定义值 | 含义
NET_DVR_STREAM_TYPE_UNKOWN | 0 | 未知封装格式
NET_DVR_STREAM_TYPE_PRIVT | 1 | 私有自定义封装格式
NET_DVR_STREAM_TYPE_TS | 7 | TS封装格式
NET_DVR_STREAM_TYPE_PS | 8 | PS封装格式
NET_DVR_STREAM_TYPE_RTP | 9 | RTP封装格式
NET_DVR_STREAM_TYPE_ORIGIN | 10 | 未封装
byRecvBufUsage
接收缓冲使用率
byDecBufUsage
解码缓冲使用率
byFpsDecV
视频解码帧率，大于1的数值即代表帧率值，对于小于1的低帧率部分的定义见下表：
宏定义 | 宏定义值 | 含义
LOW_DEC_FPS_1_2 | 51 | 1/2帧
LOW_DEC_FPS_1_4 | 52 | 1/4帧
LOW_DEC_FPS_1_8 | 53 | 1/8帧
LOW_DEC_FPS_1_16 | 54 | 1/16帧
byFpsDecA
音频解码帧率，其值的含义和视频解码帧率相同
byCpuLoad
DSP CPU利用率
byRes1
保留，置为0
dwDecodedV
解码的视频帧
dwDecodedA
解码的音频帧
wImgW
解码器当前的图像的宽
wImgH
解码器当前的图像的高
byVideoFormat
视频制式，具体定义如下：
enum{
  VS_NON  = 0,
  VS_NTSC = 1,
  VS_PAL  = 2
}VIDEO_STANDARD
VS_NON
无
VS_NTSC
NTSC制式
VS_PAL
PAL制式
byRes2
保留，置为0

See Also

NET_DVR_DECODER_WORK_STATUS_V41 NET_DVR_DECODER_WORK_STATUS


NET_DVR_MATRIX_DEC_CHAN_INFO

解码通道信息结构体。

struct{
  DWORD                    dwSize;
  NET_DVR_MATRIX_DECINFO   struDecChanInfo;
  DWORD                    dwDecState;
  NET_DVR_TIME             StartTime;
  NET_DVR_TIME             StopTime;
  char                     sFileName[128];
}NET_DVR_MATRIX_DEC_CHAN_INFO,*LPNET_DVR_MATRIX_DEC_CHAN_INFO;

Members

dwSize
结构体大小
struDecChanInfo
解码通道信息
dwDecState
解码通道状态：0-动态解码 1－循环解码 2－按时间回放 3－按文件回放
StartTime
按时间回放开始时间
StopTime
按时间回放结束时间
sFileName
按文件回放文件名

See Also

NET_DVR_MatrixGetDecChanInfo


NET_DVR_MATRIX_DEC_CHAN_INFO_V30

解码通道信息结构体。

struct{
  DWORD                             dwSize;
  NET_DVR_STREAM_MEDIA_SERVER_CFG   streamMediaServerCfg;
  NET_DVR_DEV_CHAN_INFO             struDevChanInfo;
  DWORD                             dwDecState;
  NET_DVR_TIME                      StartTime;
  NET_DVR_TIME                      StopTime;
  char                              sFileName[128];
  DWORD                             dwGetStreamMode;
  NET_DVR_MATRIX_PASSIVEMODE        struPassiveMode;
  BYTE                              byRes[32];
}NET_DVR_MATRIX_DEC_CHAN_INFO_V30,*LPNET_DVR_MATRIX_DEC_CHAN_INFO_V30;

Members

dwSize
结构体大小
streamMediaServerCfg
流媒体服务器参数
struDevChanInfo
解码设备的通道信息
dwDecState
解码通道状态：0-动态解码 1－循环解码 2－按时间回放 3－按文件回放
StartTime
按时间回放开始时间
StopTime
按时间回放结束时间
sFileName
按文件回放文件名
dwGetStreamMode
取流模式：0-未解码，1-主动，2-被动
struPassiveMode
被动解码信息
byRes
保留

See Also

NET_DVR_MatrixGetDecChanInfo_V30


NET_DVR_MATRIX_DEC_CHAN_STATUS

解码通道状态结构体。

struct{
  DWORD   dwSize;
  DWORD   dwIsLinked;
  DWORD   dwStreamCpRate;
  char    cRes[64];
}NET_DVR_MATRIX_DEC_CHAN_STATUS,*LPNET_DVR_MATRIX_DEC_CHAN_STATUS;

Members

dwSize
结构体大小
dwIsLinked
解码通道状态：0－休眠；1－正在连接；2－已连接；3-正在解码
dwStreamCpRate
码流传输速率，单位kb/s
cRes
保留，置为0

See Also

NET_DVR_MatrixGetDecChanStatus


NET_DVR_MATRIX_DEC_REMOTE_PLAY

远程回放文件的参数结构体。

struct{
  DWORD          dwSize;
  char           sDVRIP[16];
  WORD           wDVRPort;
  BYTE           byChannel;
  BYTE           byReserve;
  BYTE           sUserName[NAME_LEN];
  BYTE           sPassword[PASSWD_LEN];
  DWORD          dwPlayMode;
  NET_DVR_TIME   StartTime;
  NET_DVR_TIME   StopTime;
  char           sFileName[128];
}NET_DVR_MATRIX_DEC_REMOTE_PLAY,*LPNET_DVR_MATRIX_DEC_REMOTE_PLAY;

Members

dwSize
结构体大小
sDVRIP
远程设备IP地址
wDVRPort
远程设备端口
byChannel
通道号
byReserve
保留，置为0
sUserName
用户名
sPassword
密码
dwPlayMode
播放类型：0－按文件；1－按时间
StartTime
文件开始时间
StopTime
文件结束时间
sFileName
保存的文件路径名

See Also

NET_DVR_MatrixSetRemotePlay


NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS

回放状态信息结构体。

struct{
  DWORD   dwSize;
  DWORD   dwCurMediaFileLen;
  DWORD   dwCurMediaFilePosition;
  DWORD   dwCurMediaFileDuration;
  DWORD   dwCurPlayTime;
  DWORD   dwCurMediaFIleFrames;
  DWORD   dwCurDataType;
  BYTE    res[72];
}NET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS,*LPNET_DVR_MATRIX_DEC_REMOTE_PLAY_STATUS;

Members

dwSize
结构体大小
dwCurMediaFileLen
当前播放的媒体文件长度
dwCurMediaFilePosition
当前播放文件的播放位置
dwCurMediaFileDuration
当前播放文件的总时间
dwCurPlayTime
当前已经播放的时间
dwCurMediaFIleFrames
当前播放文件的总帧数
dwCurDataType
当前传输的数据类型：19-文件头，20-流数据，21-播放结束标志
res
保留，置为0

See Also

NET_DVR_MatrixGetRemotePlayStatus


NET_DVR_MATRIX_DECCHAN_CONTROL

解码缩放控制参数结构体。

struct{
  DWORD      dwSize;
  BYTE       byDecChanScaleStatus;
  BYTE       byDecodeDelay;
  BYTE       byRes[66];
}NET_DVR_MATRIX_DECCHAN_CONTROL,*LPNET_DVR_MATRIX_DECCHAN_CONTROL;

Members

dwSize
结构体大小
byDecChanScaleStatus
解码通道显示缩放控制，1-缩放显示，0-真实显示
byDecodeDelay
解码延时：0- 默认，1- 实时性好；2- 实时性较好；3- 实时性中，流畅性中；4- 流畅性较好；5- 流畅性好；0xff- 自动调整
byRes
保留，置为0

See Also

NET_DVR_MatrixGetDecChanCfg NET_DVR_MatrixSetDecChanCfg


NET_DVR_MATRIX_DECCHANINFO

动态解码轮巡通道参数结构体。

struct{
  DWORD                    dwEnable;
  NET_DVR_MATRIX_DECINFO   struDecChanInfo;
}NET_DVR_MATRIX_DECCHANINFO,*LPNET_DVR_MATRIX_DECCHANINFO;

Members

dwEnable
是否启用：0－否；1－启用
struDecChanInfo
轮巡解码通道信息

See Also

NET_DVR_MATRIX_LOOP_DECINFO


NET_DVR_MATRIX_DECINFO

动态解码通道参数结构体。

struct{
  char    sDVRIP[16];
  WORD    wDVRPort;
  BYTE    byChannel;
  BYTE    byTransProtocol;
  BYTE    byTransMode;
  BYTE    byRes[3];
  BYTE    sUserName[NAME_LEN];
  BYTE    sPassword[PASSWD_LEN];
}NET_DVR_MATRIX_DECINFO, *LPNET_DVR_MATRIX_DECINFO;

Members

sDVRIP
设备IP地址
wDVRPort
端口号
byChannel
通道号
byTransProtocol
传输协议类型：0—TCP；1—UDP
byTransMode
传输码流模式：0－主码流；1－子码流
byRes
保留，置为0
sUserName
监控主机登陆帐号
sPassword
监控主机密码

See Also

NET_DVR_MATRIX_DEC_CHAN_INFO NET_DVR_MATRIX_DECCHANINFO
NET_DVR_MATRIX_DYNAMIC_DEC


NET_DVR_MATRIX_DYNAMIC_DEC

动态解码信息结构体。

struct{
  DWORD                    dwSize;
  NET_DVR_MATRIX_DECINFO   struDecChanInfo;
}NET_DVR_MATRIX_DYNAMIC_DEC,*LPNET_DVR_MATRIX_DYNAMIC_DEC;

Members

dwSize
结构体大小
struDecChanInfo
动态解码通道信息

See Also

NET_DVR_MatrixStartDynamic


NET_DVR_MATRIX_LOOP_DECINFO

动态解码通道参数结构体。

struct{
  DWORD                        dwSize;
  DWORD                        dwPoolTime;
  NET_DVR_MATRIX_DECCHANINFO   struchanConInfo[MAX_CYCLE_CHAN];
}NET_DVR_MATRIX_LOOP_DECINFO,*LPNET_DVR_MATRIX_LOOP_DECINFO;

Members

dwSize
结构体大小
dwPoolTime
轮巡时间
struDecChanInfo
动态解码通道信息

See Also

NET_DVR_MatrixGetLoopDecChanInfo NET_DVR_MatrixSetLoopDecChanInfo


NET_DVR_MATRIX_LOOP_DECINFO_V30

动态解码轮巡通道参数结构体。

struct{
  DWORD                          dwSize;
  DWORD                          dwPoolTime;
  NET_DVR_MATRIX_CHAN_INFO_V30   struchanConInfo[MAX_CYCLE_CHAN_V30];
  BYTE                           byRes[16];
}NET_DVR_MATRIX_LOOP_DECINFO_V30,*LPNET_DVR_MATRIX_LOOP_DECINFO_V30;

Members

dwSize
结构体大小
dwPoolTime
轮巡时间
struDecChanInfo
动态解码通道信息
byRes
保留，置为0

See Also

NET_DVR_MatrixGetLoopDecChanInfo_V30 NET_DVR_MatrixSetLoopDecChanInfo_V30


NET_DVR_MATRIX_PASSIVEMODE

被动解码参数结构体。

struct{
  WORD             wTransProtol;
  WORD             wPassivePort;
  NET_DVR_IPADDR   struMcastIP;
  BYTE             byStreamType;
  BYTE             res[7];
}NET_DVR_MATRIX_PASSIVEMODE,*LPNET_DVR_MATRIX_PASSIVEMODE;

Members

wTransProtol
传输协议：0-TCP，1-UDP，2-MCAST
wPassivePort
UDP端口，TCP时端口默认是8000，不同的解码通道UDP端口号需设置为不同的值
struMcastIP
TCP/UDP时无效，MCAST时为多播地址(暂时不支持多播，保留)
byStreamType
数据播放模式:1-实时流,2-文件流
res
保留，置为0

See Also

NET_DVR_MATRIX_DEC_CHAN_INFO_V30

NET_DVR_MatrixStartPassiveDecode


NET_DVR_MATRIX_TRAN_CHAN_CONFIG

透明通道参数结构体。

struct{
  DWORD                           dwSize;
  BYTE                            by232IsDualChan;
  BYTE                            by485IsDualChan;
  DWORD                           res[2];
  NET_DVR_MATRIX_TRAN_CHAN_INFO   struTranInfo[MAX_SERIAL_NUM];
}NET_DVR_MATRIX_TRAN_CHAN_CONFIG,*LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG;

Members

dwSize
结构体大小
by232IsDualChan
设置哪路232透明通道是全双工的，取值范围[1,MAX_SERIAL_NUM]
by485IsDualChan
设置哪路485透明通道是全双工的,取值范围[1,MAX_SERIAL_NUM]
res
保留，置为0
struTranInfo
透明通道参数结构体，同时支持建立MAX_SERIAL_NUM个透明通道

See Also

NET_DVR_MatrixGetTranInfo NET_DVR_MatrixSetTranInfo


NET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30

透明通道参数结构体。

struct{
  DWORD                               dwSize;
  BYTE                                by232IsDualChan;
  BYTE                                by485IsDualChan;
  DWORD                               byRes[2];
  NET_DVR_MATRIX_TRAN_CHAN_INFO_V30   struTranInfo[MAX_SERIAL_NUM];
}NET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30,*LPNET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30;

Members

dwSize
结构体大小
by232IsDualChan
设置哪路232透明通道是全双工的，取值范围[1,MAX_SERIAL_NUM]
by485IsDualChan
设置哪路485透明通道是全双工的，取值范围[1,MAX_SERIAL_NUM]
byRes
保留，置为0
struTranInfo
透明通道参数结构体，同时支持建立MAX_SERIAL_NUM个透明通道

See Also

NET_DVR_MatrixGetTranInfo_V30 NET_DVR_MatrixSetTranInfo_V30


NET_DVR_MATRIX_TRAN_CHAN_INFO

透明通道参数子结构体。

struct{
  BYTE         byTranChanEnable;
  BYTE         byLocalSerialDevice;
  BYTE         byRemoteSerialDevice;
  BYTE         res1;
  char         sRemoteDevIP[16];
  WORD         wRemoteDevPort;
  BYTE         res2[2];
  TTY_CONFIG   RemoteSerialDevCfg;
}NET_DVR_MATRIX_TRAN_CHAN_INFO,*LPNET_DVR_MATRIX_TRAN_CHAN_INFO;

Members

byTranChanEnable
当前透明通道是否打开：0－关闭；1－打开。多路解码器本地有1个485串口、1个232串口都可以作为透明通道，设备号分配如下：0－RS485；1－RS232
byLocalSerialDevice
多路解码器本地串口：0－RS485；1－RS232
byRemoteSerialDevice
远程串口输出两个：一个RS232，一个RS485。1表示232串口；2表示485串口
res1
保留，置为0
sRemoteDevIP
远程设备IP地址
wRemoteDevPort
远程设备端口
res2
保留，置为0
RemoteSerialDevCfg
串口配置参数

See Also

NET_DVR_MATRIX_TRAN_CHAN_CONFIG


NET_DVR_MATRIX_TRAN_CHAN_INFO_V30

透明通道参数子结构体。

struct{
  BYTE             byTranChanEnable;
  BYTE             byLocalSerialDevice;
  BYTE             byRemoteSerialDevice;
  BYTE             byRes1;
  NET_DVR_IPADDR   struRemoteDevIP;
  WORD             wRemoteDevPort;
  BYTE             byIsEstablished;
  BYTE             byRes2;
  TTY_CONFIG       RemoteSerialDevCfg;
  BYTE             byUsername[NAME_LEN];
  BYTE             byPassword[PASSWD_LEN];
  BYTE             byRes3[16];
}NET_DVR_MATRIX_TRAN_CHAN_INFO_V30,*LPNET_DVR_MATRIX_TRAN_CHAN_INFO_V30;

Members

byTranChanEnable
当前透明通道是否打开：0－关闭；1－打开。多路解码器本地有1个485串口、1个232串口都可以作为透明通道，设备号分配如下：0－RS485；1－RS232
byLocalSerialDevice
多路解码器本地串口：0－RS485；1－RS232
byRemoteSerialDevice
远程串口输出两个：一个RS232，一个RS485。1表示232串口；2表示485串口
byRes1
保留，置为0
struRemoteDevIP
远程设备IP地址
wRemoteDevPort
远程设备端口
byIsEstablished
透明通道建立成功标志：0-没有成功，1-建立成功
byRes2
保留，置为0
RemoteSerialDevCfg
串口配置参数
byUsername
用户名
byPassword
密码
byRes3
保留，置为0

See Also

NET_DVR_MATRIX_TRAN_CHAN_CONFIG_V30


NET_DVR_MATRIX_VOUTCFG

显示通道配置结构体。

struct{
  DWORD                    dwSize;
  BYTE                     byAudio;
  BYTE                     byAudioWindowIdx;
  BYTE                     byRes;
  BYTE                     byVedioFormat;
  DWORD                    dwResolution;
  DWORD                    dwWindowMode;
  BYTE                     byJoinDecChan[MAX_WINDOWS_V41];
  BYTE                     byEnlargeStatus;
  BYTE                     byEnlargeSubWindowIndex;
  BYTE                     byScale;
  BYTE                     byUnionType;
  NET_DVR_VIDEO_PLATFORM   struDiff;
  BYTE                     byRes2[80];
}NET_DVR_MATRIX_VOUTCFG, *LPNET_DVR_MATRIX_VOUTCFG;

Members

dwSize
结构体大小
byAudio
音频是否开启：0- 关闭，1- 开启
byAudioWindowIdx
音频开启子窗口
byRes
保留
byVedioFormat
视频制式：1- NTSC，2- PAL，0- NULL
dwResolution
分辨率
dwWindowMode
画面模式，能力集获取
byJoinDecChan
各个子窗口关联的解码通道
byEnlargeStatus
是否处于放大状态：0- 不放大，1- 放大
byEnlargeSubWindowIndex
放大的子窗口号
byScale
显示模式：0- 真实显示，1- 缩放显示(针对BNC)
byUnionType
区分共用体：0- 视频综合平台内部解码器显示通道配置，1- 其他解码器显示通道配置
struDiff
显示通道配置联合体
byRes2
保留

Remarks

在V41以下的版本中，byDecResolution[MAX_WINDOWS_V41]是byDecResolution，V41版本中改为数组。在低版本向高版本转换时，根据NET_DVR_MATRIX_VOUTCFG中的画面模式dwWindowMode对byDecResolution[MAX_WINDOWS_V41]进行赋值；高版本向低版本转化时用byDecResolution[0]。

See Also

NET_DVR_MatrixGetDisplayCfg_V41 NET_DVR_MatrixSetDisplayCfg_V41

NET_DVR_GetDeviceAbility


NET_DVR_MATRIXPARA

MATRIX输出参数结构体。

struct{
  WORD       wDisplayLogo;
  WORD       wDisplayOsd;
}NET_DVR_MATRIXPARA,*LPNET_DVR_MATRIXPARA;

Members

wDisplayLogo
显示视频通道号
wDisplayOsd
显示时间

See Also

NET_DVR_VIDEOOUT


NET_DVR_MATRIXPARA_V30

MATRIX输出参数结构体。

struct{
  WORD       wOrder[MAX_ANALOG_CHANNUM];
  WORD       wSwitchTime;
  BYTE       res[14];
}NET_DVR_MATRIXPARA_V30,*LPNET_DVR_MATRIXPARA_V30;

Members

wOrder
预览顺序, 0xff表示相应的窗口不预览
wSwitchTime
预览切换时间
res
保留，置为0

See Also

NET_DVR_VIDEOOUT_V30


NET_DVR_MB_AUTOBACKUPPARA

开启自动备份结构体。

struct{
  DWORD             dwSize;
  BYTE              byEnableAutoBackup;
  BYTE              byRes1[3];
  BYTE              byBackupChannel[MAX_CHANNUM_V30];
  BYTE              byBackupDays[MAX_CHANNUM_V30];
  BYTE              byBackupFileType[MAX_CHANNUM_V30];
  NET_DVR_SCHEDTIME struBackupTime[MAX_CHANNUM_V30];
  BYTE              byRes2[36];
}NET_DVR_MB_AUTOBACKUPPARA, *LPNET_DVR_MB_AUTOBACKUPPARA;

Members

dwSize
结构体大小
byEnableAutoBackup
是否开启自动备份，0- 关闭，1- 开启
byRes1
保留
byBackupChannel
需要备份的通道
byBackupDays
备份天数
byBackupFileType
备份文件类型，0- 全部，1- 定时，2- 移动侦测，3- 报警，4- 手动录像
struBackupTime
自动备份时间段
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_MB_AUTOWORKPARA

启动控制参数结构体。

struct{
  BYTE              byCurPowerCtrlType;
  BYTE              byRes[3];
  NET_DVR_SCHEDTIME struWorkTime[MAX_DAYS][2];
}NET_DVR_MB_AUTOWORKPARA, *LPNET_DVR_MB_AUTOWORKPARA;

Members

byCurPowerCtrlType
当前启动控制方式，1- 延时关机，2- 自动开关机
byRes
保留
struWorkTime
布防时间

See Also

NET_DVR_MB_POWERCTRLPARA


NET_DVR_MB_DOWNLOADSVRPARA

自动下载服务器配置结构体。

struct{
  DWORD             dwSize;
  NET_DVR_IPADDR    struDownloadSvrIp;
  BYTE              byRes[64];
}NET_DVR_MB_DOWNLOADSVRPARA, *LPNET_DVR_MB_DOWNLOADSVRPARA;

Members

dwSize
结构体大小
struDownloadSvrIp
自动下载服务器IP地址
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_MB_GPSPARA

GPS配置结构体。

struct{
  DWORD                        dwSize;
  BYTE                         byEnableGPS;
  BYTE                         byGpsInterface;
  BYTE                         bySpeedUnit;
  BYTE                         byEnableRetrieve;
  int                          iAdjustTime;
  BYTE                         byEnableAdjustTime;
  BYTE                         byRes1[5];
  WORD                         wGpsUploadInterval;
  BYTE                         byGpsOsdChannel[MAX_CHANNUM_V30];
  DWORD                        dwSpeedLimit;
  NET_DVR_HANDLEEXCEPTION_V30  struGpsAlarm;
  BYTE                         byRes2[36];
}NET_DVR_MB_GPSPARA, *LPNET_DVR_MB_GPSPARA;

Members

dwSize
结构体大小
byEnableGPS
是否启用GPS
byGpsInterface
GPS接收接口，0- RS232, 1- RS485, 2- frontpanel，3- lcd
bySpeedUnit
速度单位，0- 公里/小时，1- 英里/小时。 如果单位为公里/小时，速度范围为（0,965）；如果单位是英里/小时，速度范围为（0,600)。
byEnableRetrieve
盲区补发，1- 启用，0- 不启用
iAdjustTime
时区
iAdjustTime参数值 | 时区 | iAdjustTime参数值 | 时区
-12*3600 | GMT-12:00 | 3*3600+1800 | GMT+03:30
-11*3600 | GMT-11:00 | 4*3600 | GMT+04:00
-10*3600 | GMT-10:00 | 4*3600+1800 | GMT+04:30
-9*3600-1800 | GMT-09:30 | 5*3600 | GMT+05:00
-9*3600 | GMT-09:00 | 5*3600+1800 | GMT+05:30
-8*3600 | GMT-08:00 | 5*3600+2700 | GMT+05:45
-7*3600 | GMT-07:00 | 6*3600 | GMT+06:00
-6*3600 | GMT-06:00 | 6*3600+1800 | GMT+06:30
-5*3600 | GMT-05:00 | 7*3600 | GMT+07:00
-4*3600-1800 | GMT-04:30 | 8*3600 | GMT+08:00
-4*3600 | GMT-04:00 | 9*3600 | GMT+09:00
-3*3600-1800 | GMT-03:30 | 9*3600+1800 | GMT+09:30
-3*3600 | GMT-03:00 | 10*3600 | GMT+10:00
-2*3600 | GMT-02:00 | 10*3600+1800 | GMT+10:30
-1*3600 | GMT-01:00 | 11*3600 | GMT+11:00
1*3600 | GMT+01:00 | 11*3600+1800 | GMT+11:30
2*3600 | GMT+02:00 | 12*3600 | GMT+12:00
3*3600 | GMT+03:00 | 13*3600 | GMT+13:00
byEnableAdjustTime
是否启用GPS校时，1- 启用, 0- 不启动
byRes1
保留
wGpsUploadInterval
GPS上传间隔, 单位：秒
byGpsOsdChannel
OSD显示，每字节代表一路
dwSpeedLimit
限速报警
struGpsAlarm
报警和异常处理结构体
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_MB_POWERCTRLPARA

启动控制配置结构体。

struct{
  DWORD                   dwSize;
  DWORD                   dwHaltDelay;
  NET_DVR_MB_AUTOWORKPARA struAutoWorkPara;
  BYTE                    byRes[36];
}NET_DVR_MB_POWERCTRLPARA, *LPNET_DVR_MB_POWERCTRLPARA;

Members

dwSize
结构体大小
dwHaltDelay
关机延迟时间， 单位：分钟（min）
struAutoWorkPara
启动控制相关参数
byRes
保留

Remarks

关机延迟时间, 可选时间为0、5分钟、10分钟、20分钟、25分钟、30分钟、35分钟、40分钟、45分钟、50分钟、60分钟、60*2分钟、60*3分钟、60*4分钟、60*5分钟以及60*6分钟。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_MB_SENSORINPARA

传感器配置结构体。

struct{
  DWORD             dwSize;
  BYTE              byTriggerType[SENSOR_IN_NUMBER];
  BYTE              byTriggerChannel[SENSOR_IN_NUMBER];
  BYTE              byOsdDisplay[MAX_CHANNUM_V30];
  BYTE              byRes[32];
}NET_DVR_MB_SENSORINPARA, *LPNET_DVR_MB_SENSORINPARA;

Members

dwSize
结构体大小
byTriggerType
行车状态相关触发的联动，只用后4个，分别代表刹车、左转、右转、倒车，0-高电平，1-低电平
byTriggerChannel
各Sensor In触发时的联动弹出通道，当被触发时，如果当前处在多画面预览时，自动切换到单画面预览，预览通道即为此处设置的通道；如果当前是单画面预览，则自动切换为设置的预览通道
byOsdDisplay
OSD显示，每字节代表一路
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_MEASURESPEEDCFG

测速功能参数结构体。

struct{
  DWORD       dwSize;
  BYTE        byTrigIo1;
  BYTE        byTrigIo2;
  BYTE        byRelatedDriveWay;
  BYTE        byTestSpeedTimeOut;
  DWORD       dwDistance;
  BYTE        byCapSpeed;
  BYTE        bySpeedLimit;
  BYTE        bySnapTimes1;
  BYTE        bySnapTimes2;
  WORD        wIntervalTime1[MAX_INTERVAL_NUM];
  WORD        wIntervalTime2[MAX_INTERVAL_NUM];
  BYTE        byRes[32];
}NET_DVR_MEASURESPEEDCFG, *LPNET_DVR_MEASURESPEEDCFG;

Members

dwSize
结构体大小
byTrigIo1
测速第1线圈，从1开始
byTrigIo2
测速第2线圈，从1开始
byRelatedDriveWay
触发IO关联的车道号，取值范围[0,9]
byTestSpeedTimeOut
测速模式超时时间，单位s，取值范围[0,255]
dwDistance
线圈距离，单位cm，取值范围[0,20000]
byCapSpeed
测速模式起拍速度，单位km/h，取值范围[0,255]
bySpeedLimit
限速值，单位km/h，取值范围[0,255]
bySnapTimes1
线圈1抓拍次数，0-不抓拍，非0-连拍次数，最大5次
bySnapTimes2
线圈2抓拍次数，0-不抓拍，非0-连拍次数，最大5次
wIntervalTime1
线圈1连拍间隔时间，单位ms，取值范围[67,20000]
wIntervalTime2
线圈2连拍间隔时间，单位ms，取值范围[67,20000]
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_MOD_LABEL_PARAM

标签修改结构体。

struct{
  NET_DVR_LABEL_IDENTIFY      struIndentify;
  BYTE                        byRes1[24];
  BYTE                        sLabelName[LABEL_NAME_LEN];
  BYTE                        byRes2[40];
}NET_DVR_MOD_LABEL_PARAM,*LPNET_DVR_MOD_LABEL_PARAM;

Members

struIndentify
要修改的标签标识
byRes1
保留
sLabelName
修改后的标签名称
byRes2
保留

See Also

NET_DVR_ModifyRecordLabel


NET_DVR_MOTION

移动侦测参数结构体。

struct{
  BYTE                       byMotionScope[18][22];
  BYTE                       byMotionSensitive;
  BYTE                       byEnableHandleMotion;
  BYTE                       reservedData[2];
  NET_DVR_HANDLEEXCEPTION    strMotionHandleType;
  NET_DVR_SCHEDTIME          struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT];
  BYTE                       byRelRecordChan[MAX_CHANNUM];
}NET_DVR_MOTION, *LPNET_DVR_MOTION;

Members

byMotionScope
移动侦测区域，共有22*18个小宏块，取值为1表示该宏块设定为移动侦测区域，0表示不设定为移动侦测区域
byMotionSensitive
移动侦测灵敏度，取值范围[0,5]，若取值为0xff表示关闭，值越大越灵敏
byEnableHandleMotion
是否处理移动侦测：0-不处理，1-处理
reservedData
保留，置为0
strMotionHandleType
处理方式
struAlarmTime
布防时间
byRelRecordChan
报警触发的录象通道，为1表示触发该通道

Remarks

整个图像的区域大小为704*576

See Also

NET_DVR_PICCFG_EX NET_DVR_PICCFG


NET_DVR_MOTION_V30

移动侦测参数结构体。

struct{
  BYTE                           byMotionScope[64][96];
  BYTE                           byMotionSensitive;
  BYTE                           byEnableHandleMotion;
  BYTE                           byRes;
  char                           reservedData;
  NET_DVR_HANDLEEXCEPTION_V30    strMotionHandleType;
  NET_DVR_SCHEDTIME              struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];
  BYTE                           byRelRecordChan[MAX_CHANNUM_V30];
}NET_DVR_MOTION_V30, *LPNET_DVR_MOTION_V30;

Members

byMotionScope
移动侦测区域，96×64的数组中,P制只有22×18有效，N制只有22×15有效，取值为1表示该宏块设定为移动侦测区域，0表示不设定为移动侦测区域；其他保留，置为0。
byMotionSensitive
移动侦测灵敏度，取值范围[0,5]，若取值为0xff表示关闭，值越大越灵敏
byEnableHandleMotion
是否处理移动侦测：0-不处理，1-处理
byRes
保留
reservedData
保留，置为0
strMotionHandleType
处理方式
struAlarmTime
布防时间
byRelRecordChan
报警触发的录象通道，为1表示触发该通道

Remarks

整个图像的区域大小P制为704×576，N制为704×480，即将704×576（或者704×480）的画面分割成22×18（或者22×15）个小宏块，然后可分别设置每个宏块是否为移动侦测区域。如果P制情况下，设备的图像大小不为704*576，比如高清设备1280*720，设置移动侦测时需要将画面缩小成704*576，然后设置移动侦测区域。

See Also

NET_DVR_PICCFG_V30


NET_DVR_NET_DISKCFG

网络硬盘参数结构体。

struct{
  DWORD                          dwSize;
  NET_DVR_SINGLE_NET_DISK_INFO   struNetDiskParam[MAX_NET_DISK];
}NET_DVR_NET_DISKCFG,*LPNET_DVR_NET_DISKCFG;

Members

dwSize
结构体大小
struNetDiskParam
单个网络硬盘参数

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_NETAPPCFG

网络应用参数（NTP/DDNS）结构体。

struct{
  DWORD               dwSize;
  char                sDNSIp[16];
  NET_DVR_NTPPARA     struNtpClientParam;
  NET_DVR_DDNSPARA    struDDNSClientParam;
  BYTE                res[464];
}NET_DVR_NETAPPCFG,*LPNET_DVR_NETAPPCFG;

Members

dwSize
结构体大小
sDNSIp
DNS服务器地址
struNtpClientParam
NTP参数
struDDNSClientParam
DDNS参数
res
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_NETCFG

网络配置结构体。

struct{
  DWORD                dwSize;
  NET_DVR_ETHERNET     struEtherNet[MAX_ETHERNET];
  char                 sManageHostIP[16];
  WORD                 wManageHostPort;
  char                 sIPServerIP[16];
  char                 sMultiCastIP[16];
  char                 sGatewayIP[16];
  char                 sNFSIP[16];
  BYTE                 sNFSDirectory[PATHNAME_LEN];
  DWORD                dwPPPOE;
  BYTE                 sPPPoEUser[NAME_LEN];
  char                 sPPPoEPassword[PASSWD_LEN];
  char                 sPPPoEIP[16];
  WORD                 wHttpPort;
}NET_DVR_NETCFG,*LPNET_DVR_NETCFG;

Members

dwSize
结构体大小
struEtherNet
以太网口
sManageHostIP
远程管理主机地址
wManageHostPort
远程管理主机端口号
sIPServerIP
IPServer服务器地址
sMultiCastIP
多播组地址
sGatewayIP
网关地址
sNFSIP
NFS主机IP地址
sNFSDirectory
NFS目录
dwPPPOE
0-不启用,1-启用
sPPPoEUser
PPPoE用户名
sPPPoEPassword
PPPoE密码
sPPPoEIP
PPPoE IP地址(只读)
wHttpPort
HTTP端口号

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_NETCFG_V30


NET_DVR_NETCFG_MULTI

多网卡网络配置结构。

struct{
  DWORD                    dwSize;
  BYTE                     byDefaultRoute;
  BYTE                     byNetworkCardNum;
  BYTE                     byRes[2];
  NET_DVR_ETHERNET_MULTI   struEtherNet[MAX_NETWORK_CARD];
  NET_DVR_IPADDR           struManageHost1IpAddr;
  NET_DVR_IPADDR           struManageHost2IpAddr;
  NET_DVR_IPADDR           struAlarmHostIpAddr;
  WORD                     wManageHost1Port;
  WORD                     wManageHost2Port;
  WORD                     wAlarmHostIpPort;
  BYTE                     byIpResolver[MAX_DOMAIN_NAME];
  WORD                     wIpResolverPort;
  WORD                     wDvrPort;
  WORD                     wHttpPortNo;
  BYTE                     byRes2[6];
  NET_DVR_IPADDR           struMulticastIpAddr;
  NET_DVR_PPPOECFG         struPPPoE;
  BYTE                     byRes3[24];
}NET_DVR_NETCFG_MULTI,*LPNET_DVR_NETCFG_MULTI;

Members

dwSize
结构体大小
byDefaultRoute
默认路由，0表示struEtherNet[0]，1表示struEtherNet[1]
byNetworkCardNum
设备实际可配置的网卡数目
byRes
保留，置为0
struEtherNet
以太网口
struManageHost1IpAddr
主管理主机IP地址
struManageHost2IpAddr
辅管理主机IP地址
struAlarmHostIpAddr
报警主机IP地址
wManageHost1Port
主管理主机端口号
wManageHost2Port
辅管理主机端口号
wAlarmHostIpPort
报警主机端口号
byIpResolver
IP解析服务器域名或IP地址
wIpResolverPort
IP解析服务器端口号
wDvrPort
通讯端口，默认8000
wHttpPortNo
HTTP端口号
byRes2
保留，置为0
struMulticastIpAddr
多播组地址
struPPPoE
PPPoE参数
byRes3
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_NETCFG_OTHER

多路解码器网络配置结构体。

struct{
  DWORD    dwSize;
  char     sFirstDNSIP[16];
  char     sSecondDNSIP[16];
  char     sRes[32];
}NET_DVR_NETCFG_OTHER,*LPNET_DVR_NETCFG_OTHER;

Members

dwSize
结构体大小
sFirstDNSIP
主DNS IP地址
sSecondDNSIP
辅助DNS IP地址
sRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_NETCFG_V30

网络配置结构体。

struct{
  DWORD                    dwSize;
  NET_DVR_ETHERNET_V30     struEtherNet[MAX_ETHERNET];
  NET_DVR_IPADDR           struRes1[2];
  NET_DVR_IPADDR           struAlarmHostIpAddr;
  WORD                     wRes2[2];
  WORD                     wAlarmHostIpPort;
  BYTE                     byUseDhcp;
  BYTE                     byRes3;
  NET_DVR_IPADDR           struDnsServer1IpAddr;
  NET_DVR_IPADDR           struDnsServer2IpAddr;
  BYTE                     byIpResolver[MAX_DOMAIN_NAME];
  WORD                     wIpResolverPort;
  WORD                     wHttpPortNo;
  NET_DVR_IPADDR           struMulticastIpAddr;
  NET_DVR_IPADDR           struGatewayIpAddr;
  NET_DVR_PPPOECFG         struPPPoE;
  BYTE                     byRes[64];
}NET_DVR_NETCFG_V30,*LPNET_DVR_NETCFG_V30;

Members

dwSize
结构体大小
struEtherNet
以太网口
struRes1
保留，置为0
struAlarmHostIpAddr
报警主机IP地址
wRes2
保留，置为0
wAlarmHostIpPort
报警主机端口号
byUseDhcp
是否启用DHCP：0xff-无效；0-不启用；1-启用
byRes3
保留，置为0
struDnsServer1IpAddr
域名服务器1的IP地址
struDnsServer2IpAddr
域名服务器2的IP地址
byIpResolver
IP解析服务器域名或IP地址（8000设备不支持域名）
wIpResolverPort
IP解析服务器端口号
wHttpPortNo
HTTP端口号
struMulticastIpAddr
多播组地址
struGatewayIpAddr
网关地址
struPPPoE
PPPoE参数
byRes
保留，置为0

Remarks

8000等3.0协议以下的设备，参数byUseDhcp为0xff-无效，将其IP地址填成空，设备会自动去获取DHCP。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_NETCFG


NET_DVR_NETWORK_BONDING

BONDING网卡配置结构体。

struct{
  DWORD                dwSize;
  BYTE                 byEnable;
  BYTE                 byNum;
  BYTE                 byRes1[2];
  NET_DVR_ONE_BONDING  struOneBond[MAX_BOND_NUM];
  BYTE                 byRes2[40];
}NET_DVR_NETWORK_BONDING,*LPNET_DVR_NETWORK_BONDING;

Members

dwSize
结构体大小
byEnable
是否启用bonding功能
byNum
Bonding网卡的个数
byRes1
保留
struOneBond
单BONDING网卡配置参数
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_NFSCFG

网络文件系统参数结构体。

struct{
  DWORD                   dwSize;
  NET_DVR_SINGLE_NFS      struNfsDiskParam[MAX_NFS_DISK];
}NET_DVR_NFSCFG, *LPNET_DVR_NFSCFG;

Members

dwSize
结构体大小
struNfsDiskParam
NFS配置子结构

Remarks

修改NFS各参数时需要重启设备才能生效。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_NOISEREMOVE

数字降噪功能参数结构体。

struct{
  BYTE       byDigitalNoiseRemoveEnable;
  BYTE       byDigitalNoiseRemoveLevel;
  BYTE       bySpectralLevel;
  BYTE       byTemporalLevel;
  BYTE       byRes[4];
}NET_DVR_NOISEREMOVE, *LPNET_DVR_NOISEREMOVE;

Members

byDigitalNoiseRemoveEnable
数字去噪是否启用，0-不启用，1-普通模式数字降噪，2-专家模式数字降噪
byDigitalNoiseRemoveLevel
普通模式数字降噪级别：0x0-0xF
bySpectralLevel
专家模式下空域强度：0-100
byTemporalLevel
专家模式下时域强度：0-100
byRes
保留，置为0

See Also

NET_DVR_CAMERAPARAMCFG


NET_DVR_NTPPARA

网络应用参数（NTP）结构体。

struct{
  BYTE           sNTPServer[64];
  WORD           wInterval;
  BYTE           byEnableNTP;
  signed char    cTimeDifferenceH;
  signed char    cTimeDifferenceM;
  BYTE           res1;
  WORD           wNtpPort;
  BYTE           res2[8];
}NET_DVR_NTPPARA,*LPNET_DVR_NTPPARA;

Members

sNTPServer
NTP服务器域名或者IP地址
wInterval
校时间隔时间（以小时为单位）
byEnableNTP
NTP校时是否启用：0－否，1－是
cTimeDifferenceH
与国际标准时间的时差（小时），-12 ... +13
cTimeDifferenceM
与国际标准时间的时差（分钟），0, 30, 45
res1
保留，置为0
wNtpPort
NTP服务器端口，设备默认为123
res2
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_ONE_AID_RULE

单条交通事件规则结构体。

struct{
  BYTE                          byEnable;
  BYTE                          byRes1[3];
  BYTE                          byRuleName[NAME_LEN];
  DWORD                         dwEventType;
  NET_VCA_SIZE_FILTER           struSizeFilter;
  NET_VCA_POLYGON               struPolygon;
  NET_DVR_AID_PARAM             struAIDParam;
  NET_DVR_SCHEDTIME             struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_2];
  NET_DVR_HANDLEEXCEPTION_V30   struHandleType;
  BYTE                          byRelRecordChan[MAX_CHANNUM_V30];
}NET_DVR_ONE_AID_RULE,*LPNET_DVR_ONE_AID_RULE;

Members

byEnable
是否启用事件规则：0-否；非0-是
byRes1
保留，置为0
byRuleName
规则名称
dwEventType
交通事件检测类型，具体定义见下表：
enum _TRAFFIC_AID_TYPE_{
  CONGESTION   = 0x1,
  PARKING      = 0x2,
  INVERSE      = 0x4,
  PEDESTRIAN   = 0x8,
  DEBRIS       = 0x10,
  SMOG         = 0x20,
}TRAFFIC_AID_TYPE
CONGESTION
拥堵
PARKING
停车
INVERSE
逆行
PEDESTRIAN
行人
DEBRIS
遗留物，抛洒物碎片
SMOG
烟雾
struSizeFilter
尺寸过滤器
struPolygon
规则区域
struAIDParam
交通事件参数
struAlarmTime
布防时间
struHandleType
处理方式
byRelRecordChan
报警触发的录象通道：1表示触发该通道；0表示不触发

See Also

NET_DVR_AID_RULECFG


NET_DVR_ONE_BONDING

单BONDING网卡配置结构体。

struct{
  BYTE                 byMode;
  BYTE                 byUseDhcp;
  BYTE                 byMasterCard;
  BYTE                 byStatus;
  BYTE                 byBond[MAX_NETWORK_CARD];
  NET_DVR_ETHERNET_V30 struEtherNet;
  NET_DVR_IPADDR       struGatewayIpAddr;
  BYTE                 byRes[20];
}NET_DVR_ONE_BONDING,*LPNET_DVR_ONE_BONDING;

Members

byMode
工作模式：0 - 网络容错，1 - 负载均衡
byUseDhcp
是否使能dhcp
byMasterCard
指定哪张网卡为主网卡
byStatus
BONDING的状态：0 - 异常，1-正常，只能获取不能设置
byBond
byBond[0]== 1 表示使用eh0，0表示不使用eh0
struEtherNet
网卡参数
struGatewayIpAddr
网关地址
byRes
保留

See Also

NET_DVR_NETWORK_BONDING


NET_DVR_ONE_LANE

单条车道规则配置。

struct{
  BYTE                  byEnable;
  BYTE                  byRes1[11];
  BYTE                  byLaneName[NAME_LEN];
  NET_DVR_DIRECTION     struFlowDirection;
  NET_VCA_POLYGON       struPolygon;
}NET_DVR_ONE_LANE, *LPNET_DVR_ONE_LANE;

Members

byEnable
车道是否启用
byRes1
保留
byLaneName
车道规则名称
struFlowDirection
车道内车流方向
struPolygon
车道区域

See Also

NET_DVR_LANE_CFG


NET_DVR_ONE_LINK

连接的客户端信息结构体。

struct{
  NET_DVR_IPADDR     struIP;
  LONG               lChannel;
  BYTE               byRes[32];
}NET_DVR_ONE_LINK, *LPNET_DVR_ONE_LINK;

Members

struIP
客户端IP
Channel
通道号
byRes
保留

See Also

NET_DVR_LINK_STATUS


NET_DVR_ONE_TPS_RULE

单条交通事件规则结构体。

struct{
  BYTE                          byEnable;
  BYTE                          byLaneID;
  BYTE                          byRes1[2];
  DWORD                         dwCalcType;
  NET_VCA_SIZE_FILTER           struSizeFilter;
  NET_VCA_POLYGON               struVitrualLoop;
  NET_DVR_SCHEDTIME             struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_2];
  NET_DVR_HANDLEEXCEPTION_V30   struHandleType;
  BYTE                          byRes2[20];
}NET_DVR_ONE_TPS_RULE,*LPNET_DVR_ONE_TPS_RULE;

Members

byEnable
是否启用车道交通规则
byLaneID
车道ID
byRes1
保留，置为0
dwCalcType
统计参数类型
enum _ITS_TPS_TYPE_{
  LANE_VOLUME             = 0x1,
  LANE_VELOCITY           = 0x2,
  TIME_HEADWAY            = 0x4,
  SPACE_HEADWAY           = 0x8,
  TIME_OCCUPANCY_RATIO    = 0x10,
  SPACE_OCCUPANCY_RATIO   = 0x20,
  QUEUE                   = 0x40
}ITS_TPS_TYPE
LANE_VOLUME
车道流量
LANE_VELOCITY
车道速度
TIME_HEADWAY
车头时距
SPACE_HEADWAY
车头间距
TIME_OCCUPANCY_RATIO
车道占有率(时间上)
SPACE_OCCUPANCY_RATIO
车道占有率，百分比计算(空间上)
QUEUE
排队长度
struSizeFilter
尺寸过滤器
struVitrualLoop
虚拟线圈，类似于地感线圈，在实际场景中大于车子一半小于车子大小最适合
struAlarmTime
布防时间
struHandleType
处理方式。一般为处理是否上传中心，其他功能不需要
byRes2
保留，置为0

See Also

NET_DVR_TPS_RULECFG


NET_DVR_OPERATE_ARRAY_PARAM

阵列操作参数结构体。

struct{
  BYTE   byRaidMode;
  BYTE   byPDCount;
  WORD   wArrayID;
  WORD   wPDSlots[SUPPORT_PD_NUM];
  BYTE   byName[MAX_NAMELEN];
  BYTE   byInitMode;
  BYTE   byRes2[19];
}NET_DVR_OPERATE_ARRAY_PARAM, *LPNET_DVR_OPERATE_ARRAY_PARAM;

Members

byRaidMode
创建/迁移时RAID的类型
byPDCount
物理磁盘数目
wArrayID
迁移/重建时的阵列ID
wPDSlots
物理磁盘的槽位号
byName
阵列名称
byInitMode
初始化化方式: 0- 快速初始化，1- 完全初始化(前台)，2- 完全初始化(后台)，3- 不初始化
byRes2
保留，置为0

Remarks

byInitMode可以取哪些值，由Raid能力集获取。

See Also

NET_DVR_CalcArraySize NET_DVR_CreateArray

NET_DVR_MigrateArray NET_DVR_RebuildArray


NET_DVR_OPERATE_USER

操作用户配置结构体。

struct{
  DWORD              dwSize;
  BYTE               sUserName[NAME_LEN];
  BYTE               sPassword[PASSWD_LEN];
  BYTE               byAlarmOnArea[MAX_ALARMHOST_ALARMIN_NUM];
  BYTE               byAlarmOffArea[MAX_ALARMHOST_ALARMIN_NUM];
  BYTE               byBypassArea[MAX_ALARMHOST_ALARMIN_NUM];
  BYTE               byRes[560];
}NET_DVR_OPERATE_USER,*LPNET_DVR_OPERATE_USER;

Members

dwSize
结构体大小
sUserName
用户名
sPassword
密码
byAlarmOnArea
防区布防权限，按数组下标表示，值为0- 无权限，1- 有权限。最大支持512个防区。
byAlarmOffArea
防区撤防权限，按数组下标表示，值为0- 无权限，1- 有权限。最大支持512个防区。
byBypassArea
防区旁路权限，按数组下标表示，值为0- 无权限，1- 有权限。最大支持512个防区。
byRes
保留

See Also

NET_DVR_GetOperateUser NET_DVR_SetOperateUser


NET_DVR_OPERATE_VD_PARAM

虚拟磁盘参数结构体。

struct{
  WORD   wArrayID;
  BYTE   bySlot;
  BYTE   byRes1;
  WORD   dwHCapacity;
  BYTE   dwLCapacity;
  BYTE   byName[MAX_NAMELEN];
  BYTE   byRes2[16];
}NET_DVR_OPERATE_VD_PARAM, *LPNET_DVR_OPERATE_VD_PARAM;

Members

wArrayID
阵列ID
bySlot
创建虚拟磁盘指定槽位
byRes1
保留
dwHCapacity
虚拟磁盘大小高32位
dwLCapacity
虚拟磁盘大小低32位
byName
虚拟磁盘名称
byRes2
保留，置为0

See Also

NET_DVR_CreateVD


NET_DVR_OSD_POSITION

OSD叠加位置信息结构体。

struct{
  BYTE      byPositionMode;
  BYTE      byRes1[3];
  DWORD     dwPosX;
  DWORD     dwPosY;
  BYTE      byRes2[8];
}NET_DVR_OSD_POSITION, *NET_DVR_OSD_POSITION;

Members

byPositionMode
叠加风格，0-不显示；1-自定义
byRes1
保留
dwPosX
x坐标，叠加风格为自定义时使用
dwPosY
y坐标，叠加风格为自定义时使用
byRes2
保留

See Also

NET_DVR_ATM_PACKAGE_ACTION NET_DVR_ATM_PACKAGE_DATE

NET_DVR_ATM_PACKAGE_OTHERS NET_DVR_ATM_PACKAGE_TIME


NET_DVR_OSDCFG

OSD参数结构体。

struct{
  DWORD            dwSize;
  BYTE             byValid;
  BYTE             byDispMode;
  unsigned char    uByFontColor_y;
  unsigned char    uByFontColor_u;
  unsigned char    uByFontColor_v;
  unsigned char    uByBackColor_y;
  unsigned char    uByBackColor_u;
  unsigned char    uByBackColor_v;
  WORD             wXCoordinate;
  WORD             wYCoordinate;
  WORD             wWidth;
  WORD             wHeight;
  DWORD            dwCharCnt;
  WORD             wOSDChar[MAX_OSDCHAR_NUM];
  BYTE             byRes[32];
}NET_DVR_OSDCFG,*LPNET_DVR_OSDCFG;

Members

dwSize
结构体大小
byValid
是否有效：0- 无效，1- 有效
byDispMode
显示模式：1- 透明，2- 半透明，3- 覆盖三种模式
uByFontColor_y
字体颜色Y，取值范围：0~255
uByFontColor_u
字体颜色U，取值范围：0~255
uByFontColor_v
字体颜色V，取值范围：0~255
uByBackColor_y
背景颜色Y，取值范围：0~255
uByBackColor_u
背景颜色U，取值范围：0~255
uByBackColor_v
背景颜色V，取值范围：0~255
wXCoordinate
OSD在屏幕左上角位置x
wYCoordinate
OSD在屏幕左上角位置y
wWidth
OSD宽度
wHeight
OSD高度
dwCharCnt
字符的个数
wOSDChar
OSD字符内容
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_OUTPUTCFG

输出通道配置结构体。

struct{
  DWORD                 dwSize;
  BYTE                  byScreenLayX;
  BYTE                  byScreenLayY;
  DWORD                 byRes1[6];
  NET_DVR_OUTPUTPARAM   struOutputParam;
  BYTE                  byRes2[24];
}NET_DVR_OUTPUTCFG, *LPNET_DVR_OUTPUTCFG;

Members

dwSize
结构体大小
byScreenLayX
大屏布局-横坐标
byScreenLayY
大屏布局-纵坐标
byRes1
保留
struOutputParam
输出通道视频参数配置
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_OUTPUTPARAM

输出通道视频参数结构体。

struct{
  DWORD                 dwSize;
  BYTE                  byMonMode;
  BYTE                  byRes1[3];
  DWORD                 dwResolution;
  NET_DVR_VIDEOEFFECT   struVideoEffect;
  BYTE                  byRes2[32];
}NET_DVR_OUTPUTPARAM, *LPNET_DVR_OUTPUTPARAM;

Members

dwSize
结构体大小
byMonMode
输出连接模式：1- BNC，2- VGA，3- DVI，4- HDMI
byRes1
保留
dwResolution
分辨率，根据能力集获取所支持的值进行设置
struVideoEffect
输出通道视频参数配置
byRes2
保留

See Also

NET_DVR_OUTPUTCFG


NET_DVR_OVERLAY_CHANNEL

ATM叠加通道信息结构体。

struct{
  BYTE    byChannel[64];
  DWORD   dwDelayTime;
  BYTE    byEnableDelayTime;
  BYTE    byRes[11];
}NET_DVR_OVERLAY_CHANNEL, *LPNET_DVR_OVERLAY_CHANNEL;

Members

byChannel
是否叠加的通道，每个字节标识一个通道， 例如byChannel[0]值为1对应叠加通道1，0对应不叠加通道1
dwDelayTime
叠加延时时间
byEnableDelayTime
是否启用叠加延时
byRes
保留

See Also

NET_DVR_ATM_USER_DEFINE_PROTOCOL


NET_DVR_PACKAGE_LENGTH

ATM报文长度信息结构体。

struct{
  BYTE                      byLengthMode;
  BYTE                      byRes1[3];
  DWORD                     dwFixLength;
  DWORD                     dwMaxLength;
  DWORD                     dwMinLength;
  BYTE                      byEndMode;
  BYTE                      byRes2[3];
  NET_DVR_FRAMETYPECODE     struEndCode;
  DWORD                     dwLengthPos;
  DWORD                     dwLengthLen;
  BYTE                      byRes3[8];
}NET_DVR_PACKAGE_LENGTH,* LPNET_DVR_PACKAGE_LENGTH;

Members

byLengthMode
长度类型，0-可变长度；1-固定长度；2-自主长度（从卡号中获取）
byRes1
保留
dwFixLength
固定长度大小，长度类型为1的时候使用
dwMaxLength
报文信息最大长度，长度类型为0时使用
dwMinLength
报文信息最小长度，长度类型为0时使用
byEndMode
可变长度下的终结符模式，0-ASCII；1-HEX
byRes2
保留
struEndCode
终结符
dwLengthPos
卡号长度在报文中的位置， 长度类型为2的时候使用
dwLengthLen
卡号长度的长度， 长度类型为2的时候使用
byRes3
保留

See Also

NET_DVR_ATM_PACKAGE_OTHERS


NET_DVR_PACKAGE_LOCATION

ATM报文位置信息结构体。

struct{
  BYTE                      byOffsetMode;
  BYTE                      byRes1[3];
  DWORD                     dwOffsetPos;
  NET_DVR_FRAMETYPECODE     struTokenCode;
  BYTE                      byMultiplierValue;
  BYTE                      byEternOffset;
  BYTE                      byCodeMode;
  BYTE                      byRes2[9];
}NET_DVR_PACKAGE_LOCATION, *LPNET_DVR_PACKAGE_LOCATION;

Members

byOffsetMode
报文位置信息模式，0-token（字符标志模式）；1-fix（固定模式）
byRes1
保留
dwOffsetPos
固定偏移量大小，固定模式时使用
struTokenCode
标志位字符
byMultiplierValue
标志位出现的次数
byEternOffset
附加的偏移量
byCodeMode
字符模式，0-ASCII；1-HEX
byRes2
保留

See Also

NET_DVR_ATM_PACKAGE_ACTION NET_DVR_ATM_PACKAGE_DATE

NET_DVR_ATM_PACKAGE_OTHERS NET_DVR_ATM_PACKAGE_TIME


NET_DVR_PASSIVEDECODE_CONTROL

解码器播放控制参数。

struct{
  DWORD    dwSize;
  DWORD    dwPlayCmd;
  DWORD    dwCmdParam;
  BYTE     byRes[16];
}NET_DVR_PASSIVEDECODE_CONTROL,*LPNET_DVR_PASSIVEDECODE_CONTROL;

Members

dwSize
结构体大小
dwPlayCmd
解码器播放控制状态命令，见下表
宏定义 | 宏定义值 | 含义
PASSIVE_DEC_PAUSE | 1 | 被动解码暂停（仅对文件流有效）
PASSIVE_DEC_RESUME | 2 | 恢复被动解码（仅对文件流有效）
PASSIVE_DEC_FAST | 3 | 快速被动解码（仅对文件流有效）
PASSIVE_DEC_SLOW | 4 | 慢速被动解码（仅对文件流有效）
PASSIVE_DEC_NORMAL | 5 | 正常被动解码（仅对文件流有效）
PASSIVE_DEC_ONEBYONE | 6 | 被动解码单帧播放（保留）
PASSIVE_DEC_AUDIO_ON | 7 | 音频开启
PASSIVE_DEC_AUDIO_OFF | 8 | 音频关闭
PASSIVE_DEC_RESETBUFFER | 9 | 清空缓冲区
dwCmdParam
被动解码控制参数
byRes
保留

Remarks

该结构中的第三个参数是否需要输入数值与控制命令有关。

See Also

NET_DVR_MatrixPassiveDecodeControl


NET_DVR_PATROL_SCENE_INFO

单个场景巡航路径配置结构。

struct{
  WORD   wDwell;
  BYTE   byPositionID;
  BYTE   byRes[5];
}NET_DVR_PATROL_SCENE_INFO, *LPNET_DVR_PATROL_SCENE_INFO;

Members

wDwell
停留时间，范围[30,300]
byPositionID
场景号从1到10，默认0表示该巡航点不添加场景
byRes2
保留

See Also

NET_DVR_PATROL_TRACKCFG


NET_DVR_PATROL_TRACKCFG

场景巡航路径配置结构。

struct{
  DWORD                       dwSize;
  NET_DVR_PATROL_SCENE_INFO   struPatrolSceneInfo[10];
  BYTE                        byRes[16];
}NET_DVR_PATROL_TRACKCFG, *LPNET_DVR_PATROL_TRACKCFG;

Members

dwSize
结构体大小
struPatrolSceneInfo
巡航路径
byRes2
保留

See Also

NET_DVR_GetPatrolTrack NET_DVR_SetPatrolTrack


NET_DVR_PDC_ALRAM_INFO

人流量统计结果参数结构体。

struct{
  DWORD                    dwSize;
  BYTE                     byMode;
  BYTE                     byChannel;
  BYTE                     byRes1[2];
  NET_VCA_DEV_INFO         struDevInfo;
  union{
           struct{
           DWORD           dwRelativeTime;
           DWORD           dwAbsTime;
           BYTE            byRes[92];
           }struStatFrame;
           struct{
           NET_DVR_TIME    tmStart;
           NET_DVR_TIME    tmEnd;
           BYTE            byRes[92];
           }struStatTime;
  }uStatModeParam;
  DWORD                    dwLeaveNum;
  BYTE                     dwEnterNum;
  BYTE                     byRes2[40];
}NET_DVR_PDC_ALRAM_INFO,*LPNET_DVR_PDC_ALRAM_INFO;

Members

dwSize
结构体大小
byMode
0-单帧统计结果，1-最小时间段统计结果
byChannel
报警上传通道号
byRes1
保留
struDevInfo
前端设备信息
struStatFrame结构为单帧统计参数
dwRelativeTime
统计相对时标
dwAbsTime
统计绝对时标
byRes
保留
struStatTime结构为最小时间段参数
tmStart
统计开始时间
tmEnd
统计结束时间
byRes
保留
dwLeaveNum
离开人数
dwEnterNum
进入人数
byRes2
保留

See Also

NET_DVR_SetDVRMessageCallBack_V30 NET_DVR_StartListen_V30


NET_DVR_PDC_CALIBRATION

人流量统计标定参数结构体。

struct{
  NET_DVR_RECT_LIST    struRectList;
  BYTE                 byRes[120];
}NET_DVR_PDC_CALIBRATION, *LPNET_DVR_PDC_CALIBRATION;

Members

struRectList
标定矩形框参数列表
byRes
保留

See Also

NET_DVR_CALIBRATION_PRARM_UNION


NET_DVR_PDC_ENTER_DIRECTION

流量统计方向参数结构体。

struct{
  NET_VCA_POINT    struStartPoint;
  NET_VCA_POINT    struEndPoint;
}NET_DVR_PDC_ENTER_DIRECTION, *LPNET_DVR_PDC_ENTER_DIRECTION;

Members

struStartPoint
起始点参数
struEndPoint
终止点参数

See Also

NET_DVR_PDC_RULE_CFG


NET_DVR_PDC_QUERY

人流量统计信息结构体。

struct{
  NET_DVR_TIME     tmStart;
  NET_DVR_TIME     tmEnd;
  DWORD            dwLeaveNum;
  DWORD            dwEnterNum;
  BYTE             byRes1[256];
}NET_DVR_PDC_QUERY, *LPNET_DVR_PDC_QUERY;

Members

tmStart
统计开始时间
tmEnd
统计结束时间
dwLeaveNum
离开人数
dwEnterNum
进入人数
byRes1
保留

See Also

NET_DVR_FindNextPDCInfo


NET_DVR_PDC_RULE_CFG

人流量规则配置参数结构体。

struct{
  DWORD                          dwSize;
  BYTE                           byEnable;
  BYTE                           byRes1[23];
  NET_VCA_POLYGON                struPolygon;
  NET_DVR_PDC_ENTER_DIRECTION    struEnterDirection;
}NET_DVR_PDC_RULE_CFG, *LPNET_DVR_PDC_RULE_CFG;

Members

dwSize
结构体大小
byEnable
是否激活规则，0-不启用，1-启用
byRes1
保留
struPolygon
规则多边形参数
struEnterDirection
流量进入方向

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_PHONECENTERDIALCFG

中心参数配置结构体。

struct{
  BYTE             sCenterName[NAME_LEN];
  BYTE             byPhoneNum[MAX_PHONE_NUM];
  BYTE             byRepeatCall;
  BYTE             byPstnProtocol;
  BYTE             byDialDelay;
  BYTE             byPstnTransMode;
  BYTE             byRes1[6];
  BYTE             byReceiverId[6];
  BYTE             byRes2[32];
}NET_DVR_PHONECENTERDIALCFG, *LPNET_DVR_PHONECENTERDIALCFG;

Members

sCenterName
中心名称
byPhoneNum
拨号号码
byRepeatCall
重复拨号次数，取值范围：1~15次
byPstnProtocol
通信协议：0- CID
byDialDelay
拨号延时， 取值范围：0~150s
byPstnTransMode
传输方式：0- DTMF 5/S，1- DTMF 10/S
byRes1
保留
byReceiverId
接收机识别账号
byRes2
保留

See Also

NET_DVR_ALARMHOSTDIALCFG


NET_DVR_PHONECFG

电话配置结构体。

struct{
  BYTE      byWhiteList[MAX_PHONE_NUM];
  BYTE      byPhonePerssion[32];
  BYTE      byAlarmHandler[32];
  BYTE      byRes[128];
}NET_DVR_PHONECFG,*LPNET_DVR_PHONECFG;

Members

byWhiteList
白名单号码
byPhonePerssion
是否使能该号码的某功能，按字节表示：
0x0: 支持接收报警短信
0x1: 支持短信控制上下线
0x2: 支持呼叫控制上线
byAlarmHandler
是否使能对某个报警类型的短信发送,按字节表示: 0x0: 硬盘满
0x1: 硬盘错
0x2: 网线断
0x3: IP地址冲突
0x4: 非法访问
0x5: 视频信号异常
0x6: 输入/输出视频制式不匹配
0x7: 视频无信号
0x8: 音频无信号
0x9: 报警输入
0xa: 遮挡报警
0xb: 移动侦测
0xc: 录像异常
byRes
保留，置为0

See Also

NET_DVR_SMSRELATIVEPARAM


NET_DVR_PHY_DISK_INFO

单个物理磁盘参数结构体。

struct{
  WORD    wPhySlot;
  BYTE    byType;
  BYTE    byStatus;
  BYTE    byMode[40];
  DWORD   dwHCapacity;
  DWORD   dwLCapacity;
  BYTE    byArrrayName[MAX_NAMELEN];
  WORD    wArrayID;
  BYTE    byRes[102];
}NET_DVR_PHY_DISK_INFO, *LPNET_DVR_PHY_DISK_INFO;

Members

wPhySlot
硬盘槽位
byType
硬盘信息：0-普通，1-全局热备，2-阵列热备
byStatus
硬盘状态：1-正常
byMode
硬盘类型（字符串）
dwHCapacity
磁盘总量高32位(单位kb)
dwLCapacity
磁盘总量低32位
wArrayID
所属阵列ID
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_PHY_DISK_LIST

物理磁盘参数结构体。

struct{
  DWORD                    dwSize;
  DWORD                    dwCount;
  NET_DVR_PHY_DISK_INFO    struPhyDiskInfo[SUPPORT_PD_NUM];
}NET_DVR_PHY_DISK_LIST, *LPNET_DVR_PHY_DISK_LIST;

Members

dwSize
结构体大小
dwCount
物理磁盘个数
struPhyDiskInfo
单个物理磁盘信息

See Also

NET_DVR_GetPDList


NET_DVR_PICCFG

通道图像结构体。

struct{
  DWORD                    dwSize;
  BYTE                     sChanName[NAME_LEN];
  DWORD                    dwVideoFormat;
  BYTE                     byRes[4];
  DWORD                    dwShowChanName;
  WORD                     wShowNameTopLeftX;
  WORD                     wShowNameTopLeftY;
  NET_DVR_VILOST           struVILost;
  NET_DVR_MOTION           struMotion;
  NET_DVR_HIDEALARM        struHideAlarm;
  DWORD                    dwEnableHide;
  WORD                     wHideAreaTopLeftX;
  WORD                     wHideAreaTopLeftY;
  WORD                     wHideAreaWidth;
  WORD                     wHideAreaHeight;
  DWORD                    dwShowOsd;
  WORD                     wOSDTopLeftX;
  WORD                     wOSDTopLeftY;
  BYTE                     byOSDType;
  BYTE                     byDispWeek;
  BYTE                     byOSDAttrib;
  char                     reservedData2;
}NET_DVR_PICCFG,*LPNET_DVR_PICCFG;

Members

dwSize
结构体大小
sChanName
通道名称
dwVideoFormat
视频制式：1-NTSC；2-PAL
byRes
保留
dwShowChanName
预览的图象上是否显示通道名称：0-不显示，1-显示（区域大小704*576）
wShowNameTopLeftX
通道名称显示位置的x坐标
wShowNameTopLeftY
通道名称显示位置的y坐标
struVILost
信号丢失报警参数
struMotion
移动侦测报警参数
struHideAlarm
遮挡报警参数
dwEnableHide
是否启动遮挡：0-否，1-是
wHideAreaTopLeftX
遮挡区域的x坐标
wHideAreaTopLeftY
遮挡区域的y坐标
wHideAreaWidth
遮挡区域的宽
wHideAreaHeight
遮挡区域的高
dwShowOsd
预览的图象上是否显示OSD：0-不显示，1-显示（区域大小704*576）
wOSDTopLeftX
OSD的x坐标
wOSDTopLeftY
OSD的y坐标
byOSDType
OSD类型(年月日格式)：
0－XXXX-XX-XX 年月日
1－XX-XX-XXXX 月日年
2－XXXX年XX月XX日
3－XX月XX日XXXX年
4－XX-XX-XXXX 日月年
5－XX日XX月XXXX年
byDispWeek
是否显示星期：0-不显示，1-显示
byOSDAttrib
OSD属性（透明/闪烁）：
1－透明，闪烁
2－透明，不闪烁
3－闪烁，不透明
4－不透明，不闪烁
reservedData2
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_PICCFG_V30


NET_DVR_PICCFG_EX

通道图像结构体。

struct{
  DWORD                    dwSize;
  BYTE                     sChanName[NAME_LEN];
  DWORD                    dwVideoFormat;
  BYTE                     byRes[4];
  DWORD                    dwShowChanName;
  WORD                     wShowNameTopLeftX;
  WORD                     wShowNameTopLeftY;
  NET_DVR_VILOST           struVILost;
  NET_DVR_MOTION           struMotion;
  NET_DVR_HIDEALARM        struHideAlarm;
  DWORD                    dwEnableHide;
  NET_DVR_SHELTER          struShelter[MAX_SHELTERNUM];
  DWORD                    dwShowOsd;
  WORD                     wOSDTopLeftX;
  WORD                     wOSDTopLeftY;
  BYTE                     byOSDType;
  BYTE                     byDispWeek;
  BYTE                     byOSDAttrib;
  BYTE                     byHourOsdType;
}NET_DVR_PICCFG_EX,*LPNET_DVR_PICCFG_EX;

Members

dwSize
结构体大小
sChanName
通道名称
dwVideoFormat
视频制式：1-NTSC；2-PAL
byRes
保留
byContrast
预览的图象上是否显示通道名称：0-不显示，1-显示（区域大小704*576）
wShowNameTopLeftX
通道名称显示位置的x坐标
wShowNameTopLeftY
通道名称显示位置的y坐标
struVILost
信号丢失报警参数
struMotion
移动侦测报警参数
struHideAlarm
遮挡报警参数
dwEnableHide
是否启动遮挡：0-否，1-是
struShelter
遮挡区域参数
dwShowOsd
预览的图象上是否显示OSD：0-不显示，1-显示（区域大小704*576）
wOSDTopLeftX
OSD的x坐标
wOSDTopLeftY
OSD的y坐标
byOSDType
OSD类型(年月日格式)：
0－XXXX-XX-XX 年月日
1－XX-XX-XXXX 月日年
2－XXXX年XX月XX日
3－XX月XX日XXXX年
4－XX-XX-XXXX 日月年
5－XX日XX月XXXX年
byDispWeek
是否显示星期：0-不显示，1-显示
byOSDAttrib
OSD属性（透明/闪烁）：
1－透明，闪烁
2－透明，不闪烁
3－闪烁，不透明
4－不透明，不闪烁
byHourOsdType
小时制：0表示24小时制，1表示12小时制或am/pm

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_PICCFG_V30


NET_DVR_PICCFG_V30

通道图像结构体。

struct{
  DWORD                    dwSize;
  BYTE                     sChanName[NAME_LEN];
  DWORD                    dwVideoFormat;
  char                     reservedData[64];
  DWORD                    dwShowChanName;
  WORD                     wShowNameTopLeftX;
  WORD                     wShowNameTopLeftY;
  NET_DVR_VILOST_V30       struVILost;
  NET_DVR_VILOST_V30       struRes;
  NET_DVR_MOTION_V30       struMotion;
  NET_DVR_HIDEALARM_V30    struHideAlarm;
  DWORD                    dwEnableHide;
  NET_DVR_SHELTER          struShelter[MAX_SHELTERNUM];
  DWORD                    dwShowOsd;
  WORD                     wOSDTopLeftX;
  WORD                     wOSDTopLeftY;
  BYTE                     byOSDType;
  BYTE                     byDispWeek;
  BYTE                     byOSDAttrib;
  BYTE                     byHourOsdType;
  BYTE                     byFontSize;
  BYTE                     byRes[63];
}NET_DVR_PICCFG_V30,*LPNET_DVR_PICCFG_V30;

Members

dwSize
结构体大小
sChanName
通道名称
dwVideoFormat
视频制式：1-NTSC，2-PAL
reservedData
保留，置为0
dwShowChanName
预览的图象上是否显示通道名称：0-不显示，1-显示（区域大小704*576）
wShowNameTopLeftX
通道名称显示位置的x坐标
wShowNameTopLeftY
通道名称显示位置的y坐标
struVILost
视频信号丢失报警参数
struRes
保留，置为0
struMotion
移动侦测报警参数
struHideAlarm
遮挡报警参数
dwEnableHide
是否启动遮挡：0-否，1-是
struShelter
遮挡区域参数
dwShowOsd
预览的图象上是否显示OSD：0-不显示，1-显示（区域大小704*576）
wOSDTopLeftX
OSD的x坐标
wOSDTopLeftY
OSD的y坐标
byOSDType
OSD类型(年月日格式)：
0－XXXX-XX-XX 年月日
1－XX-XX-XXXX 月日年
2－XXXX年XX月XX日
3－XX月XX日XXXX年
4－XX-XX-XXXX 日月年
5－XX日XX月XXXX年
byDispWeek
是否显示星期：0-不显示，1-显示
byOSDAttrib
OSD属性（透明/闪烁）：
1－透明，闪烁
2－透明，不闪烁
3－闪烁，不透明
4－不透明，不闪烁
byHourOsdType
小时制：0表示24小时制，1表示12小时制或am/pm
byFontSize
字体大小：0- 小，1- 中，2- 大，仅91系列HD-SDI高清DVR支持
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_PICCFG_EX


NET_DVR_PICTURE_NAME

图片命名规则。

struct{
  BYTE      byItemOrder[PICNAME_MAXITEM];
  BYTE      byDelimiter;
}NET_DVR_PICTURE_NAME, *LPNET_DVR_PICTURE_NAME;

Members

byItemOrder
按数组定义文件命名的规则，每个元素取值见上传的相关元素的定义：
宏定义 | 宏定义值 | 含义
PICNAME_ITEM_DEV_NAME | 1 | 设备名
PICNAME_ITEM_DEV_NO | 2 | 设备号
PICNAME_ITEM_DEV_IP | 3 | 设备IP
PICNAME_ITEM_CHAN_NAME | 4 | 通道名
PICNAME_ITEM_CHAN_NO | 5 | 通道号
PICNAME_ITEM_TIME | 6 | 时间
PICNAME_ITEM_CARDNO | 7 | 卡号
PICNAME_ITEM_PLATE_NO | 8 | 车牌号码
PICNAME_ITEM_PLATE_COLOR | 9 | 车牌颜色
PICNAME_ITEM_CAR_CHAN | 10 | 车道号
PICNAME_ITEM_CAR_SPEED | 11 | 车辆速度
PICNAME_ITEM_CARCHAN | 12 | 监测点
PICNAME_MAXITEM | 15 | 最大命名项数目（仅iDS-65xx支持）
byDelimiter
分隔符，“_”“-”“+”“=”“.”，一般为'_'

See Also

NET_DVR_JPEGCFG_V30


NET_DVR_PICTURECFG

图片参数结构体。

struct{
  DWORD                  dwSize;
  BYTE                   byUseType;
  BYTE                   byRes[3];
  NET_DVR_BASEMAP_CFG    struBasemapCfg;
  BYTE                   byRes2[64];
}NET_DVR_PICTURECFG,*LPNET_DVR_PICTURECFG;

Members

dwSize
结构体大小
byUseType
1- 图片当底图使用
byRes
保留
struBasemapCfg
底图参数
byRes2
保留

See Also

NET_DVR_PicUpload


NET_DVR_PICTUREINFO

图片信息结构体。

struct{
  DWORD       dwSize;
  BYTE        byChanIndex;
  BYTE        byRes1[3];
  BYTE        byDeviceID[NAME_LEN];
  BYTE        byAbsTime[32];
  DWORD       dwPicLen;
  BYTE        byRes2[32];
  BYTE        *pPicBuffer;
}NET_DVR_PICTUREINFO,*LPNET_DVR_PICTUREINFO;

Members

dwSize
结构体大小
byChanIndex
通道号
byRes1
保留，置为0
byDeviceID
设备的ID串
byAbsTime
绝对时间点，精确到毫秒，yyyymmddhhmmssxxx，例如20090810235959999
dwPicLen
图片长度
byRes2
保留
pPicBuffer
上传的图片信息

Remarks

需要在平台参数配置中把图片服务器的地址和端口配置好，然后调用NET_DVR_StartListen()接口进行监听，设置好回调函数，才能正常得到图片信息。

See Also

NET_DVR_StartListen_V30


NET_DVR_PINCODEPARAM

PIN码参数结构体。

struct{
  DWORD       dwSize;
  BYTE        byPinCmd;
  BYTE        byRes1[3];
  BYTE        byPinCode[MAX_PIN_LEN];
  BYTE        byNewPinCode[MAX_PIN_LEN];
  BYTE        byRes2[16];
}NET_DVR_PINCODEPARAM,*LPNET_DVR_PINCODEPARAM;

Members

dwSize
结构体大小
byPinCmd
PIN命令，具体定义如下：
enum _PIN_READY_{
  PIN_ENABLE  = 1,
  PIN_DISABLE = 2,
  PIN_VERIFY  = 3,
  PUK_VERIFY  = 4,
  PIN_CHANGE  = 5
}PIN_READY
PIN_ENABLE
PIN启用
PIN_DISABLE
PIN禁用
PIN_VERIFY
PIN校验
PUK_VERIFY
PUK校验
PIN_CHANGE
PIN修改
byRes1
保留
byPinCode
PIN码或者PUK码
byNewPinCode
新的PIN码
byRes
保留

Remarks

进行PIN相关的操作项之前需要先获取一下PIN状态，根据返回的状态参数（NET_DVR_PINSTATUS），决定哪些项当前允许操作，哪些项当前不允许操作。具体如下：
byStatus == CPIN_PIN，“PIN校验”项允许，其它不允许；
byStatus == CPIN_PUK，“PUK校验”项允许，其它不允许；
byStatus == CPIN_READY && bEnableLock == 0， “PIN启用”项允许，其它不允许；
byStatus == CPIN_READY && bEnableLock == 1， “PIN禁用”与“修改”项允许，其它不允许。

当byPinCmd为PIN_ENABLE、PIN_DISABLE和PIN_VERIFY时，只需输入byPinCode，无需输入byNewPinCode。当byPinCmd为PUK_VERIFY和PIN_CHANGE时，byPinCode和byNewPinCode都需输入。

PIN操作界面需提供给用户当前PIN状态及还剩余的操作次数，因此PIN操作命令的返回信息中包含了PIN_STATUS的信息，需实时刷新这些信息。

See Also

NET_DVR_SetDVRConfig


NET_DVR_PINSTATUS

PIN码状态结构体。

struct{
  DWORD       dwSize;
  BYTE        byStatus;
  BYTE        byPinTimes;
  BYTE        byPukTimes;
  BYTE        bEnableLock;
  BYTE        byRes[4];
}NET_DVR_PINSTATUS,*LPNET_DVR_PINSTATUS;

Members

dwSize
结构体大小
byStatus
PIN状态，具体定义如下：
enum _PIN_READY_{
  CPIN_READY = 1,
  CPIN_PIN   = 2,
  CPIN_PUK   = 3,
  CPIN_PIN2  = 4,
  CPIN_PUK2  = 5
}PIN_READY
byPinTimes
持续输入PIN码次数
byPukTimes
持续输入PUK码次数
bEnableLock
是否锁定PIN码，0- 不锁定，1- 锁定
byRes
保留

See Also

NET_DVR_GetDVRConfig


NET_DVR_PLATE_INFO

智能高清IPC车牌识别结果子结构体。

struct{
  BYTE                  byPlateType;
  BYTE                  byColor;
  BYTE                  byBright;
  BYTE                  byLicenseLen;
  BYTE                  byEntireBelieve;
  BYTE                  byRes[35];
  NET_VCA_RECT          struPlateRect;
  char                  sLicense[MAX_LICENSE_LEN];
  BYTE                  byBelieve[MAX_LICENSE_LEN];
}NET_DVR_PLATE_INFO, *LPNET_DVR_PLATE_INFO;

Members

byPlateType
车牌类型，具体定义如下：
enum _VCA_PLATE_TYPE_{
  VCA_STANDARD92_PLATE = 0,
  VCA_STANDARD02_PLATE,
  VCA_WJPOLICE_PLATE,
  VCA_JINGCHE_PLATE,
  STANDARD92_BACK_PLATE,
  VCA_SHIGUAN_PLATE,
  VCA_NONGYONG_PLATE,
  VCA_MOTO_PLATE
}VCA_PLATE_TYPE
VCA_STANDARD92_PLATE
标准民用车与军车车牌
VCA_STANDARD02_PLATE
02式民用车牌
VCA_WJPOLICE_PLATE
武警车车牌
VCA_JINGCHE_PLATE
警车车牌
STANDARD92_BACK_PLATE
民用车双行尾牌
VCA_SHIGUAN_PLATE
使馆车牌
VCA_NONGYONG_PLATE
农用车车牌
VCA_MOTO_PLATE
摩托车车牌
byColor
车牌颜色，具体定义如下：
enum _VCA_PLATE_COLOR_{
  VCA_BLUE_PLATE  = 0,
  VCA_YELLOW_PLATE,
  VCA_WHITE_PLATE,
  VCA_BLACK_PLATE
}VCA_PLATE_COLOR
VCA_BLUE_PLATE
蓝色车牌
VCA_YELLOW_PLATE
黄色车牌
VCA_WHITE_PLATE
白色车牌
VCA_BLACK_PLATE
黑色车牌
byBright
车牌亮度
byLicenseLen
车牌字符个数
byEntireBelieve
整个车牌的置信度，0-100
byRes
保留
struPlateRect
车牌位置
sLicense
车牌号码
byBelieve
各个识别字符的置信度，如检测到车牌"浙A12345", 置信度为20,30,40,50,60,70，则表示"浙"字正确的可能性是20%，"A"字的正确的可能性是30%

See Also

NET_DVR_PLATE_RESULT


NET_DVR_PLATE_RESULT

识别结果结构体。

struct{
  DWORD                    dwSize;
  BYTE                     byResultType;
  BYTE                     byChanIndex;
  BYTE                     byRes1[2];
  DWORD                    dwRelativeTime;
  BYTE                     byAbsTime[32];
  DWORD                    dwPicLen;
  DWORD                    dwPicPlateLen;
  DWORD                    dwVideoLen;
  BYTE                     byTrafficLight;
  BYTE                     byPicNum;
  BYTE                     byDriveChan;
  BYTE                     byRes2;
  DWORD                    dwBinPicLen;
  DWORD                    dwCarPicLen;
  DWORD                    dwFarCarPicLen;
  BYTE                     *pBuffer3;
  BYTE                     *pBuffer4;
  BYTE                     *pBuffer5;
  BYTE                     byRes3[8];
  NET_DVR_PLATE_INFO       struPlateInfo;
  NET_DVR_VEHICLE_INFO     struVehicleInfo;
  BYTE                     *pBuffer1;
  BYTE                     *pBuffer2;
}NET_DVR_PLATE_RESULT, *LPNET_DVR_PLATE_RESULT;

Members

dwSize
结构体大小
byResultType
识别结果类型，0-通过视频识别，1-通过图像识别
byChanIndex
车道号
byRes1
保留
dwRelativeTime
相对时间（保留）
byAbsTime
绝对时间，精确到毫秒，yyyymmddhhmmssxxx，例如20090810235959999
dwPicLen
图片长度（近景图）
dwPicPlateLen
车牌小图片长度（车牌彩图）
dwVideoLen
录像内容长度
byTrafficLight
0-非红绿灯抓拍，1-绿灯时抓拍；2-红灯时抓拍
byPicNum
连拍的图片序号
byDriveChan
触发的车道号
byRes2
保留
dwBinPicLen
二值图长度（仅iDS-65xx支持）
dwCarPicLen
车辆原图长度（仅iDS-65xx支持）
dwFarCarPicLen
远景图长度（仅iDS-65xx支持）
pBuffer3
车牌二值图（仅iDS-65xx支持）
pBuffer4
车辆原图（仅iDS-65xx支持）
pBuffer5
远景图（仅iDS-65xx支持）
byRes3
保留
struPlateInfo
车牌信息参数
struVehicleInfo
车辆信息参数
*pBuffer1
当上传的是图片(近景图)信息时，指针指向图片信息，图片长度为dwPicLen；当上传的是录像时，指针指向录像信息，录像长度为dwVideoLen
*pBuffer2
当上传的是图片(车牌图)信息时，指针指向车牌小图片信息，车牌小图片的长度为dwPicPlateLen

Remarks

智能高清IPC报警上传的信息是图片或者录像中的一种，可以通过判断图片和录像的长度是否为0以确定上传的是图片信息还是录像信息。图片数据为场景图片+车牌小图片。视频长度为0xffffffff时，表示视频内容异常，此时只上传报警信息，后面无视频内容，指向视频内容的指针为NULL。

iDS-65xx手动抓拍只支持上传pBuffer1和pBuffer2。

See Also

NET_DVR_SetDVRMessageCallBack_V30 NET_DVR_ManualSnap


NET_DVR_PLATECHECK_PARA

车牌比对参数结构体。

struct{
  BYTE              byAlarmWhenChecked;
  BYTE              byInformWhenChecked;
  BYTE              byRes[6];
  NET_DVR_IPADDR    struBlackFtpServer;
}NET_DVR_PLATECHECK_PARA, *LPNET_DVR_PLATECHECK_PARA;

Members

byAlarmWhenChecked
稽查成功是否报警，0- 否，1- 是
byInformWhenChecked
稽查成功是否对话框提示，0- 否，1- 是
byRes
保留
struBlackFtpServer
黑名单FTP服务器地址

See Also

NET_DVR_ENFORCESYS_PARA


NET_DVR_PLATERECOG_PARA

车牌识别参数结构体。

struct{
  DWORD             dwSize;
  BYTE              byPrMode;
  BYTE              byPrScene;
  BYTE              byPrDetRect;
  BYTE              byPrPicQuality;
  BYTE              byPrPicMode;
  BYTE              byPlateOsdDisplay;
  BYTE              byPrProvCharIndex;
  BYTE              byPrProvCharIndex1;
  BYTE              byPrProvCharIndex2;
  BYTE              byRes[7];
}NET_DVR_PLATERECOG_PARA, *LPNET_DVR_PLATERECOG_PARA;

Members

dwSize
结构体大小
byPrMode
车牌识别的模式，0- 静态图像，1- 动态视频
byPrScene
车牌识别的场景，0- 低速场景，1- 高速场景
byPrDetRect
0- 全屏幕，1- 中心区域
byPrPicQuality
车牌识别返回的图片质量，0- 低，1- 一般，2- 较高，3- 最高
byPrPicMode
车牌识别返回的图片分辨率，0- D1，1- CIF，2- QCIF
byPlateOsdDisplay
车牌OSD是否显示，0- 不显示，1- 显示
byPrProvCharIndex
车牌识别省份首汉字对应的索引
byPrProvCharIndex1
车牌识别常见首汉字1对应的索引
byPrProvCharIndex2
车牌识别常见首汉字2对应的索引
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_PLAYBACKCALLBACKPARAM

回放推码流回应回调参数结构体。

struct{
  BYTE             byPlayBackMode;
  BYTE             byRes1[3];
  union{
           BYTE           sFileName[100];
           struct{
           LONG           lChannel;
           NET_DVR_TIME   struStartTime;
           NET_DVR_TIME   struStopTime;
           BYTE           byRes[48];
           }struPlayBackbyTime;
  }playbackmode;
  BYTE             byRes2[48];
}NET_DVR_PLAYBACKCALLBACKPARAM,*LPNET_DVR_PLAYBACKCALLBACKPARAM;

Members

byPlayBackMode
回放下载模式，1－按名字，2－按时间
byRes1
保留
sFileName
回放的文件名
lChannel
回放的通道号
struStartTime
按时间回放的开始时间
struStopTime
按时间回放的结束时间
byRes
保留
byRes2
保留，置为0

See Also

NET_DVR_SetPlaybackResponseCallBack


NET_DVR_PLAYBACKREQUESTPARAM

回放请求参数结构体。

struct{
  BYTE             byPlayBackMode;
  BYTE             byRes1[3];
  union{
           BYTE           sFileName[100];
           struct{
           LONG           lChannel;
           NET_DVR_TIME   struStartTime;
           NET_DVR_TIME   struStopTime;
           BYTE           byRes[48];
           }struPlayBackbyTime;
  }playbackmode;
  NET_DVR_IPADDR   struCuIp;
  WORD             wPort;
  BYTE             byRes2[22];
}NET_DVR_PLAYBACKREQUESTPARAM,*LPNET_DVR_PLAYBACKREQUESTPARAM;

Members

byPlayBackMode
回放下载模式，1－按名字，2－按时间
byRes1
保留
sFileName
回放的文件名
lChannel
回放的通道号
struStartTime
按时间回放的开始时间
struStopTime
按时间回放的结束时间
byRes
保留
struCuIp
CU端IP地址
wPort
CU端口
byRes2
保留，置为0

See Also

NET_DVR_PlaybackRequest


NET_DVR_PLAYCOND

回放或者下载信息结构体。

struct{
  DWORD                 dwChannel;
  NET_DVR_TIME          struStartTime;
  NET_DVR_TIME          struStopTime;
  BYTE                  byDrawFrame;
  BYTE                  byRes[63];
}NET_DVR_PLAYCOND, *LPNET_DVR_PLAYCOND;

Members

dwChannel
通道号
struStartTime
开始时间
struStopTime
结束时间
byDrawFrame
是否抽帧：0- 不抽帧，1- 抽帧
byRes
保留

See Also

NET_DVR_PlayBackByTime_V40 NET_DVR_GetFileByTime_V40


NET_DVR_PLAYREMOTEFILE

解码设备文件回放的参数结构体。

struct{
  DWORD   dwSize;
  char    sDecoderIP[16];
  WORD    wDecoderPort;
  WORD    wLoadMode;
  union{
           BYTE   byFile[100];
           struct{
           DWORD          dwChannel;
           BYTE           sUserName[NAME_LEN];
           BYTE           sPassword[PASSWD_LEN];
           NET_DVR_TIME   struStartTime;
           NET_DVR_TIME   struStopTime;
           }bytime;
  }mode_size;
}NET_DVR_PLAYREMOTEFILE,*LPNET_DVR_PLAYREMOTEFILE;

Members

dwSize
结构体大小
sDecoderIP
前端设备IP地址
wDecoderPort
前端设备端口号
wLoadMode
回放下载模式：1－按文件；2－按时间
byFile
回放的文件名
dwChannel
通道号
sUserName
请求视频用户名
sPassword
密码
struStartTime
按时间回放的开始时间
struStopTime
按时间回放的结束时间

See Also

NET_DVR_DecPlayBackCtrl


NET_DVR_PLCCFG

车牌亮度补偿参数结构体。

struct{
  DWORD   dwSize;
  BYTE    byPlcEnable;
  BYTE    byPlateExpectedBright;
  BYTE    byRes1[2];
  BYTE    byTradeoffFlash;
  BYTE    byCorrectFactor;
  WORD    wLoopStatsEn;
  BYTE    byRes[20];
}NET_DVR_PLCCFG,*LPNET_DVR_PLCCFG;

Members

dwSize
结构体大小
byPlcEnable
是否启用车牌亮度补偿（默认启用）：0-关闭，1-启用
byPlateExpectedBright
车牌的预期亮度（默认值50）, 范围[0,100]
byRes1
保留
byTradeoffFlash
是否考虑闪光灯的影响(默认启用): 0-关闭，1-启用。（使用闪光灯补光时, 如果考虑减弱闪光灯的亮度增强效应, 则需要设为1，否则为0）
byCorrectFactor
纠正系数（默认值50），范围[0,100]。默认值50(在byTradeoffFlash切换时，恢复默认值）
wLoopStatsEn
触发线圈是否参与车牌亮度统计，按位表示，0-不统计，1-统计
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_POINT_FRAME

云台图象区域位置信息。

struct{
  int    xTop;
  int    yTop;
  int    xBottom;
  int    yBottom;
  int    bCounter;
}NET_DVR_POINT_FRAME, *LPNET_DVR_POINT_FRAME;

Members

xTop
方框起始点的x坐标
yTop
方框起始点的y坐标
xBottom
方框结束点的x坐标
yBottom
方框结束点的y坐标
bCounter
画框方向：1- 左上，2- 右上，3- 左下，4- 右下

Remarks

该结构体中的坐标值与当前预览显示框的大小有关，现假设预览显示框为352*288，我们规定原点为预览显示框左上角的顶点，前四个参数计算方法如下：
xTop = 鼠标当前所选区域的左上角坐标的值*255/352；
xBottom = 鼠标当前所选区域的右下角坐标的值*255/352；
yTop = 鼠标当前所选区域的左下角坐标的值*255/288；
yBottom = 鼠标当前所选区域的右下角坐标的值*255/288；
缩小条件：xBottom减去xTop的值大于2。放大条件：xBottom减去xTop的值大于0，且yBottom减去yTop的值大于0。

See Also

NET_DVR_PTZSelZoomIn_EX NET_DVR_PTZSelZoomIn


NET_DVR_PORTCFG

解码器透明通道配置的结构体。

struct{
  DWORD              dwSize;
  NET_DVR_PORTINFO   struTransPortInfo[MAX_TRANSPARENTNUM];
}NET_DVR_PORTCFG,*LPNET_DVR_PORTCFG;

Members

dwSize
结构体大小
struTransPortInfo
透明通道的参数结构体

See Also

NET_DVR_GetDecTransPort NET_DVR_SetDecTransPort


NET_DVR_PORTINFO

透明通道配置的参数子结构体。

struct{
  DWORD   dwEnableTransPort;
  char    sDecoderIP[16];
  WORD    wDecoderPort;
  WORD    wDVRTransPort;
  char    cReserve[4];
}NET_DVR_PORTINFO,*LPNET_DVR_PORTINFO;

Members

dwEnableTransPort
是否启动透明通道：0－不启用；1－启用
sDecoderIP
前端设备IP地址
wDecoderPort
端口号
wDVRTransPort
配置前端设备是从485或232输出：1表示232串口；2表示485串口
cReserve
保留，置为0

See Also

NET_DVR_PORTCFG


NET_DVR_POSITION_INDEX

场景信息规则结构体。

struct{
  BYTE    byIndex;
  BYTE    byRes1;
  WORD    wDwell;
  BYTE    byRes2[4];
}NET_DVR_POSITION_INDEX,*LPNET_DVR_POSITION_INDEX;

Members

byIndex
场景索引
byRes1
保留
wDwell
停留时间
byRes2
保留

See Also

NET_DVR_POSITION_TRACK_CFG


NET_DVR_POSITION_RULE_CFG

场景位置行为规则配置结构。

struct{
  DWORD                  dwSize;
  NET_DVR_PTZ_POSITION   struPtzPosition;
  NET_VCA_RULECFG        struVcaRuleCfg;
  BYTE                   byRes2[80];
}NET_DVR_POSITION_RULE_CFG, *LPNET_DVR_POSITION_RULE_CFG;

Members

dwSize
结构体大小
struPtzPosition
场景位置信息
struVcaRuleCfg
行为规则配置
byRes2
保留

See Also

NET_DVR_GetPositionRule NET_DVR_SetPositionRule


NET_DVR_POSITION_TRACK_CFG

场景跟踪信息列表结构体。

struct{
  DWORD                     dwSize;
  BYTE                      byNum;
  BYTE                      byRes1[3];
  NET_DVR_POSITION_INDEX    struPositionIndex[MAX_POSITION_NUM];
  BYTE                      byRes2[8];
}NET_DVR_POSITION_TRACK_CFG,*LPNET_DVR_POSITION_TRACK_CFG;

Members

dwSize
结构体大小
byNum
场景个数
byRes1
保留
struPositionIndex
场景信息规则
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_POSTEPOLICECFG

卡口电警参数结构体。

struct{
  DWORD   dwSize;
  DWORD   dwDistance;
  DWORD   dwLightChan[MAX_SIGNALLIGHT_NUM];
  BYTE    byCapSpeed;
  BYTE    bySpeedLimit;
  BYTE    byTrafficDirection;
  BYTE    byRes[129];
}NET_DVR_POSTEPOLICECFG,*LPNET_DVR_POSTEPOLICECFG;

Members

dwSize
结构体大小
dwDistance
线圈距离,单位cm，取值范围[0,20000]
dwLightChan
信号灯通道号
byCapSpeed
标志限速，单位km/h，取值范围[0,255]
bySpeedLimit
限速值，单位km/h，取值范围[0,255]
byTrafficDirection
车流方向，0-由东向西，1-由西向东，2-由南向北，3-由北向南
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_PPPCFG

PPP参数结构体。

struct{
  char      sRemoteIP[16];
  char      sLocalIP[16];
  char      sLocalIPMask[16];
  BYTE      sUsername[NAME_LEN];
  BYTE      sPassword[PASSWD_LEN];
  BYTE      byPPPMode;
  BYTE      byRedial;
  BYTE      byRedialMode;
  BYTE      byDataEncrypt;
  DWORD     dwMTU;
  char      sTelephoneNumber[PHONENUMBER_LEN];
}NET_DVR_PPPCFG, *LPNET_DVR_PPPCFG;

Members

sRemoteIP
远端IP地址
sLocalIP
本地IP地址
sLocalIPMask
本地IP地址掩码
sUsername
用户名
sPassword
密码
byPPPMode
PPP模式：0－主动，1－被动
byRedial
是否回拨：0-否，1-是
byRedialMode
回拨模式：0-由拨入者指定，1-预置回拨号码
byDataEncrypt
数据加密：0-否，1-是
dwMTU
MTU
sTelephoneNumber
电话号码

See Also

NET_DVR_RS232CFG


NET_DVR_PPPCFG_V30

PPP参数结构体。

struct{
  NET_DVR_IPADDR      struRemoteIP;
  NET_DVR_IPADDR      struLocalIP;
  char                sLocalIPMask[16];
  BYTE                sUsername[NAME_LEN];
  BYTE                sPassword[PASSWD_LEN];
  BYTE                byPPPMode;
  BYTE                byRedial;
  BYTE                byRedialMode;
  BYTE                byDataEncrypt;
  DWORD               dwMTU;
  char                sTelephoneNumber[PHONENUMBER_LEN];
}NET_DVR_PPPCFG_V30, *LPNET_DVR_PPPCFG_V30;

Members

struRemoteIP
远端IP地址
struLocalIP
本地IP地址
sLocalIPMask
本地IP地址掩码
sUsername
用户名
sPassword
密码
byPPPMode
PPP模式：0－主动，1－被动
byRedial
是否回拨：0-否，1-是
byRedialMode
回拨模式：0-由拨入者指定，1-预置回拨号码
byDataEncrypt
数据加密：0-否，1-是
dwMTU
MTU
sTelephoneNumber
电话号码

See Also

NET_DVR_RS232CFG_V30


NET_DVR_PPPDPARAM

PPP拨号参数结构体。

struct{
  BYTE                byDialNum[NAME_LEN];
  BYTE                byUserName[NAME_LEN];
  BYTE                byPassword[DIALPASSWD_LEN];
  BYTE                byApn[NAME_LEN];
  NET_DVR_IPADDR      struLocalIp;
  NET_DVR_IPADDR      struRemoteIp;
  WORD                wMtuSize;
  BYTE                byVerifyProtocal;
  BYTE                byRes[25];
}NET_DVR_PPPDPARAM, *LPNET_DVR_PPPDPARAM;

Members

byDialNum
拨号号码，比如“#777”
byUserName
拨号用户名
byPassword
拨号密码
byApn
接入点名称
struLocalIp
本地IP地址
struRemoteIp
远端IP地址
wMtuSize
PPP接口的最大传输单元
byVerifyProtocal
IPCP 校验协议，0- auto，1- CHAP，2- PAP
byRes
保留

See Also

NET_DVR_DIALPARAM


NET_DVR_PPPOECFG

PPPoE配置结构体。

struct{
  DWORD             dwPPPOE;
  BYTE              sPPPoEUser[NAME_LEN];
  char              sPPPoEPassword[PASSWD_LEN];
  NET_DVR_IPADDR    struPPPoEIP;
}NET_DVR_PPPOECFG, *LPNET_DVR_PPPOECFG;

Members

dwPPPOE
是否启用PPPoE：0-不启用，1-启用
sPPPoEUser
PPPoE用户名
sPPPoEPassword
PPPoE密码
struPPPoEIP
PPPoE IP地址

See Also

NET_DVR_NETCFG_V30

NET_DVR_NETCFG_MULTI


NET_DVR_PREVIEWCALLBACKPARAM

推模式预览参数结构体。

struct{
  LONG              lChannel;
  BYTE              nLinkProtocol;
  BYTE              nTransMode;
  BYTE              byRes[10];
}NET_DVR_PREVIEWCALLBACKPARAM,*LPNET_DVR_PREVIEWCALLBACKPARAM;

Members

lChannel
通道号
nLinkProtocol
传输协议，0- TCP，1- UDP
nTransMode
传输码流模式，0－主码流 1－子码流
byRes
保留

See Also

NET_DVR_SetPreviewResponseCallBack


NET_DVR_PREVIEWCFG

本地预览参数结构体。

struct{
  DWORD      dwSize;
  BYTE       byPreviewNumber;
  BYTE       byEnableAudio;
  BYTE       wSwitchTime;
  BYTE       bySwitchSeq[MAX_WINDOW];
}NET_DVR_PREVIEWCFG,*LPNET_DVR_PREVIEWCFG;

Members

dwSize
结构体大小
byPreviewNumber
预览数目：0-1画面，1-4画面，2-9画面，3-16画面，0xff-最大画面
byEnableAudio
是否声音预览：0-不预览，1-预览
wSwitchTime
预览切换时间：0-不切换，1-5s，2-10s，3-20s，4-30s，5-60s，6-120s，7-300s
bySwitchSeq
切换顺序，如果bySwitchSeq[i]为0xff表示不用

Remarks

举例：byPreviewNumber为4，bySwitchSeq[1]为4，表示当前选择了4画面预览，首次出现的轮训画面的第二个预览窗口是显示第四通道，其他窗口和后续轮训的窗口都不显示。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_PREVIEWCFG_V30


NET_DVR_PREVIEWCFG_V30

本地预览参数结构体。

struct{
  DWORD      dwSize;
  BYTE       byPreviewNumber;
  BYTE       byEnableAudio;
  BYTE       wSwitchTime;
  BYTE       bySwitchSeq[MAX_PREVIEW_MODE][MAX_WINDOW_V30];
  BYTE       byRes[24];
}NET_DVR_PREVIEWCFG_V30,*LPNET_DVR_PREVIEWCFG_V30;

Members

dwSize
结构体大小
byPreviewNumber
预览数目：0-1画面，1-4画面，2-9画面，3-16画面，0xff-最大画面
byEnableAudio
是否声音预览：0-不预览，1-预览
wSwitchTime
预览切换时间：0-不切换，1-5s，2-10s，3-20s，4-30s，5-60s，6-120s，7-300s
bySwitchSeq
切换顺序，如果bySwitchSeq[i]为0xff表示不用
byRes
保留，置为0

Remarks

若当前是零通道本地预览参数配置时，本地零通道预览输出对应设备的主CVBS或辅CVBS口是由设备识别。目前仅支持一种预览模式，即只能选择1画面、4画面、9画面、16画面和最大画面中的一种，如：byPreviewNumber为4，bySwitchSeq[0][1]为4，表示当前选择了4画面预览，首次出现的轮训画面的第二个预览窗口是显示第四通道，其他窗口和后续轮训的窗口都不显示。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_PREVIEWCFG


NET_DVR_PREVIEWPARAM

推模式预览参数结构体。

struct{
  BYTE              byTransProtol;
  BYTE              byTransMode;
  NET_DVR_IPADDR    struCuIp;
  WORD              wPort;
  WORD              wUdpPort;
  BYTE              bySupportQos;
  BYTE              byNatRequest;
  BYTE              byRes[8];
}NET_DVR_PREVIEWPARAM,*LPNET_DVR_PREVIEWPARAM;

Members

byTransProtol
传输协议，0- TCP，1- UDP
byTransMode
传输码流模式，0－主码流 1－子码流
struCuIp
CU端IP地址
wPort
CU端口
wUdpPort
UDP模式下UDP端口号
bySupportQos
是否启用QOS，1- 启用，0- 不启用
byNatRequest
是否是NAT预览请求，0- 否，1- 是(只需byTransMode字段)
byRes
保留

See Also

NET_DVR_PreviewRequest


NET_DVR_PROTO_TYPE

协议参数的结构体。

struct{
  DWORD   dwType;
  BYTE    byDescribe[DESC_LEN];
}NET_DVR_PROTO_TYPE,*LPNET_DVR_PROTO_TYPE;

Members

dwType
协议值
byDescribe
协议描述

See Also

NET_DVR_DEVICE_PROTO_LIST NET_DVR_IPC_PROTO_LIST


NET_DVR_PTZ_POSITION

场景位置信息配置结构。

struct{
  BYTE             byEnable;
  BYTE             byRes1[3];
  BYTE             byPtzPositionName[NAME_LEN];
  NET_DVR_PTZPOS   struPtzPos;
  BYTE             byRes2[40];
}NET_DVR_PTZ_POSITION, *LPNET_DVR_PTZ_POSITION;

Members

byEnable
是否启用场景：0-不启用，1-启用
byRes1
保留
byPtzPositionName
场景位置名称
struPtzPos
PTZ坐标
byRes2
保留

Remarks

参数byEnable应用在设置场景行为规则的时无效，在设置球机本地配置场景位置信息时有效。

See Also

NET_DVR_POSITION_RULE_CFG


NET_DVR_PTZ_PROTOCOL

云台协议信息结构体。

struct{
  DWORD    dwType;
  BYTE     byDescribe[DESC_LEN];
}NET_DVR_PTZ_PROTOCOL, *LPNET_DVR_PTZ_PROTOCOL;

Members

dwType
协议类型值
byDescribe
协议描述符

See Also

NET_DVR_PTZCFG


NET_DVR_PTZCFG

云台协议结构体。

struct{
  DWORD                   dwSize;
  NET_DVR_PTZ_PROTOCOL    struPtz[PTZ_PROTOCOL_NUM];
  DWORD                   dwPtzNum;
  BYTE                    byRes[8];
}NET_DVR_PTZCFG, *LPNET_DVR_PTZCFG;

Members

dwSize
结构体大小
struPtz
协议信息，最多200种
dwPtzNum
有效的PTZ协议数目，从0开始（即总数为该值加1）
byRes
保留，置为0

See Also

NET_DVR_GetPTZProtocol NET_DVR_GetPTZProtocol_Ex


NET_DVR_PTZPOS

球机位置配置结构体。

struct{
  WORD     wAction;
  WORD     wPanPos;
  WORD     wTiltPos;
  WORD     wZoomPos;
}NET_DVR_PTZPOS, *LPNET_DVR_PTZPOS;

Members

wAction
操作类型，仅在设置时有效。1-定位PTZ参数，2-定位P参数，3-定位T参数，4-定位Z参数，5-定位PT参数
wPanPos
P参数（水平参数）
wTiltPos
T参数（垂直参数）
wZoomPos
Z参数（变倍参数）

Remarks

本结构体中的wAction参数是设置时的操作类型，因此获取时该参数无效。实际显示的PTZ值是获取到的十六进制值的十分之一，如获取的水平参数P的值是0x1750，实际显示的P值为175度；获取到的垂直参数T的值是0x0789，实际显示的T值为78.9度；获取到的变倍参数Z的值是0x1100，实际显示的Z值为110度。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_PTZSCOPE

球机PTZ参数取值范围的结构体。

struct{
  WORD     wPanPosMin;
  WORD     wPanPosMax;
  WORD     wTiltPosMin;
  WORD     wTiltPosMax;
  WORD     wZoomPosMin;
  WORD     wZoomPosMax;
}NET_DVR_PTZSCOPE, *LPNET_DVR_PTZSCOPE;

Members

wPanPosMin
P参数（水平参数）的最小值
wPanPosMax
P参数（水平参数）的最大值
wTiltPosMin
T参数（垂直参数）的最小值
wTiltPosMax
T参数（垂直参数）的最大值
wZoomPosMin
Z参数（变倍参数）的最小值
wZoomPosMax
Z参数（变倍参数）的最大值

Remarks

仅支持对球机设备PTZ参数取值范围的获取。

See Also

NET_DVR_GetDVRConfig


NET_DVR_PU_STREAM_CFG

动态解码参数结构体。

struct{
  DWORD                             dwSize;
  NET_DVR_STREAM_MEDIA_SERVER_CFG   struStreamMediaSvrCfg;
  NET_DVR_DEV_CHAN_INFO             struDevChanInfo;
}NET_DVR_PU_STREAM_CFG,*LPNET_DVR_PU_STREAM_CFG;

Members

dwSize
结构体大小
struStreamMediaSvrCfg
流媒体服务器配置参数
struDevChanInfo
设备通道配置参数

See Also

NET_DVR_GET_STREAM_UNION NET_DVR_INPUTSTREAMCFG

NET_IVMS_DEVSCHED NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_PU_STREAM_URL

通过流媒体由URL取流配置结构体。

struct{
  BYTE    byEnable;
  BYTE    strURL[240];
  BYTE    byRes[11];
}NET_DVR_PU_STREAM_URL,*LPNET_DVR_PU_STREAM_URL;

Members

byEnable
是否启用：0- 禁用，1- 启用
strURL
URL路径
byRes
保留，置为0

See Also

NET_DVR_GET_STREAM_UNION


NET_DVR_PUSHALARMINFO

推模式基本报警信息结构体。

struct{
  DWORD             dwAlarmType;
  DWORD             dwAlarmInputNumber;
  DWORD             dwAlarmOutputNumber[MAX_ALARMOUT];
  DWORD             dwAlarmRelateChannel[MAX_CHANNUM];
  DWORD             dwChannel[MAX_CHANNUM];
  DWORD             dwDiskNumber[MAX_DISKNUM];
  BYTE              byDeviceID[NAME_LEN];
  BYTE              byRes[4];
}NET_DVR_PUSHALARMINFO,*LPNET_DVR_PUSHALARMINFO;

Members

dwAlarmType
报警类型，0- 信号量报警，1- 硬盘满，2- 信号丢失，3- 移动侦测，4- 硬盘未格式化，5- 读写硬盘出错，6- 遮挡报警，7- 制式不匹配，8- 非法访问
dwAlarmInputNumber
报警输入端口
dwAlarmOutputNumber
触发的输出端口，值为1表示该报警端口输出
dwAlarmRelateChannel
触发的录像通道，值为1表示该通道录像，如dwAlarmRelateChannel[0]==1表示触发第1个通道录像
dwChannel
发生报警的通道。dwAlarmType为2或3、6时有效，dwChannel[0]==1对应第1个通道报警
dwDiskNumber
发生报警的硬盘。当报警类型为1、4或5时有效，dwDiskNumber[0]==1表示1号硬盘异常
byDeviceID
设备的ID串
byRes
保留

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_DVR_PUSHALARMINFO_V30

推模式基本报警信息结构体。

struct{
  DWORD             dwAlarmType;
  DWORD             dwAlarmInputNumber;
  DWORD             dwAlarmOutputNumber[MAX_ALARMOUT_V30];
  DWORD             dwAlarmRelateChannel[MAX_CHANNUM_V30];
  DWORD             dwChannel[MAX_CHANNUM_V30];
  DWORD             dwDiskNumber[MAX_DISKNUM_V30];
  BYTE              byDeviceID[NAME_LEN];
  BYTE              byRes[4];
}NET_DVR_PUSHALARMINFO_V30,*LPNET_DVR_PUSHALARMINFO_V30;

Members

dwAlarmType
报警类型，0- 信号量报警，1- 硬盘满，2- 信号丢失，3- 移动侦测，4- 硬盘未格式化，5- 读写硬盘出错，6- 遮挡报警，7- 制式不匹配，8- 非法访问
dwAlarmInputNumber
报警输入端口
dwAlarmOutputNumber
触发的输出端口，值为1表示该报警端口输出
dwAlarmRelateChannel
触发的录像通道，值为1表示该通道录像，如dwAlarmRelateChannel[0]==1表示触发第1个通道录像
dwChannel
发生报警的通道。dwAlarmType为2、3、6、9或者10时有效，dwChannel[0]==1对应第1个通道报警
dwDiskNumber
发生报警的硬盘。当报警类型为1、4或5时有效，dwDiskNumber[0]==1表示1号硬盘异常
byDeviceID
设备的ID串
byRes
保留

See Also

NET_DVR_SetDVRMessageCallBack_V30 NET_DVR_StartListen_V30


NET_DVR_PUSHJPEGPARA

推模式图片参数结构体。

struct{
  WORD        wPicSize;
  WORD        wPicQuality;
  BYTE        byPicTackleMode;
  BYTE        byRes[11];
}NET_DVR_PUSHJPEGPARA,*LPNET_DVR_PUSHJPEGPARA;

Members

wPicSize
图片分辨率，0- CIF，1- QCIF，2- D1，3- UXGA(1600x1200)，4- SVGA(800x600)，5- HD720p(1280x720)，6- VGA
wPicQuality
图片质量系数，0- 最好，1- 较好，2- 一般
byPicTackleMode
抓图图片处理方式，1- 上传中心，2- 设备本地保存，3- 上传中心同时设备本地保存
byRes
保留，置为0

See Also

NET_DVR_SpringJPEGPicture


NET_DVR_PUSHMODEPARAM

推模式参数结构体。

struct{
  BYTE        byUdpPreviewMode;
  BYTE        byRes[19];
}NET_DVR_PUSHMODEPARAM,*LPNET_DVR_PUSHMODEPARAM;

Members

byUdpPreviewMode
直连模式下UDP预览模式，1- 同端口多路流，2- 一端口一路流
byRes
保留，置为0

See Also

NET_DVR_SetPushModeParam


NET_DVR_QOSPARAM

QoS参数结构体。

struct{
  WORD         wMaxBitUL;
  WORD         wMaxBitDL;
  BYTE         byTrafficClass;
  BYTE         byRes[7];
}NET_DVR_QOSPARAM,*LPNET_DVR_QOSPARAM;

Members

wMaxBitUL
上行码率上限（kbits/s），0- 8，1- 16，2- 32，3- 64，4- 128，5- 256，6- 384，7- 512，8- 1152，9- 1536，10- 2048；最高位(15位)为1表示自定义速率，此时0-14位表示自定义码率值
wMaxBitDL
下行码率上限（kbits/s），0- 8，1- 16，2- 32，3- 64，4- 128，5- 256，6- 384，7- 512，8- 1152，9- 1536，10- 2048；最高位(15位)为1表示自定义速率，此时0-14位表示自定义码率值
byTrafficClass
0- 会话类，1- 流类，2- 交互类，3- 背景类，4- subscribed value(默认)
byRes
保留，置为0

See Also

NET_DVR_DIALPARAM


NET_DVR_RAID_ADAPTER_INFO

适配器参数结构体。

struct{
  DWORD                     dwSize;
  NET_DVR_ADAPTER_VERSION   struVersion;
  BYTE                      bySlotCount;
  BYTE                      bySupportMigrate;
  BYTE                      bySupportExpand;
  BYTE                      bySupportRebuild;
  WORD                      wSlotSupportType;
  WORD                      wSupportRaidType;
  BYTE                      byAutoRebuild;
  BYTE                      byRes[27];
}NET_DVR_RAID_ADAPTER_INFO, *LPNET_DVR_RAID_ADAPTER_INFO;

Members

dwSize
结构体大小
struVersion
适配器版本号
bySlotCount
适配器槽位数
bySupportMigrate
是否支持迁移：0-不支持，1-支持
bySupportExpand
是否支持扩容：0-不支持，1-支持
bySupportRebuild
是否支持重建阵列：0-不支持，1-支持
wSlotSupportType
槽位支持的类型，按位表示，具体定义如下：
enum _HD_SUPPORT_TYPE_{
  HD_TYPE_SATA   = 0x01,
  HD_TYPE_PATA   = 0x02,
  HD_TYPE_SAS    = 0x04,
  HD_TYPE_ATAPI  = 0x08,
  HD_TYPE_TAPE   = 0x10,
  HD_TYPE_SES    = 0x20
}HD_SUPPORT_TYPE
HD_TYPE_SATA
SATA
HD_TYPE_PATA
PATA
HD_TYPE_SAS
SAS
HD_TYPE_ATAPI
ATAPI
HD_TYPE_TAPE
TAPE
HD_TYPE_SES
SES
wSupportRaidType
支持RAID类型，按位表示，具体定义如下：
enum _RAID_MODE_{
  RAID0 = 1,
  RAID1,
  RAID10,
  RAID1E,
  RAID5,
  RAID6,
  RAID50,
  JBOD,
  RAID60
}RAID_MODE
RAID0
RAID0方式
RAID1
RAID1方式
RAID10
RAID10方式
RAID1E
RAID1E方式
RAID5
RAID5方式
RAID6
RAID6方式
RAID50
RAID50方式
JBOD
JBOD方式
RAID60
RAID60方式
byAutoRebuild
是否支持自动重建：0-不支持，1-支持
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_RECORD

通道录像参数结构体。

struct{
  DWORD                 dwSize;
  DWORD                 dwRecord;
  NET_DVR_RECORDDAY     struRecAllDay[MAX_DAYS];
  NET_DVR_RECORDSCHED   struRecordSched[MAX_DAYS][MAX_TIMESEGMENT];
  DWORD                 dwRecordTime;
  DWORD                 dwPreRecordTime;
}NET_DVR_RECORD, *LPNET_DVR_RECORD;

Members

dwSize
结构体大小
dwRecord
是否录像：0-否，1-是
struRecAllDay
全天录像布防参数
struRecordSched
时间段录像布防参数
dwRecordTime
录象延时时间，0-5秒， 1-10秒， 2-30秒， 3-1分钟， 4-2分钟， 5-5分钟， 6-10分钟
dwPreRecordTime
预录时间：0-不预录，1-5秒，2-10秒，3-15秒，4-20秒，5-25秒，6-30秒，7-0xffffffff(尽可能预录)

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_RECORD_V30


NET_DVR_RECORD_LABEL

录像标签结构体。

struct{
  DWORD                   dwSize;
  NET_DVR_TIME            struTimeLabel;
  BYTE                    byQuickAdd;
  BYTE                    byRes1[3];
  BYTE                    sLabelName[LABEL_NAME_LEN];
  BYTE                    byRes2[40];
}NET_DVR_RECORD_LABEL,*LPNET_DVR_RECORD_LABEL;

Members

dwSize
结构体大小
struTimeLabel
标签的时间
byQuickAdd
是否快速添加，快速添加时标签名称无效
byRes1
保留，置为0
sLabelName
标签的名称，长度为40字节
byRes2
保留，置为0

See Also

NET_DVR_InsertRecordLabel


NET_DVR_RECORD_V30

通道录像参数结构体。

struct{
  DWORD                 dwSize;
  DWORD                 dwRecord;
  NET_DVR_RECORDDAY     struRecAllDay[MAX_DAYS];
  NET_DVR_RECORDSCHED   struRecordSched[MAX_DAYS][MAX_TIMESEGMENT_V30];
  DWORD                 dwRecordTime;
  DWORD                 dwPreRecordTime;
  DWORD                 dwRecorderDuration;
  BYTE                  byRedundancyRec;
  BYTE                  byAudioRec;
  BYTE                  byReserve[10];
}NET_DVR_RECORD_V30, *LPNET_DVR_RECORD_V30;

Members

dwSize
结构体大小
dwRecord
是否录像：0-否，1-是
struRecAllDay
全天录像布防参数
struRecordSched
时间段录像布防参数
dwRecordTime
录象延时时间，0-5秒， 1-10秒， 2-30秒， 3-1分钟， 4-2分钟， 5-5分钟， 6-10分钟
dwPreRecordTime
预录时间：0-不预录，1-5秒，2-10秒，3-15秒，4-20秒，5-25秒，6-30秒，7-0xffffffff(尽可能预录)
dwRecorderDuration
录像保存的最长时间，单位：天，0xffffffff表示该值无效
byRedundancyRec
是否冗余录像（重要数据双备份）：0-不录像，1-录像
byAudioRec
录像时复合流编码时是否记录音频数据：0-不记录，1-记录
byReserve
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_RECORD


NET_DVR_RECORDDAY

全天录像参数结构体。

struct{
  WORD    wAllDayRecord;
  BYTE    byRecordType;
  char    reservedData;
}NET_DVR_RECORDDAY, *LPNET_DVR_RECORDDAY;

Members

wAllDayRecord
是否全天录像：0-否，1-是
byRecordType
录象类型：0-定时录像，1-移动侦测录像，2-报警录像，3-移动侦测或报警录像，4-移动侦测和报警录像，5-命令触发录像，6-智能报警录像，10-PIR报警，11-无线报警，12-呼救报警，13-PIR|无线报警|呼救报警
reservedData
保留，置为0

See Also

NET_DVR_HOLIDAY_RECORD NET_DVR_RECORD_V30 NET_DVR_RECORD


NET_DVR_RECORDSCHED

时间段录像参数结构体。

struct{
  NET_DVR_SCHEDTIME    struRecordTime;
  BYTE                 byRecordType;
  char                 reservedData[3];
}NET_DVR_RECORDSCHED, *LPNET_DVR_RECORDSCHED;

Members

struRecordTime
录像时间
byRecordType
录象类型：0-定时录像，1-移动侦测录像，2-报警录像，3-移动侦测或报警录像，4-移动侦测和报警录像，5-命令触发录像，6-智能报警录像，10-PIR报警，11-无线报警，12-呼救报警，13-PIR|无线报警|呼救报警
reservedData
保留，置为0

See Also

NET_DVR_HOLIDAY_RECORD NET_DVR_RECORD_V30 NET_DVR_RECORD


NET_DVR_RECT_LIST

标定矩形框参数结构体。

struct{
  BYTE             byRectNum;
  BYTE             byRes1[11];
  NET_VCA_RECT     struVcaRect[MAX_RECT_NUM];
}NET_DVR_RECT_LIST, *LPNET_DVR_RECT_LIST;

Members

byRectNum
矩形框的数目，最小2个，最多6个矩形框
byRes1
保留
struVcaRect
区域框参数

See Also

NET_DVR_PDC_CALIBRATION


NET_DVR_RECTCFG

窗口设置结构体。

struct{
  WORD                   wXCoordinate;
  WORD                   wYCoordinate;
  WORD                   wWidth;
  WORD                   wHeight;
}NET_DVR_RECTCFG, *LPNET_DVR_RECTCFG;

Members

wXCoordinate
矩形左上角起始点X坐标
wYCoordinate
矩形左上角Y坐标
wWidth
矩形宽度
wHeight
矩形高度

See Also

NET_DVR_SCREEN_WINCFG NET_DVR_PICTURECFG


NET_DVR_REGCALLBACKPARAM

注册回调信息结构体。

struct{
  char        sDeviceID[NAME_LEN];
  char        sPassword[PASSWD_LEN];
  BYTE        sSerialNumber[SERIALNO_LEN];
  DWORD       dwDeviceType;
  BYTE        nStatus;
  BYTE        byNetType;
  BYTE        byRes[14];
}NET_DVR_REGCALLBACKPARAM,*LPNET_DVR_REGCALLBACKPARAM;

Members

sDeviceID
设备ID串
sPassword
密码
sSerialNumber
设备序列号
dwDeviceType
设备类型
nStatus
上下线状态：0- 下线，1- 上线
byNetType
网络类型：0- 未知，1- 2G无线网络， 2: 3G无线网络，3- 有线网络
byRes
保留

See Also

NET_DVR_SetRegisterCallBack


NET_DVR_REGION_LIST

区域列表结构体。

struct{
  DWORD              dwSize;
  BYTE               byNum;
  BYTE               byRes1[3];
  NET_VCA_POLYGON    struPolygon[MAX_REGION_NUM];
  BYTE               byRes2[20];
}NET_DVR_REGION_LIST, *LPNET_DVR_REGION_LIST;

Members

dwSize
结构体大小
byNum
区域个数
byRes1
保留
struPolygon
区域参数
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_REL_CAPTURE_CHAN

触发抓图的通道。

struct{
  BYTE      byChan[16];
  BYTE      byRes[20];
}NET_DVR_REL_CAPTURE_CHAN, *LPNET_DVR_REL_CAPTURE_CHAN;

Members

byChan
按位表示，byChan[0]=1表示触发第1个通道抓图，byChan[1]=1表示触发第2个通道抓图，依次类推
byRes
保留，置为0

See Also

NET_DVR_EVENT_CAPTURE


NET_DVR_REMOTECONTROL_ALARM_PARAM

遥控器布撤防参数结构体。

struct{
  DWORD    dwSize;
  DWORD    dwChannel;
  WORD     wDealyTime;
  BYTE     byRes[30];
}NET_DVR_REMOTECONTROL_ALARM_PARAM,*LPNET_DVR_REMOTECONTROL_ALARM_PARAM;

Members

dwSize
结构体大小
dwChannel
通道号
wDealyTime
延迟时间，单位：s，最大值：5分钟
byRes
保留，置为0

See Also

NET_DVR_RemoteControl


NET_DVR_REMOTECONTROL_STUDY_PARAM

遥控器学习参数结构体。

struct{
  DWORD    dwSize;
  DWORD    dwChannel;
  BYTE     byRes[16];
}NET_DVR_REMOTECONTROL_STUDY_PARAM,*LPNET_DVR_REMOTECONTROL_STUDY_PARAM;

Members

dwSize
结构体大小
dwChannel
通道号
byRes
保留，置为0

See Also

NET_DVR_RemoteControl


NET_DVR_RS232CFG

RS232串口参数结构体。

struct{
  DWORD               dwSize;
  DWORD               dwBaudRate;
  BYTE                byDataBit;
  BYTE                byStopBit;
  BYTE                byParity;
  BYTE                byFlowcontrol;
  DWORD               dwWorkMode;
  NET_DVR_PPPCFG      struPPPConfig;
}NET_DVR_RS232CFG, *LPNET_DVR_RS232CFG;

Members

dwSize
结构体大小
dwBaudRate
波特率(bps)，0-50，1-75，2-110，3-150，4-300，5-600，6-1200，7-2400，8-4800，9-9600，10-19200，11-38400，12-57600，13-76800，14-115.2k
byDataBit
数据有几位：0-5位，1-6位，2-7位，3-8位
byStopBit
停止位：0-1位，1-2位
byParity
是否校验：0-无校验，1-奇校验，2-偶校验
byFlowcontrol
是否流控：0-无，1-软流控,2-硬流控
dwWorkMode
工作模式，0－窄带传输(232串口用于PPP拨号)，1－控制台(232串口用于参数控制)，2－透明通道
struPPPConfig
PPP参数

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_RS232CFG_V30


NET_DVR_RS232CFG_V30

RS232串口参数结构体。

struct{
  DWORD                        dwSize;
  NET_DVR_SINGLE_RS232         struRs232[MAX_SERIAL_PORT];
  NET_DVR_PPPCFG_V30           struPPPConfig;
}NET_DVR_RS232CFG_V30, *LPNET_DVR_RS232CFG_V30;

Members

dwSize
结构体大小
struRs232
232串口号
struPPPConfig
PPP参数

Remarks

配置ATM防护舱控制器的232参数时，设备对1号、3号串口通道的数值会进行有效判断，其中流速必须是1200以上，流控设为无，数据位为8位，操作模式为“控制台”或“透明通道”。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_RS232CFG_V30

RS232串口参数结构体。

struct{
  DWORD                        dwSize;
  NET_DVR_SINGLE_RS232         struRs232[MAX_SERIAL_PORT];
  NET_DVR_PPPCFG_V30           struPPPConfig;
}NET_DVR_RS232CFG_V30, *LPNET_DVR_RS232CFG_V30;

Members

dwSize
结构体大小
struRs232
9016只有一个232串口，采用第一个
struPPPConfig
PPP参数

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_RS232CFG


NET_DVR_RTSPCFG

RTSP协议参数结构体。

struct{
  DWORD    dwSize;
  WORD     wPort;
  BYTE     byReserve[54];
}NET_DVR_RTSPCFG, *LPNET_DVR_RTSPCFG;

Members

dwSize
结构体大小
wPort
rtsp服务器侦听端口
byReserve
保留，置为0

See Also

NET_DVR_GetRtspConfig NET_DVR_SetRtspConfig


NET_DVR_RULE_INFO_ALARM

实时上传事件信息结构体。

struct{
  DWORD                       dwSize;
  DWORD                       dwRelativeTime;
  DWORD                       dwAbsTime;
  NET_VCA_DEV_INFO            struDevInfo;
  NET_DVR_EVENT_INFO_LIST     struEventInfoList;
  BYTE                        byRes[40];
}NET_DVR_RULE_INFO_ALARM, *LPNET_DVR_RULE_INFO_ALARM;

Members

dwSize
结构体大小
dwRelativeTime
相对时标
dwAbsTime
绝对时标
struDevInfo
前端设备信息
struEventInfoList
事件信息列表
byRes1
保留

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_DVR_SADP_VERIFY

校验信息结构体。

struct{
  char             chPassword[PASSWD_LEN];
  NET_DVR_IPADDR   struOldIP;
  WORD             wOldPort;
  BYTE             byRes[62];
}NET_DVR_SADP_VERIFY,*LPNET_DVR_SADP_VERIFY;

Members

chPassword
管理员用户密码
struOldIP
修改前的IP地址
wOldPort
修改前的端口号
byRes
保留，置为0

See Also

NET_DVR_UpdateSadpInfo


NET_DVR_SADPINFO

单个IPC信息结构体。

struct{
  NET_DVR_IPADDR   struIP;
  WORD             wPort;
  WORD             wFactoryType;
  char             chSoftwareVersion[SOFTWARE_VERSION_LEN];
  char             chSerialNo[16];
  WORD             wEncCnt;
  BYTE             byMACAddr[MACADDR_LEN];
  NET_DVR_IPADDR   struSubDVRIPMask;
  NET_DVR_IPADDR   struGatewayIpAddr;
  NET_DVR_IPADDR   struDnsServer1IpAddr;
  NET_DVR_IPADDR   struDnsServer2IpAddr;
  BYTE             byDns;
  BYTE             byDhcp;
  BYTE             byRes[158];
}NET_DVR_SADPINFO,*LPNET_DVR_SADPINFO;

Members

struIP
设备IP地址
wPort
设备端口号
wFactoryType
设备厂家类型
chSoftwareVersion
软件版本
chSerialNo
序列号
wEncCnt
编码通道个数
byMACAddr
MAC地址
struSubDVRIPMask
子网掩码
struGatewayIpAddr
网关
struDnsServer1IpAddr
域名服务器1的IP地址
struDnsServer1IpAddr
域名服务器2的IP地址
byDns
是否开启DNS，0-不开启；1-开启
byDhcp
是否开启DHCP，0-不开启；1-开启
byRes
保留，置为0

See Also

NET_DVR_SADPINFO_LIST


NET_DVR_SADPINFO_LIST

IPC信息列表结构体。

struct{
  DWORD              dwSize;
  WORD               wSadpNum;
  BYTE               byRes[6];
  NET_DVR_SADPINFO   struSadpInfo[MAX_SADP_NUM];
}NET_DVR_SADPINFO_LIST,*LPNET_DVR_SADPINFO_LIST;

Members

dwSize
结构体大小
wSadpNum
搜索到的设备个数
byRes
保留，置为0
struSadpInfo
单个设备的信息

See Also

NET_DVR_GetSadpInfoList


NET_DVR_SCALECFG

视频输出缩放参数结构体。

struct{
  DWORD    dwSize;
  DWORD    dwMajorScale;
  DWORD    dwMinorScale;
  DWORD    dwRes[2];
}NET_DVR_SCALECFG, *LPNET_DVR_SCALECFG;

Members

dwSize
结构体大小
dwMajorScale
主显示：0-不缩放，1-缩放
dwMinorScale
辅显示：0-不缩放，1-缩放
dwRes
保留，置为0

See Also

NET_DVR_GetScaleCFG_V30 NET_DVR_SetScaleCFG_V30


NET_DVR_SCHED_CAPTURECFG

抓图计划参数结构体。

struct{
  DWORD                       dwSize;
  BYTE                        byEnable;
  BYTE                        byRes1[3];
  NET_DVR_CAPTURE_DAY         struCaptureDay[MAX_DAYS];
  NET_DVR_CAPTURE_SCHED       struCaptureSched[MAX_DAYS][MAX_TIMESEGMENT_V30];
  NET_DVR_CAPTURE_DAY         struCaptureHoliday;
  NET_DVR_CAPTURE_SCHED       struHolidaySched[MAX_TIMESEGMENT_V30];
  DWORD                       dwRecorderDuration;
  BYTE                        byRes[40];
}NET_DVR_SCHED_CAPTURECFG, *LPNET_DVR_SCHED_CAPTURECFG;

Members

dwSize
结构体大小
byEnable
是否抓图
byRes1
保留
struCaptureDay
全天抓图计划
struCaptureSched
时间段抓图布防计划
struCaptureHoliday
假日抓图计划
struHolidaySched
假日抓图时间段布防计划
dwRecorderDuration
抓图保存最长时间，单位：天，0xffffffff表示该值无效
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_SCHEDTIME

起止时间段参数结构体。

struct{
  BYTE    byStartHour;
  BYTE    byStartMin;
  BYTE    byStopHour;
  BYTE    byStopMin;
}NET_DVR_SCHEDTIME, *LPNET_DVR_SCHEDTIME;

Members

byStartHour
开始时间：时
byStartMin
开始时间：分
byStopHour
结束时间：时
byStopMin
结束时间：分


NET_DVR_SCREEN_CONTROL

屏幕控制结构体。

struct{
  DWORD    dwSize;
  DWORD    dwCommand;
  BYTE     byProtocol;
  BYTE     byRes[71];
}NET_DVR_SCREEN_CONTROL, *LPNET_DVR_SCREEN_CONTROL;

Members

dwSize
结构体大小
dwCommand
控制方法：1- 开，2- 关
byProtocol
屏幕协议：1- 双旗低亮，2- 双旗高亮
byRes
保留，置为0

See Also

NET_DVR_ScreenCtrl


NET_DVR_SCREEN_WINCFG

窗口信息结构体。

struct{
  DWORD                  dwSize;
  BYTE                   byVaild;
  BYTE                   byInputType;
  WORD                   wInputIdx;
  DWORD                  dwLayerIdx;
  NET_DVR_RECTCFG        struWin;
  BYTE                   byWnd;
  BYTE                   byCBD;
  BYTE                   bySubWnd;
  BYTE                   byRes[21];
}NET_DVR_SCREEN_WINCFG, *LPNET_DVR_SCREEN_WINCFG;

Members

dwSize
结构体大小
byVaild
是否有效：0－无效，1－有效
byInputType
输入源类型：
enum _CAM_MODE_{
  CAM_BNC = 1,
  CAM_VGA = 2,
  CAM_DVI = 3,
  CAM_HDMI= 4,
  CAM_IP  = 5
}CAM_MODE
wInputIdx
输入源索引
dwLayerIdx
图层，0为最底层
struWin
目的窗口(相对显示墙)
byWnd
窗口号
byCBD
是否带背景：0- 无，1- 带背景，2- 不带背景
bySubWnd
是否子窗口: 0-不是，1-是
byRes
保留参数

See Also

NET_DVR_ScreenWinCtrl NET_DVR_GetDVRConfig


NET_DVR_SCREENALARMCFG

多屏控制器报警信息结构体。

struct{
  DWORD          dwSize;
  BYTE           byAlarmType;
  BYTE           byBoardType;
  BYTE           bySubException;
  BYTE           byRes1;
  WORD           wStartInputNum;
  WORD           wEndInputNum;
  BYTE           byRes2[16];
}NET_DVR_SCREENALARMCFG, *LPNET_DVR_SCREENALARMCFG;

Members

dwSize
结构体大小
byAlarmType
报警类型：1- 子板拔出，2- 子板插入，3- 子系统状态异常，4- 子系统恢复正常，5- 输入源异常，6-温度报警
byBoardType
1- 输入板，2- 输出板
bySubException
输入异常时具体子异常：1- 分辨率改变，2- 接口改变，3- 分辨率错误
byRes1
保留，置为0
wStartInputNum
异常输入源（异常起点）
wEndInputNum
异常输入源（异常终点）
byRes2
保留，置为0

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_DVR_SCREENCONTROL_ABILITY

多屏控制器能力参数结构体。

struct{
  DWORD                dwSize;
  BYTE                 byLayoutNum;
  BYTE                 byWinNum;
  BYTE                 byOsdNum;
  BYTE                 byLogoNum;
  BYTE                 byInputStreamNum;
  BYTE                 byOutputChanNum;
  BYTE                 byCamGroupNum;
  BYTE                 byPlanNum;
  BYTE                 byIsSupportOSD;
  BYTE                 byIsSupportLogo;
  BYTE                 byIsSupportPlan;
  BYTE                 byIsSupportGroup;
  BYTE                 byIsSupportLayout;
  BYTE                 byIsSupportPlayBack;
  BYTE                 byMatrixInputNum;
  BYTE                 byMatrixOutputNum;
  NET_DVR_DISPINFO     struVgaInfo;
  NET_DVR_DISPINFO     struBncInfo;
  NET_DVR_DISPINFO     struHdmiInfo;
  NET_DVR_DISPINFO     struDviInfo;
  BYTE                 byWinLayer;
  BYTE                 byPicSpan;
  BYTE                 byRes[58];
}NET_DVR_SCREENCONTROL_ABILITY, *LPNET_DVR_SCREENCONTROL_ABILITY;

Members

dwSize
结构体大小
byLayoutNum
布局个数
byWinNum
屏幕窗口个数
byOsdNum
OSD个数
byLogoNum
Logo个数
byInputStreamNum
输入源个数
byOutputChanNum
输出通道个数
byCamGroupNum
分组个数
byPlanNum
预案个数
byIsSupportOSD
是否支持OSD
byIsSupportLogo
是否支持logo
byIsSupportPlan
是否支持预案
byIsSupportGroup
是否支持分组
yIsSupportLayout
是否支持布局管理
byIsSupportPlayBack
是否支持回放
byMatrixInputNum
输入源支持最大个数
byMatrixOutputNum
输出源支持最大个数
struVgaInfo
VGA输出信息
struBncInfo
BNC输出信息
struHdmiInfo
HDMI输出信息
struDviInfo
DVI输出信息
byWinLayer
单个屏幕上最大的窗口层数
byPicSpan
底图跨度，一张底图最多可覆盖的屏幕数
byRes
保留

See Also

NET_DVR_GetDeviceAbility


NET_DVR_SCREENINFO

大屏拼接信息结构体。

struct{
  BYTE      bySupportBigScreenNums;
  BYTE      byStartBigScreenNum;
  BYTE      byMaxScreenX;
  BYTE      byMaxScreenY;
  BYTE      byRes[8];
}NET_DVR_SCREENINFO, *LPNET_DVR_SCREENINFO;

Members

bySupportBigScreenNums
支持的最多大屏拼接数量
byStartBigScreenNum
大屏拼接起始序号
byMaxScreenX
水平方向屏幕个数
byMaxScreenY
垂直方向屏幕个数。大屏拼接模式：byMaxScreenX*byMaxScreenY，例如3*3，共有9块屏幕组成了一个大屏
byRes
保留，置为0

See Also

NET_DVR_MATRIX_ABILITY_V41


NET_DVR_SDKABL

SDK功能信息结构体。

struct{
  DWORD     dwMaxLoginNum;
  DWORD     dwMaxRealPlayNum;
  DWORD     dwMaxPlayBackNum;
  DWORD     dwMaxAlarmChanNum;
  DWORD     dwMaxFormatNum;
  DWORD     dwMaxFileSearchNum;
  DWORD     dwMaxLogSearchNum;
  DWORD     dwMaxSerialNum;
  DWORD     dwMaxUpgradeNum;
  DWORD     dwMaxVoiceComNum;
  DWORD     dwMaxBroadCastNum;
  DWORD     dwRes[10];
}NET_DVR_SDKABL,*LPNET_DVR_SDKABL;

Members

dwMaxLoginNum
最大注册用户数
dwMaxRealPlayNum
最大实时预览的路数
dwMaxPlayBackNum
最大回放或下载的路数
dwMaxAlarmChanNum
最大建立报警通道的路数
dwMaxFormatNum
最大硬盘格式化的路数
dwMaxFileSearchNum
最大文件搜索的路数
dwMaxLogSearchNum
最大日志搜索的路数
dwMaxSerialNum
最大建立透明通道的路数
dwMaxUpgradeNum
最大升级的路数
dwMaxVoiceComNum
最大语音转发的路数
dwMaxBroadCastNum
最大语音广播的路数
dwRes
保留，置为0

See Also

NET_DVR_GetSDKAbility


NET_DVR_SDKSTATE

SDK状态信息结构体。

struct{
  DWORD     dwTotalLoginNum;
  DWORD     dwTotalRealPlayNum;
  DWORD     dwTotalPlayBackNum;
  DWORD     dwTotalAlarmChanNum;
  DWORD     dwTotalFormatNum;
  DWORD     dwTotalFileSearchNum;
  DWORD     dwTotalLogSearchNum;
  DWORD     dwTotalSerialNum;
  DWORD     dwTotalUpgradeNum;
  DWORD     dwTotalVoiceComNum;
  DWORD     dwTotalBroadCastNum;
  DWORD     dwRes[10];
}NET_DVR_SDKSTATE,*LPNET_DVR_SDKSTATE;

Members

dwTotalLoginNum
当前注册的用户数
dwTotalRealPlayNum
当前实时预览的路数
dwTotalPlayBackNum
当前回放或下载的路数
dwTotalAlarmChanNum
当前建立报警通道的路数
dwTotalFormatNum
当前硬盘格式化的路数
dwTotalFileSearchNum
当前文件搜索的路数
dwTotalLogSearchNum
当前日志搜索的路数
dwTotalSerialNum
当前建立透明通道的路数
dwTotalUpgradeNum
当前升级的路数
dwTotalVoiceComNum
当前语音转发的路数
dwTotalBroadCastNum
当前语音广播的路数
dwRes
保留，置为0

See Also

NET_DVR_GetSDKState


NET_DVR_SEARCH_EVENT_PARAM

按事件搜索的条件参数结构体。

struct{
  WORD            wMajorType;
  WORD            wMinorType;
  NET_DVR_TIME    struStartTime;
  NET_DVR_TIME    struEndTime;
  BYTE            byRes[132];
  union{
           BYTE   byLen[SEARCH_EVENT_INFO_LEN];
           struct{
           BYTE   byAlarmInNo[MAX_ALARMIN_V30];
           BYTE   byRes[SEARCH_EVENT_INFO_LEN - MAX_ALARMIN_V30];
           }struAlarmParam;
           struct{
           BYTE   byMotDetChanNo[MAX_CHANNUM_V30];
           BYTE   byRes[SEARCH_EVENT_INFO_LEN - MAX_CHANNUM_V30];
           }struMotionParam;
           struct{
           BYTE   byChanNo[MAX_CHANNUM_V30];
           BYTE   byRuleID;
           BYTE   byRes1[43];
           }struVcaParam;
           struct{
           BYTE   byRoomIndex;
           BYTE   byRes[299];
           }struInquestParam;
           NET_DVR_STREAM_INFO   struIDInfo;
  }uSeniorParam;
}NET_DVR_SEARCH_EVENT_PARAM,*LPNET_DVR_SEARCH_EVENT_PARAM;

Members

wMajorType
搜索主类型，具体定义见下表：
enum _MAIN_EVENT_TYPE_{
  EVENT_MOT_DET        = 0,
  EVENT_ALARM_IN       = 1,
  EVENT_VCA_BEHAVIOR   = 2,
  EVENT_INQUEST        = 3,
  EVENT_STREAM_INFO    = 100
}MAIN_EVENT_TYPE
EVENT_MOT_DET
移动侦测
EVENT_ALARM_IN
报警输入
EVENT_VCA_BEHAVIOR
行为分析
EVENT_INQUEST
审讯事件
EVENT_STREAM_INFO
流ID信息
wMinorType
搜索次类型，根据主类型变化，0xffff表示全部。主类型为流ID信息时，0表示ID信息。
其他定义如下：

当主类型为行为事件时，次类型如下：

enum _BEHAVIOR_MINOR_TYPE_{
  EVENT_TRAVERSE_PLANE = 0,
  EVENT_ENTER_AREA,
  EVENT_EXIT_AREA,
  EVENT_INTRUSION,
  EVENT_LOITER,
  EVENT_LEFT_TAKE,
  EVENT_PARKING,
  EVENT_RUN,
  EVENT_HIGH_DENSITY,
  EVENT_STICK_UP,
  EVENT_INSTALL_SCANNER,
  EVENT_OPERATE_OVER_TIME,
  EVENT_FACE_DETECT,
  EVENT_LEFT,
  EVENT_TAKE
}BEHAVIOR_MINOR_TYPE
EVENT_TRAVERSE_PLANE
穿越警戒面
EVENT_ENTER_AREA
目标进入区域，支持区域规则
EVENT_EXIT_AREA
目标离开区域，支持区域规则
EVENT_INTRUSION
周界入侵，支持区域规则
EVENT_LOITER
徘徊，支持区域规则
EVENT_LEFT_TAKE
丢包捡包，支持区域规则
EVENT_PARKING
停车，支持区域规则
EVENT_RUN
奔跑，支持区域规则
EVENT_HIGH_DENSITY
区域内人员密度，支持区域规则
EVENT_STICK_UP
贴纸条，支持区域规则
EVENT_INSTALL_SCANNER
安装读卡器，支持区域规则
EVENT_OPERATE_OVER_TIME
操作超时
EVENT_FACE_DETECT
异常人脸
EVENT_LEFT
物品遗留
EVENT_TAKE
物品拿取

当主类型为审讯事件时，次类型如下：

主类型的宏定义 | 主类型的宏定义值 | 含义
EVENT_INQUEST | 3 | 审讯事件
次类型宏定义 | 宏定义值 | 含义
INQUEST_START_INFO | 0x1001 | 审讯开始信息
INQUEST_STOP_INFO | 0x1002 | 审讯停止信息
INQUEST_TAG_INFO | 0x1003 | 重点标记信息
INQUEST_SEGMENT_INFO | 0x1004 | 审讯片断状态信息
struStartTime
搜索的开始时间
struEndTime
搜索的停止时间
byRes
保留，置为0
byLen
长度
struAlarmParam结构为报警输入参数
byAlarmInNo
报警输入号，byAlarmInNo[0]若置1则表示查找由报警输入1触发的事件
byRes
密码
struMotionParam结构为移动侦测参数
byMotDetChanNo
移动侦测通道，byMotDetChanNo[0]若置1则表示查找由通道1发生移动侦测触发的事件
byRes
保留，置为0
struVcaParam结构为行为分析参数
byChanNo
触发事件的通道
byRuleID
规则ID，0xff表示全部
byRes1
保留，置为0
struInquestParam结构为审讯事件参数
byRoomIndex
审讯室编号，从1开始
byRes
保留，置为0
struIDInfo
按流ID搜索录像

See Also

NET_DVR_FindFileByEvent


NET_DVR_SEARCH_EVENT_RET

按事件搜索到的录像文件的信息结构体。

struct{
  WORD            wMajorType;
  WORD            wMinorType;
  NET_DVR_TIME    struStartTime;
  NET_DVR_TIME    struEndTime;
  BYTE            byChan[MAX_CHANNUM_V30];
  BYTE            byRes[36];
  union{
           struct{
           DWORD                 dwAlarmInNo;
           BYTE                  byRes[SEARCH_EVENT_INFO_LEN];
           }struAlarmRet;
           struct{
           DWORD                 dwMotDetNo;
           BYTE                  byRes[SEARCH_EVENT_INFO_LEN];
           }struMotionRet;
           struct{
           DWORD                 dwChanNo;
           BYTE                  byRuleID;
           BYTE                  byRes1[3];
           BYTE                  byRuleName[NAME_LEN];
           NET_VCA_EVENT_UNION   uEvent;
           }struVcaRet;
           struct{
           BYTE                  byRoomIndex;
           BYTE                  byDriveIndex;
           BYTE                  byRes1[6];
           DWORD                 dwSegmentNo;
           WORD                  wSegmetSize;
           WORD                  wSegmentState;
           BYTE                  byRes2[288];
           }struInquestRet;
           struct{
           DWORD                 dwRecordType;
           DWORD                 dwRecordLength;
           BYTE                  byLockFlag;
           BYTE                  byRes[295];
           }struStreamIDRet;
  }uSeniorRet;
}NET_DVR_SEARCH_EVENT_RET,*LPNET_DVR_SEARCH_EVENT_RET;

Members

wMajorType
搜索主类型，具体定义见下表：
enum _MAIN_EVENT_TYPE_{
  EVENT_MOT_DET        = 0,
  EVENT_ALARM_IN       = 1,
  EVENT_VCA_BEHAVIOR   = 2,
  EVENT_INQUEST        = 3,
  EVENT_STREAM_INFO    = 100
}MAIN_EVENT_TYPE
EVENT_MOT_DET
移动侦测
EVENT_ALARM_IN
报警输入
EVENT_VCA_BEHAVIOR
行为分析
EVENT_INQUEST
审讯事件
EVENT_STREAM_INFO
流ID信息
wMinorType
搜索次类型，根据主类型变化，0xffff表示全部。主类型为流ID信息时，0表示ID信息。
其他定义如下：

当主类型为行为事件时，次类型：

enum _BEHAVIOR_MINOR_TYPE_{
  EVENT_TRAVERSE_PLANE = 0,
  EVENT_ENTER_AREA,
  EVENT_EXIT_AREA,
  EVENT_INTRUSION,
  EVENT_LOITER,
  EVENT_LEFT_TAKE,
  EVENT_PARKING,
  EVENT_RUN,
  EVENT_HIGH_DENSITY,
  EVENT_STICK_UP,
  EVENT_INSTALL_SCANNER,
  EVENT_OPERATE_OVER_TIME,
  EVENT_FACE_DETECT,
  EVENT_OBJECT_PASTE=20
}BEHAVIOR_MINOR_TYPE
EVENT_TRAVERSE_PLANE
穿越警戒面
EVENT_ENTER_AREA
目标进入区域，支持区域规则
EVENT_EXIT_AREA
目标离开区域，支持区域规则
EVENT_INTRUSION
周界入侵，支持区域规则
EVENT_LOITER
徘徊，支持区域规则
EVENT_LEFT_TAKE
丢包捡包，支持区域规则
EVENT_PARKING
停车，支持区域规则
EVENT_RUN
快速移动，支持区域规则
EVENT_HIGH_DENSITY
区域内人员密度，支持区域规则
EVENT_STICK_UP
贴纸条，支持区域规则
EVENT_INSTALL_SCANNER
安装读卡器，支持区域规则
EVENT_OPERATE_OVER_TIME
操作超时
EVENT_FACE_DETECT
异常人脸
EVENT_LEFT
物品遗留
EVENT_TAKE
物品拿取

当主类型为审讯事件时，次类型：

次类型宏定义 | 宏定义值 | 含义
INQUEST_START_INFO | 0x1001 | 审讯开始信息
INQUEST_STOP_INFO | 0x1002 | 审讯停止信息
INQUEST_TAG_INFO | 0x1003 | 重点标记信息
INQUEST_SEGMENT_INFO | 0x1004 | 审讯片断状态信息
struStartTime
事件的开始时间
struEndTime
事件的停止时间，脉冲事件时停止时间和开始时间一样
byChan
触发的通道号
byRes
保留，置为0
struAlarmRet结构为报警输入结果
dwAlarmInNo
报警输入号
byRes
保留
struMotionRet结构为移动侦测结果
dwMotDetNo
移动侦测通道
byRes
保留，置为0
struVcaRet结构为行为分析结果
dwChanNo
触发事件的通道
byRuleID
规则ID，0xff表示全部
byRes1
保留，置为0
byRuleName
规则名称
uEvent
行为事件参数，根据返回的事件次类型（wMinorType）决定
struInquestRet结构为审讯事件结果
byRoomIndex
审讯室编号，从1开始
byDriveIndex
刻录机编号，从1开始
byRes1
保留，置为0
dwSegmentNo
本片断在本次审讯中的序号，从1开始
wSegmetSize
本片断的大小，单位M
wSegmentState
本片断状态：0-刻录正常，1-刻录异常，2-不刻录审讯
byRes2
保留，置为0
struStreamIDRet结构为流id录像查询结果
dwRecordType
录像类型：0xff- 全部录像，0- 定时录像，1- 移动侦测录像，2- 信号量IO报警录像，3- 信号量IO报警或移动侦测录像， 4- 信号量IO报警和移动侦测录像，5- 命令触发录像，6-手动录像，7- 震动报警录像，8- 环境触发报警录像， 9- 智能报警录像（包含逆行，越界，物品丢失，遗留物等），10- 遮挡报警录像
dwRecordLength
录像大小
byLockFlag
锁定标志：0- 没锁定，1- 锁定
byRes
保留，置为0

See Also

NET_DVR_FindNextEvent


NET_DVR_SENSOR_ALARM

模拟量上传数据结构体。

struct{
  DWORD               dwSize;
  DWORD               dwAbsTime;
  BYTE                byName[NAME_LEN];
  BYTE                bySensorChannel;
  BYTE                byType;
  BYTE                byAlarmType;
  BYTE                byAlarmMode;
  float               fValue;
  BYTE                byRes2[32];
}NET_DVR_SENSOR_ALARM, *LPNET_DVR_SENSOR_ALARM;

Members

dwSize
结构体大小
dwAbsTime
绝对时标信息，OSD显示信息
byName
传感器名称
bySensorChannel
模拟量通道
byType
模拟量类型，具体定义如下：
enum _SENSOR_TYPE_{
  SENSOR_TYPE_NONE           = 0,
  SENSOR_TYPE_TEMPERATURE    = 1,
  SENSOR_TYPE_HUMIDITY,
  SENSOR_TYPE_WINDSPEED,
  SENSOR_TYPE_GAS,
  SENSOR_TYPE_UNKNOW         = 255
}SENSOR_TYPE
SENSOR_TYPE_NONE
无
SENSOR_TYPE_TEMPERATURE
温度
SENSOR_TYPE_HUMIDITY
湿度
SENSOR_TYPE_WINDSPEED
风速
SENSOR_TYPE_GAS
气体
SENSOR_TYPE_UNKNOW
未定义
byAlarmType
报警类型
byAlarmMode
报警模式，作为平台报警程度判断功能，共五种模式: 15-HHHH、14-HHHL、12-HHLL、8HLLL、0-LLLL，即：
1111- 上上上上
1110- 上上上下
1100- 上上下下
1000- 上下下下
0000- 下下下下
fValue
当前模拟量的值
byRes2
保留

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_DVR_SENSOR_INFO

模拟量参数结构体。

struct{
  DWORD               dwSize;
  BYTE                byName[MAX_NAMELEN];
  BYTE                byEnable;
  BYTE                byValid;
  BYTE                byType;
  BYTE                byAlarmMode;
  float               fMeasureHigh;
  float               fMeasureLow;
  float               fAlarm1;
  float               fAlarm2;
  float               fAlarm3;
  float               fAlarm4;
  DWORD               dwOsdCfg;
  float               fSensitive;
  BYTE                byRes3[116];
}NET_DVR_SENSOR_INFO, *LPNET_DVR_SENSOR_INFO;

Members

dwSize
结构体大小
byName
传感器名称
byEnable
是否启用
byValid
是否有效，传感器正常不正常(该参数只能获取不能个配置)
byType
模拟量类型，具体定义如下：
enum _SENSOR_TYPE_{
  SENSOR_TYPE_NONE           = 0,
  SENSOR_TYPE_TEMPERATURE    = 1,
  SENSOR_TYPE_HUMIDITY,
  SENSOR_TYPE_WINDSPEED,
  SENSOR_TYPE_GAS,
  SENSOR_TYPE_UNKNOW         = 255
}SENSOR_TYPE
SENSOR_TYPE_NONE
无
SENSOR_TYPE_TEMPERATURE
温度
SENSOR_TYPE_HUMIDITY
湿度
SENSOR_TYPE_WINDSPEED
风速
SENSOR_TYPE_GAS
气体
SENSOR_TYPE_UNKNOW
未定义
byAlarmMode
报警模式，共五种模式: 15-HHHH、14-HHHL、12-HHLL、8HLLL、0-LLLL，即：
1111- 上上上上
1110- 上上上下
1100- 上上下下
1000- 上下下下
0000- 下下下下
fMeasureHigh
量程上限
fMeasureLow
量程下限
fAlarm1
报警限1
fAlarm2
报警限2
fAlarm3
报警限3
fAlarm4
报警限4，报警限1-4依次增大
dwOsdCfg
模拟量字符叠加，按位表示。0-15对应视频通道1-16
fSensitive
灵敏度
byRes3
保留

Remarks

当实时值的变化超过灵敏度的范围时，则表示实时值发生了变化，否则认为没有发生变化。如：灵敏度为0.1，则表示前后检测的两个值之差大于0.1时，则认为数据发生变化，需要上传；如果灵敏度为1，则表示变化超过1时上传。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_SERIAL_CATCHPIC_PARA

串口抓图参数结构体。

struct{
  BYTE      byStrFlag;
  BYTE      byEndFlag;
  WORD      wCardIdx;
  DWORD     dwCardLen;
  DWORD     dwTriggerPicChans;
}NET_DVR_SERIAL_CATCHPIC_PARA, *LPNET_DVR_SERIAL_CATCHPIC_PARA;

Members

byStrFlag
串口数据开始符
byEndFlag
串口数据结束符
wCardIdx
卡号相对起始位置
dwCardLen
卡号长度
dwTriggerPicChans
所触发的通道号，按位，从第1位开始计，即0x2表示第一通道

See Also

NET_DVR_JPEGCFG_V30


NET_DVR_SETUPALARM_PARAM

报警布防参数结构体。

struct{
  DWORD     dwSize;
  BYTE      byLevel;
  BYTE      byRes[15];
}NET_DVR_SETUPALARM_PARAM, *LPNET_DVR_SETUPALARM_PARAM;

Members

dwSize
结构体大小
byLevel
布防优先级：0- 一等级（高），1- 二等级（中），2- 三等级（低）
byRes
保留

See Also

NET_DVR_SetupAlarmChan_V41


NET_DVR_SHELTER

遮挡区域参数结构体。

struct{
  WORD    wHideAreaTopLeftX;
  WORD    wHideAreaTopLeftY;
  WORD    wHideAreaWidth;
  WORD    wHideAreaHeight;
}NET_DVR_SHELTER, *LPNET_DVR_SHELTER;

Members

wHideAreaTopLeftX
遮挡区域的x坐标
wHideAreaTopLeftY
遮挡区域的y坐标
wHideAreaWidth
遮挡区域的宽
wHideAreaHeight
遮挡区域的高

Remarks

SDK设定整个图像的区域大小为704*576，结构中遮挡区域的坐标以及宽和高需要转换成704*576大小区域下的坐标和宽高值。

See Also

NET_DVR_PICCFG_V30


NET_DVR_SHOWSTRING

字符叠加参数结构体。

struct{
  DWORD                      dwSize;
  NET_DVR_SHOWSTRINGINFO     struStringInfo[MAX_STRINGNUM];
}NET_DVR_SHOWSTRING,*LPNET_DVR_SHOWSTRING;

Members

dwSize
结构体大小
struStringInfo
要显示的字符内容

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_SHOWSTRING_V30


NET_DVR_SHOWSTRING_EX

字符叠加参数结构体。

struct{
  DWORD                      dwSize;
  NET_DVR_SHOWSTRINGINFO     struStringInfo[MAX_STRINGNUM_EX];
}NET_DVR_SHOWSTRING_EX,*LPNET_DVR_SHOWSTRING_EX;

Members

dwSize
结构体大小
struStringInfo
要显示的字符内容

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_SHOWSTRING_V30


NET_DVR_SHOWSTRING_V30

字符叠加参数结构体。

struct{
  DWORD                      dwSize;
  NET_DVR_SHOWSTRINGINFO     struStringInfo[MAX_STRINGNUM_V30];
}NET_DVR_SHOWSTRING_V30,*LPNET_DVR_SHOWSTRING_V30;

Members

dwSize
结构体大小
struStringInfo
要显示的字符内容

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_SHOWSTRING


NET_DVR_SHOWSTRINGINFO

字符叠加参数子结构体。

struct{
  WORD       wShowString;
  WORD       wStringSize;
  WORD       wShowStringTopLeftX;
  WORD       wShowStringTopLeftY;
  char       sString[44];
}NET_DVR_SHOWSTRINGINFO,*LPNET_DVR_SHOWSTRINGINFO;

Members

wShowString
预览的图象上是否显示字符：0－不显示，1－显示（显示区域范围为704*576，单个字符的大小为32*32）
wStringSize
该行字符的长度，不能大于44个字符
wShowStringTopLeftX
字符显示位置的x坐标
wShowStringTopLeftY
字符显示位置的y坐标
sString
要显示的字符内容

See Also

NET_DVR_SHOWSTRING_V30 NET_DVR_SHOWSTRING


NET_DVR_SINGLE_HD

设备硬盘信息配置结构体。

struct{
  DWORD     dwHDNo;
  DWORD     dwCapacity;
  DWORD     dwFreeSpace;
  DWORD     dwHdStatus;
  BYTE      byHDAttr;
  BYTE      byHDType;
  BYTE      byDiskDriver;
  BYTE      byRes1[1];
  DWORD     dwHdGroup;
  BYTE      byRecycling;
  BYTE      byRes2[119];
}NET_DVR_SINGLE_HD, *LPNET_DVR_SINGLE_HD;

Members

dwHDNo
硬盘号，取值范围[0,MAX_DISKNUM_V30-1]，其中#define MAX_DISKNUM_V30 33
dwCapacity
硬盘容量，该参数只能获取，不支持设置
dwFreeSpace
硬盘剩余空间，该参数只能获取，不支持设置
dwHdStatus
硬盘状态，该参数只能获取，不支持设置：0－正常，1－未格式化，2－错误，3－S.M.A.R.T状态，4－不匹配，5－休眠，6-未连接状态（ 网络硬盘）， 7-虚拟磁盘正常且支持扩容，8-虚拟磁盘次正常(未使用)，9-虚拟磁盘降级(未使用)，10-硬盘正在修复(9000v2.0)，11-硬盘正在格式化(9000v2.0)
byHDAttr
硬盘属性：0－默认，1－冗余（备份重要数据），2－只读
byHDType
硬盘类型：0-本地硬盘，1-ESATA硬盘，2-NFS硬盘，3-iSCSI硬盘，4-RAID虚拟磁盘
byDiskDriver
硬盘盘值，代表其ASCII字符
byRes1
保留，置为0
dwHdGroup
该硬盘属于哪个盘组，取值范围[1,MAX_HD_GROUP]，其中#define MAX_HD_GROUP 16
byRecycling
是否循环利用：0- 不循环利用，1- 循环利用
byRes2
保留，置为0

Remarks

本结构体中的dwCapacity、dwFreeSpace和dwHdStatus参数是关于设备本地硬盘的属性，因此只能获取该信息，不能设置。

See Also

NET_DVR_HDCFG


NET_DVR_SINGLE_HDGROUP

设备盘组信息配置结构体。

struct{
  DWORD     dwHDGroupNo;
  BYTE      byHDGroupChans[64];
  BYTE      byRes[8];
}NET_DVR_SINGLE_HDGROUP, *LPNET_DVR_SINGLE_HDGROUP;

Members

dwHDGroupNo
盘组号，该参数只能获取，不支持设置，取值范围[1,MAX_HD_GROUP]，其中#define MAX_HD_GROUP 16
byHDGroupChans
盘组对应的录像通道：0－该通道不录象到该盘组；1－录象到该盘组
struHDGroupAttr
保留，置为0

Remarks

本结构体中的dwHDGroupNo参数是指设备本地的盘组号，因此只能获取该信息，不能设置。

See Also

NET_DVR_HDGROUP_CFG


NET_DVR_SINGLE_NET_DISK_INFO

单个网络硬盘参数结构体。

struct{
  BYTE              byNetDiskType;
  BYTE              byRes1[3];
  NET_DVR_IPADDR    struNetDiskAddr;
  BYTE              sDirectory[PATHNAME_LEN];
  WORD              wPort;
  BYTE              byRes2[66];
}NET_DVR_SINGLE_NET_DISK_INFO, *LPNET_DVR_SINGLE_NET_DISK_INFO;

Members

byNetDiskType
网络硬盘类型：0-NFS，1-ISCSI
byRes1
保留，置为0
struNetDiskAddr
网络硬盘地址
sDirectory
路径
wPort
ISCSI协议端口，目前为默认端口
byRes2
保留，置为0

See Also

NET_DVR_NET_DISKCFG


NET_DVR_SINGLE_NFS

NFS配置子结构。

struct{
  char     sNfsHostIPAddr[16];
  BYTE     sNfsDirectory[PATHNAME_LEN];
}NET_DVR_SINGLE_NFS, *LPNET_DVR_SINGLE_NFS;

Members

sNfsHostIPAddr
网络文件系统主机IP地址
sNfsDirectory
NFS路径

See Also

NET_DVR_NFSCFG


NET_DVR_SINGLE_RS232

RS232串口参数子结构体。

struct{
  DWORD       dwBaudRate;
  BYTE        byDataBit;
  BYTE        byStopBit;
  BYTE        byParity;
  BYTE        byFlowcontrol;
  DWORD       dwWorkMode;
}NET_DVR_SINGLE_RS232, *LPNET_DVR_SINGLE_RS232;

Members

dwBaudRate
波特率(bps)，0-50，1-75，2-110，3-150，4-300，5-600，6-1200，7-2400，8-4800，9-9600，10-19200，11-38400，12-57600，13-76800，14-115.2k
byDataBit
数据有几位：0-5位，1-6位，2-7位，3-8位
byStopBit
停止位：0-1位，1-2位
byParity
是否校验：0-无校验，1-奇校验，2-偶校验
byFlowcontrol
是否流控：0-无，1-软流控,2-硬流控
dwWorkMode
工作模式，0－窄带传输(232串口用于PPP拨号)，1－控制台(232串口用于参数控制)，2－透明通道，3-ptz模式（审讯温湿度传感器），4-报警盒模式

See Also

NET_DVR_RS232CFG_V30


NET_DVR_SINGLESCREENCFG

大屏拼接子屏幕信息结构体。

struct{
  BYTE      byScreenSeq;
  BYTE      bySubSystemNum;
  BYTE      byDispNum;
  BYTE      byRes[9];
}NET_DVR_SINGLESCREENCFG, *LPNET_DVR_SINGLESCREENCFG;

Members

byScreenSeq
屏幕序号，0xff表示此屏幕不用
bySubSystemNum
解码子系统槽位号
byDispNum
解码子系统上对应显示通道号
byRes
保留，置为0

See Also

NET_DVR_BIGSCREENCFG


NET_DVR_SINGLESUBSYSTEMJOININFO

单个解码子系统参数结构体。

struct{
  BYTE                             bySubSystemType;
  BYTE                             byRes1[3];
  NET_DVR_DECSUBSYSTEMJIONSTATUS   struDecSub[MATRIX_MAXDECSUBSYSTEMCHAN];
  BYTE                             byRes[8];
}NET_DVR_SINGLESUBSYSTEMJOININFO, *LPNET_DVR_SINGLESUBSYSTEMJOININFO;

Members

bySubSystemType
子系统类型：0-无，1-解码用子系统，2-编码用子系统
byRes1
保留
struDecSub
解码子系统关联信息
byRes
保留

See Also

NET_DVR_ALLDECSUBSYSTEMJOININFO


NET_DVR_SIREN_PARAM

警号参数结构体。

struct{
  DWORD               dwSize;
  BYTE                byName[NAME_LEN];
  WORD                wDelay;
  BYTE                byRes1[2];
  BYTE                byAssociateAlarmIn[MAX_ALARMHOST_ALARMIN_NUM];
  BYTE                byRes2[68];
}NET_DVR_SIREN_PARAM, *LPNET_DVR_SIREN_PARAM;

Members

dwSize
结构体大小
byName
警号名称
wDelay
输出延迟，单位：秒。取值范围：0~3599s，0表示一直有输出
byRes1
保留
byAssociateAlarmIn
警号跟随的报警输入通道（多个报警输入同时触发一个警号输出），数组下标0表示报警输入1，依次类推。值为0- 不跟随，1- 跟随。
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_SMART_SEARCH_PARAM

智能搜索参数的结构体。

struct{
  BYTE            byChan;
  BYTE            byRes1[3];
  NET_DVR_TIME    struStartTime;
  NET_DVR_TIME    struEndTime;
  BYTE            byMotionScope[64][96];
  BYTE            bySensitivity;
  BYTE            byRes2[11];
}NET_DVR_SMART_SEARCH_PARAM,*LPNET_DVR_SMART_SEARCH_PARAM;

Members

byChan
通道号
byRes1
保留，置为0
struStartTime
录像的开始时间
struEndTime
录像的停止时间
byMotionScope
侦测区域：0-96位表示64行，共有96*64个小宏块，1-是移动侦测区域，0-非移动侦测区域
bySensitivity
动态分析搜索灵敏度（表示发生移动侦测区域占搜索区域的百分比，当移动侦测区域占搜索区域的百分比越低越容易搜出结果来，即灵敏度越高）。1-大于80%；2-大于40%小于80%；3-大于1%小于40%
byRes2
保留，置为0

See Also

NET_DVR_SmartSearch


NET_DVR_SMART_SEARCH_RET

智能搜索结果的结构体。

struct{
  NET_DVR_TIME    struStartTime;
  NET_DVR_TIME    struEndTime;
  BYTE            byRes[64];
}NET_DVR_SMART_SEARCH_RET,*LPNET_DVR_SMART_SEARCH_RET;

Members

struStartTime
移动侦测报警开始时间
struEndTime
移动侦测报警结束时间
byRes2
保留，置为0

See Also

NET_DVR_SearchNextInfo


NET_DVR_SMSRELATIVEPARAM

短信相关参数结构体。

struct{
  DWORD               dwSize;
  BYTE                bEnableSmsAlarm;
  BYTE                byRes1[7];
  NET_DVR_PHONECFG    struWhiteList[MAX_WHITELIST_NUM];
  BYTE                byRes2[32];
}NET_DVR_SMSRELATIVEPARAM, *LPNET_DVR_SMSRELATIVEPARAM;

Members

dwSize
结构体大小
bEnableSmsAlarm
是否启动短信报警，0- 禁用，1- 启用
byRes1
保留
struWhiteList
白名单列表
byRes2
保留

Remarks

各报警及异常需增加短信报警联动方式，当使能为真时，该联动方式便能生效。
短信报警需配合白名单使用，短信报警发生时将短信发送给白名单中的号码。
白名单也可以配合短信控制设备使用，只有白名单上的号码才允许发送控制短信给设备，使设备进行相应操作。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_SNAP_ABILITY

智能高清IPC能力集参数结构体。

struct{
  DWORD       dwSize;
  BYTE        byIoInNum;
  BYTE        byIoOutNum;
  BYTE        bySingleSnapNum;
  BYTE        byLightModeArrayNum;
  BYTE        byMeasureModeArrayNum;
  BYTE        byPlateEnable;
  BYTE        byLensMode;
  BYTE        byPreTriggerSupport;
  DWORD       dwAbilityType;
  BYTE        byIoSpeedGroup;
  BYTE        byIoLightGroup;
  BYTE        byRecogRegionType;
  BYTE        byRes[21];
}NET_DVR_SNAP_ABILITY, *LPNET_DVR_SNAP_ABILITY;

Members

dwSize
结构体大小
byIoInNum
IO输入口数
byIoOutNum
IO输出口数
bySingleSnapNum
单IO触发组数
byLightModeArrayNum
红绿灯模式组数
byMeasureModeArrayNum
测速模式组数
byPlateEnable
车牌识别能力，0-没有，1-有
byLensMode
前端镜头模式：0-CCD，1-CMOS
byPreTriggerSupport
是否支持原触发模式：0- 支持，1- 不支持
dwAbilityType
支持的触发模式能力，按位表示，定义如下所示：
enum _ITC_MAINMODE_ABILITY_{
  ITC_MODE_UNKNOW      = 0x0,
  ITC_POST_MODE        = 0x1,
  ITC_EPOLICE_MODE     = 0x2,
  ITC_POSTEPOLICE_MODE = 0x4
}ITC_MAINMODE_ABILITY
ITC_MODE_UNKNOW
无
ITC_POST_MODE
卡口模式
ITC_EPOLICE_MODE
电警模式
ITC_POSTEPOLICE_MODE
自卡式电警模式动
byIoSpeedGroup
支持的IO测速组数
byIoLightGroup
支持的IO红绿灯组数
byRecogRegionType
牌识区域支持的类型，定义如下所示：
enum _ITC_RECOG_REGION_TYPE_{
  ITC_REGION_RECT      = 0x0,
  ITC_REGION_POLYGON   = 0x1
}ITC_RECOG_REGION_TYPE
ITC_REGION_RECT
矩形
ITC_REGION_POLYGON
多边形
byRes
保留，置为0

See Also

NET_DVR_GetDeviceAbility


NET_DVR_SNAPCFG

单IO触发功能参数结构体。

struct{
  DWORD      dwSize;
  BYTE       byRelatedDriveWay;
  BYTE       bySnapTimes;
  WORD       wSnapWaitTime;
  WORD       wIntervalTime[MAX_INTERVAL_NUM];
  BYTE       byRes2[24];
}NET_DVR_SNAPCFG, *LPNET_DVR_SNAPCFG;

Members

dwSize
结构体大小
byRelatedDriveWay
触发IO关联的车道号，取值范围[0,9]
bySnapTimes
线圈抓拍次数，0-不抓拍，非0-连拍次数，目前最大5次
wSnapWaitTime
抓拍等待时间，单位ms，取值范围[0,60000]
wIntervalTime
连拍间隔时间，单位ms，取值范围[67,60000]
byRes2
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_SNAPENABLECFG

使能参数结构体。

struct{
  DWORD      dwSize;
  BYTE       byPlateEnable;
  BYTE       byRes1[2];
  BYTE       byFrameFlip;
  WORD       wFlipAngle;
  WORD       wLightPhase;
  BYTE       byLightSyncPower;
  BYTE       byFrequency;
  BYTE       byUploadSDEnable;
  BYTE       byPlateMode;
  BYTE       byUploadInfoFTP;
  BYTE       byAutoFormatSD;
  BYTE       byRes[58];
}NET_DVR_SNAPENABLECFG, *LPNET_DVR_SNAPENABLECFG;

Members

dwSize
结构体大小
byPlateEnable
是否支持车牌识别：0- 不支持，1- 支持
byRes1
保留，置为0
byFrameFlip
图像是否翻转：0- 不翻转，1- 翻转
wFlipAngle
图像翻转角度：0，90，180，270
wLightPhase
相位，取值范围[0, 360]
byLightSyncPower
是否信号灯电源同步：0- 不同步，1- 同步
byFrequency
信号频率
byUploadSDEnable
是否自动上传SD图片：0- 否，1- 是
byPlateMode
识别模式参数（仅iDS-65xx支持）：0- 视频触发，1- 外部触发。
byUploadInfoFTP
是否上传抓拍附加信息到FTP：0- 否，1- 是
byAutoFormatSD
是否自动格式化SD卡：0- 否，1- 是
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_SNMPCFG

SNMP协议配置结构体。

struct{
  DWORD          dwSize;
  BYTE           byEnable;
  BYTE           byRes1[3];
  WORD           wVersion;
  WORD           wServerPort;
  BYTE           byReadCommunity[NAME_LEN];
  BYTE           byWriteCommunity[NAME_LEN];
  BYTE           byTrapHostIP[DESC_LEN_64] ;
  WORD           wTrapHostPort;
  BYTE           byRes2[102];
}NET_DVR_SNMPCFG,*LPNET_DVR_SNMPCFG;

Members

dwSize
结构体大小
byEnable
0-禁用SNMP，1-启用SNMP
byRes1
保留，置为0
wVersion
snmp版本：1-v1，2-v2
wServerPort
snmp消息接收端口，默认161
byReadCommunity
读共同体，最多31，默认"public"
byWriteCommunity
写共同体，最多31 字节，默认"private"
byTrapHostIP
自陷主机ip地址描述，支持IPV4、IPV6或者域名描述
wTrapHostPort
trap主机端口
byRes2
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_SNMPCFG_V30

SNMP协议配置结构体。

struct{
  DWORD                  dwSize;
  BYTE                   byEnableV1;
  BYTE                   byEnableV2;
  BYTE                   byEnableV3;
  BYTE                   byRes1[3];
  WORD                   wServerPort;
  BYTE                   byReadCommunity[NAME_LEN];
  BYTE                   byWriteCommunity[NAME_LEN];
  BYTE                   byTrapHostIP[DESC_LEN_64] ;
  WORD                   wTrapHostPort;
  BYTE                   byRes2[2];
  NET_DVR_SNMPv3_USER    struRWUser;
  NET_DVR_SNMPv3_USER    struROUser;
  BYTE                   byRes3[32];
}NET_DVR_SNMPCFG_V30,*LPNET_DVR_SNMPCFG_V30;

Members

dwSize
结构体大小
byEnableV1
0- 禁用SNMP V1，1- 表示启用SNMP V1
byEnableV2
0- 禁用SNMP V2，1- 表示启用SNMP V2
byEnableV3
0- 禁用SNMP V3，1- 表示启用SNMP V3
byRes1
保留，置为0
wServerPort
snmp消息接收端口，默认161
byReadCommunity
读共同体，最多31，默认"public"
byWriteCommunity
写共同体，最多31 字节，默认"private"
byTrapHostIP
自陷主机ip地址描述，支持IPV4、IPV6或者域名描述
wTrapHostPort
trap主机端口
byRes2
保留，置为0
struRWUser
读写用户
struROUser
只读用户
byRes3
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_SNMPv3_USER

SNMP用户配置结构体。

struct{
  BYTE                   byUserName[NAME_LEN];
  BYTE                   bySecLevel;
  BYTE                   byAuthtype;
  BYTE                   byPrivtype;
  BYTE                   byRes[5];
  BYTE                   byAuthpass[PASSWD_LEN] ;
  BYTE                   byPrivpass[PASSWD_LEN] ;
}NET_DVR_SNMPv3_USER,*LPNET_DVR_SNMPv3_USER;

Members

byUserName
用户名
bySecLevel
安全级别：1- 无校验，2- 无授权校验，3- 授权校验
byAuthtype
认证类型：0- MD5，1- SHA，2- 无
byPrivtype
加密类型：0- DES，1- AES，2- 无
byRes
保留，置为0
byAuthpass
认证密码
byPrivpass
加密密码

See Also

NET_DVR_SNMPCFG_V30


NET_DVR_SPARE_DISK_PARAM

设备热备参数结构体。

struct{
  WORD    wPDSlot;
  WORD    wArrayID;
  BYTE    bySpareType;
  BYTE    byRes[7];
}NET_DVR_SPARE_DISK_PARAM, *LPNET_DVR_SPARE_DISK_PARAM;

Members

wPDSlot
物理磁盘槽位
wArrayID
所属的阵列ID（热备类型为指定阵列时有效）
bySpareType
热备类型：1-全局热备，2-指定阵列（此时阵列的ID有效）
byRes
保留，置为0

See Also

NET_DVR_SetSpareDisk


NET_DVR_SPEEDLMT_PARA

限速参数配置结构体。

struct{
  BYTE           bStartMaxSpeedLimit;
  BYTE           bStartMinSpeedLimit;
  BYTE           byRes[6];
  DWORD          dwMaxSpeedLimit;
  DWORD          dwMinSpeedLimit;
}NET_DVR_SPEEDLMT_PARA, *LPNET_DVR_SPEEDLMT_PARA;

Members

bStartMaxSpeedLimit
开启高速限制，0- 否，1- 是
bStartMinSpeedLimit
开启低速限制，0- 否，1- 是
byRes
保留
dwMaxSpeedLimit
最高限速，km/h
dwMinSpeedLimit
最低限速，km/h

See Also

NET_DVR_ENFORCESYS_PARA


NET_DVR_SPRCFG

车牌识别参数结构体。

struct{
  DWORD          dwSize;
  BYTE           byDefaultCHN[MAX_CHJC_NUM];
  BYTE           byPlateOSD;
  BYTE           bySendJPEG1;
  BYTE           bySendJPEG2;
  WORD           wDesignedPlateWidth;
  BYTE           byTotalLaneNum;
  BYTE           byRes1;
  WORD           wRecognizedLane;
  NET_VCA_RECT   struLaneRect[MAX_LANERECT_NUM];
  DWORD          dwRecogMode;
  BYTE           bySendPRRaw;
  BYTE           bySendBinImage;
  BYTE           byDelayCapture;
  BYTE           byUseLED;
  BYTE           byRes2[68];
}NET_DVR_SPRCFG, *LPNET_DVR_SPRCFG;

Members

dwSize
结构体大小
byDefaultCHN
设备运行省份的汉字简写
byPlateOSD
0-不叠加车牌彩色图，1-叠加车牌彩色图
bySendJPEG1
0-不传送近景JPEG图,1-传送近景JPEG图
bySendJPEG2
0-不传送远景JPEG图,1-传送远景JPEG图
wDesignedPlateWidth
车牌设计宽度
byTotalLaneNum
识别的车道数
byRes1
保留，置为0
wRecognizedLane
识别的车道号，按位表示，bit0表示车道1是否识别，0-不识别，1-识别
struLaneRect
车道识别区域
dwRecogMode
识别的类型，
bit0-背向识别：0-正向车牌识别，1-背向识别(尾牌识别) ；
bit1-大车牌识别或小车牌识别：0-小车牌识别，1-大车牌识别 ；
bit2-车身颜色识别：0-不采用车身颜色识别，在背向识别或小车牌识别时禁止启用，1-车身颜色识别；
bit3-农用车识别：0-不采用农用车识别，1-农用车识别；
bit4-模糊识别：0-不采用模糊识别，1-模糊识别；
bit5-帧定位或场定位：0-帧定位，1-场定位；
bit6-帧识别或场识别：0-帧识别，1-场识别；
bit7-晚上或白天：0-白天，1-晚上
bySendPRRaw
是否发送车辆原图（仅iDS-65xx支持）：0-不发送，1-发送
bySendBinImage
是否发送车牌二值图（仅iDS-65xx支持）：0-不发送，1-发送
byDelayCapture
延时抓拍控制（仅iDS-65xx支持），单位：帧
byUseLED
是否使用LED控制（仅iDS-65xx支持）：0-否，1-是
byRes2
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_STATUS_DETECTCFG

状态检测使能参数结构体。

struct{
  DWORD    dwSize;
  BYTE     byEnableTrigIODetect;
  BYTE     byEnableFlashOutDetect;
  BYTE     byEnableRS485Detect;
  BYTE     byRes[29];
}NET_DVR_STATUS_DETECTCFG,*LPNET_DVR_STATUS_DETECTCFG;

Members

dwSize
结构体大小
byEnableTrigIODetect
开启触发IO状态检测：1- 是，0- 否
byEnableFlashOutDetect
开启同步输出状态检测：1- 是，0- 否
byEnableRS485Detect
开启RS485接收状态检测：1- 是，0- 否
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_STREAM_INFO

流ID信息结构体。

struct{
  DWORD    dwSize;
  BYTE     byID[STREAM_ID_LEN];
  DWORD    dwChannel;
  BYTE     byRes[32];
}NET_DVR_STREAM_INFO,*LPNET_DVR_STREAM_INFO;

Members

dwSize
结构体大小
byID
流ID
dwChannel
关联的设备通道
byRes
保留，置为0

Remarks

如果设备不支持流ID标识功能，例如DVR设备，byID值设为0。

See Also

NET_DVR_SEARCH_EVENT_PARAM NET_DVR_STREAM_TIME_LOCK
NET_DVR_VOD_PARA NET_DVR_MANUAL_RECORD_PARA
NET_DVR_StopManualRecord


NET_DVR_STREAM_MEDIA_SERVER_CFG

流媒体服务器参数结构体。

struct{
  BYTE             byValid;
  BYTE             byRes1[3];
  NET_DVR_IPADDR   struDevIP;
  WORD             wDevPort;
  BYTE             byTransmitType;
  BYTE             byRes2[69];
}NET_DVR_STREAM_MEDIA_SERVER_CFG,*LPNET_DVR_STREAM_MEDIA_SERVER_CFG;

Members

byValid
是否启用流媒体服务器取流：0-不启用，非0-启用
byRes1
保留，置为0
struDevIP
流媒体服务器的IP地址
wDevPort
流媒体服务器端口
byTransmitType
传输协议类型：0-TCP，1-UDP
byRes2
保留，置为0

See Also

NET_DVR_MATRIX_CHAN_INFO_V30 NET_DVR_MATRIX_DEC_CHAN_INFO_V30 NET_DVR_PU_STREAM_CFG


NET_DVR_STREAM_MODE

取流方式配置结构体。

struct{
  BYTE                      byGetStreamType;
  BYTE                      byRes[3];
  NET_DVR_GET_STREAM_UNION  uGetStream;
}NET_DVR_STREAM_MODE,*LPNET_DVR_STREAM_MODE;

Members

byGetStreamType
取流方式：0- 直接从设备取流；1- 从流媒体取流；2- 通过IPServer获得IP地址后取流；3- 通过IPServer找到设备，再通过流媒体取设备的流；4- 通过流媒体由URL去取流
byRes
保留，置为0
uGetStream
不同取流方式联合体

See Also

NET_DVR_IPPARACFG_V40


NET_DVR_STREAM_MODE_TYPE

取流方式结构体。

struct{
  DWORD                       byGetStreamType;
  BYTE                        byRes[3];
  NET_DVR_STREAM_TYPE_UNION    uGetStream;
}NET_DVR_STREAM_MODE_TYPE,*LPNET_DVR_STREAM_MODE_TYPE;

Members

dwSize
取流方式：0- 直接从设备取流；1- 从流媒体取流；2- 通过IPServer获得ip地址后取流；3- 通过IPServer找到设备，再通过流媒体去设备的流；4- 通过流媒体由URL去取流
byRes
保留，置为0
uGetStream
不同取流方式

See Also

NET_DVR_STREAM_SRC_INFO


NET_DVR_STREAM_RECORD_INFO

录像信息结构体。

struct{
  DWORD                  dwSize;
  NET_DVR_RECORD_V30     struRecordInfo;
}NET_DVR_STREAM_RECORD_INFO,*LPNET_DVR_STREAM_RECORD_INFO;

Members

dwSize
结构体大小
struRecordInfo
录像信息

See Also

NET_DVR_GetDeviceConfig NET_DVR_SetDeviceConfig


NET_DVR_STREAM_RECORD_STATUS

流状态信息结构体。

struct{
  DWORD    dwSize;
  BYTE     byRecord;
  BYTE     byRes1[3];
  DWORD    dwRelatedHD;
  BYTE     byRes2[8];
}NET_DVR_STREAM_RECORD_STATUS,*LPNET_DVR_STREAM_RECORD_STATUS;

Members

dwSize
结构体大小
byRecord
(只读)录像状态：0- 不在录像，1- 在录像
byRes1
保留，置为0
dwRelatedHD
关联磁盘
byRes2
保留，置为0

See Also

NET_DVR_GetDeviceConfig NET_DVR_SetDeviceConfig


NET_DVR_STREAM_SRC_INFO

流的来源信息结构体。

struct{
  DWORD                        dwSize;
  NET_DVR_STREAM_INFO          struStreamInfo;
  NET_DVR_STREAM_MODE_TYPE     struStreamSrcInfo;
}NET_DVR_STREAM_SRC_INFO,*LPNET_DVR_STREAM_SRC_INFO;

Members

dwSize
结构体大小
struStreamInfo
流信息
struStreamSrcInfo
取流方式

See Also

NET_DVR_GetDeviceConfig NET_DVR_SetDeviceConfig


NET_DVR_STREAM_TIME_LOCK

按流ID对录像段加锁/解锁参数结构体。

struct{
  DWORD                  dwSize;
  NET_DVR_TIME           strBeginTime;
  NET_DVR_TIME           strEndTime;
  NET_DVR_STREAM_INFO    struStreamInfo;
  DWORD                  dwRecordType ;;
  DWORD                  dwLockDuration;
  BYTE                   byRes[12];
}NET_DVR_STREAM_TIME_LOCK,*LPNET_DVR_STREAM_TIME_LOCK;

Members

dwSize
结构体大小
strBeginTime
开始时间
strEndTime
结束时间
struStreamInfo
流信息
dwRecordType
录像类型：0xffffffff- 全部录像，0- 定时录像，1- 移动侦测录像，2- 报警录像，3- 报警或移动侦测录像，4- 报警和移动侦测录像， 5- 命令触发，6- 手动录像，7- 震动报警，8- 环境触发报警，9- 智能报警，10- 回传录像
dwLockDuration
锁定持续时间，单位：秒，0xffffffff- 永久锁定，0- 不锁或解锁
byRes
保留，置为0

See Also

NET_DVR_LockStreamFileByTime NET_DVR_UnlockStreamFileByTime


NET_DVR_STREAM_TYPE_UNION

取流方式联合体。

struct{
  NET_DVR_DIRECT_CONNECT_CHAN_INFO    struChanInfo;
  NET_DVR_PU_STREAM_URL               struStreamUrl;
}NET_DVR_STREAM_TYPE_UNION,*LPNET_DVR_STREAM_TYPE_UNION;

Members

struChanInfo
IP通道信息
struStreamUrl
通过流媒体到url取流

See Also

NET_DVR_STREAM_MODE_TYPE


NET_DVR_SWITCH_ALARM

开关量报警上传结构体。

struct{
  DWORD            dwSize;
  BYTE             byName[NAME_LEN];
  WORD             wSwitchChannel;
  BYTE             byAlarmType;
  BYTE             byEventType;
  DWORD            dwRelativeTime;
  NET_DVR_TIME_EX  struOperateTime;
  BYTE             byRes[28];
}NET_DVR_SWITCH_ALARM, *LPNET_DVR_SWITCH_ALARM;

Members

dwSize
结构体大小
byName
开关量名称
wSwitchChannel
开关量通道，取值范围：0~255
byAlarmType
报警类型：0- 正常，1- 短路，2- 断路
byEventType
事件类型：0- 报警，1- 报警主机防区故障
dwRelativeTime
相对时间点
struOperateTime
报警信息上传时间
byRes
保留

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_DVR_SYNCHRONOUS_IPC

同步前端IPC设备参数配置结构体。

struct{
  DWORD   dwSize;
  BYTE    byEnable;
  BYTE    byRes[7];
}NET_DVR_SYNCHRONOUS_IPC, *LPNET_DVR_SYNCHRONOUS_IPC;

Members

dwSize
结构体大小
byEnable
是否启用，同步前端IPC设备的参数
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_TIME

时间参数结构体。

struct{
  DWORD    dwYear;
  DWORD    dwMonth;
  DWORD    dwDay;
  DWORD    dwHour;
  DWORD    dwMinute;
  DWORD    dwSecond;
}NET_DVR_TIME, *LPNET_DVR_TIME;

Members

dwYear
年
dwMonth
月
dwDay
日
dwHour
时
dwMinute
分
dwSecond
秒

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_TIME_EX

时间参数结构体。

struct{
  WORD    wYear;
  BYTE    byMonth;
  BYTE    byDay;
  BYTE    byHour;
  BYTE    byMinute;
  BYTE    bySecond;
  BYTE    byRes;
}NET_DVR_TIME_EX, *LPNET_DVR_TIME_EX;

Members

wYear
年
byMonth
月
byDay
日
byHour
时
byMinute
分
bySecond
秒
byRes
保留

See Also

NET_DVR_ALARMHOST_EXCEPTION_ALARM
NET_DVR_GPSALARMINFO NET_DVR_SWITCH_ALARM


NET_DVR_TIME_FORMAT

ATM时间显示格式结构体。

struct{
  BYTE    byTimeForm;
  BYTE    byRes1[23];
  BYTE    byHourMode;
  BYTE    byRes2[3];
  char    chSeprator[4];;
  char    chDisplaySeprator[4];
  BYTE    byDisplayForm;
  BYTE    byRes3[3];
  BYTE    byDisplayHourMode;
  BYTE    byRes4[19];
}NET_DVR_TIME_FORMAT, *LPNET_DVR_TIME_FORMAT;

Members

byTimeForm
时间显示格式，1-HH MM SS；0- HH MM
byRes1
保留
byHourMode
小时格式，0-12；1-24
byRes2
保留
chSeprator
分隔符
chDisplaySeprator
显示分隔符
byDisplayForm
0~5，3个item的排列组合
byRes3
保留
byDisplayHourMode
小时显示格式，0-12；1-24
byRes4
保留

See Also

NET_DVR_ATM_PACKAGE_TIME


NET_DVR_TIME_LOCK

录像段加锁/解锁参数结构体。

struct{
  DWORD           dwSize;
  NET_DVR_TIME    strBeginTime;
  NET_DVR_TIME    strEndTime;
  DWORD           dwChannel;
  DWORD           dwRecordType;
  DWORD           dwLockDuration;
  BYTE            byRes[12];
}NET_DVR_TIME_LOCK,*LPNET_DVR_TIME_LOCK;

Members

dwSize
结构体大小
strBeginTime
开始时间
strEndTime
结束时间
dwChannel
通道号，0xffffffff表示所有通道
dwRecordType
录像类型：0xffffffff- 全部录像，0- 定时录像，1- 移动侦测录像，2- 报警录像，3- 报警或移动侦测录像，4- 报警和移动侦测录像， 5- 命令触发，6- 手动录像，7- 震动报警，8- 环境触发报警，9- 智能报警，10- 回传录像
dwLockDuration
锁定持续时间，单位：秒，0xffffffff- 永久锁定，0- 不锁或解锁
byRes
保留，置为0

See Also

NET_DVR_LockFileByTime NET_DVR_UnLockFileByTime


NET_DVR_TIMEPOINT

时间点参数结构体。

struct{
  DWORD    dwMonth;
  DWORD    dwWeekNo;
  DWORD    dwWeekDate;
  DWORD    dwHour;
  DWORD    dwMin;
}NET_DVR_TIMEPOINT, *LPNET_DVR_TIMEPOINT;

Members

dwMonth
月：[0,11]取值分别表示第1个月到第12个月
dwWeekNo
周：0－第1周，1－第2周，2－第3周，3－第4周，4－最后一周
dwWeekDate
星期：0－星期日，1－星期一，2－星期二，3－星期三，4－星期四，5－星期五，6－星期六
dwHour
小时：开始时间0－23，结束时间1－23
dwMin
分：0－59

See Also

NET_DVR_ZONEANDDST


NET_DVR_TIMING_CAPTURE

定时抓图参数结构体。

struct{
  NET_DVR_JPEGPARA      struJpegPara;
  DWORD                 dwPicInterval;
  BYTE                  byRes[12];
}NET_DVR_TIMING_CAPTURE, *LPNET_DVR_TIMING_CAPTURE;

Members

struJpegPara
定时抓图图片质量
dwPicInterval
定时抓图时间间隔
byRes
保留，置为0

See Also

NET_DVR_JPEG_CAPTURE_CFG


NET_DVR_TPS_ALARM

上传交通统计参数信息。

struct{
  DWORD                 dwSize;
  DWORD                 dwRelativeTime;
  DWORD                 dwAbsTime;
  NET_VCA_DEV_INFO      struDevInfo;
  NET_DVR_TPS_INFO      struTPSInfo;
  BYTE                  byRes1[32];
}NET_DVR_TPS_ALARM, *LPNET_DVR_TPS_ALARM;

Members

dwSize
结构体大小
dwRelativeTime
相对时标
dwAbsTime
绝对时标
struDevInfo
前端设备信息
struTPSInfo
交通参数统计信息
byRes1
保留

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_DVR_TPS_INFO

车道统计参数信息结构体。

struct{
  DWORD                 dwLanNum;
  NET_DVR_LANE_PARAM    struLaneParam[MAX_TPS_RULE];
}NET_DVR_TPS_INFO, *LPNET_DVR_TPS_INFO;

Members

dwLanNum
交通参数的车道数目
struLaneParam
车道参数结构体

See Also

NET_DVR_TPS_ALARM


NET_DVR_TPS_RULECFG

车道统计参数信息结构体。

struct{
  DWORD                   dwSize;
  NET_DVR_ONE_TPS_RULE    struOneTpsRule[MAX_TPS_RULE];
  BYTE                    byRes2[40];
}NET_DVR_TPS_RULECFG, *LPNET_DVR_TPS_RULECFG;

Members

dwSize
结构大小
struOneTpsRule
单条交通参数统计规则参数，下标对应交通参数ID
struOneTpsRule
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_TRACK_CALIBRATION_PARAM

标定参数结构体。

struct{
  BYTE                    byPointNum;
  BYTE                    byRes[3];
  NET_DVR_CB_POINT        struCBPoint[MAX_CALIB_PT];
}NET_DVR_TRACK_CALIBRATION_PARAM, *LPNET_DVR_TRACK_CALIBRATION_PARAM;

Members

byPointNum
有效标定点个数
byRes
保留
struCBPoint
标定点参数

See Also

NET_DVR_TRACK_CFG


NET_DVR_TRACK_CFG

双摄像机配置参数结构体。

struct{
  DWORD                              dwSize;
  BYTE                               byEnable;
  BYTE                               byFollowChan;
  BYTE                               byDomeCalibrate;
  BYTE                               byRes;
  NET_DVR_TRACK_CALIBRATION_PARAM    struCalParam;
}NET_DVR_TRACK_CFG, *LPNET_DVR_TRACK_CFG;

Members

dwSize
结构体大小
byEnable
标定使能，是否使从通道球机有效，0-从通道球机无效，1-从通道球机有效
byFollowChan
被控制的从通道的通道号
byDomeCalibrate
是否设置智能跟踪球机标定：0-否，1-是
byRes
保留
struCalParam
标定参数配置

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_TRACK_MODE

双摄像机跟踪模式配置参数结构体。

struct{
  DWORD      dwSize;
  BYTE       byTrackMode;
  BYTE       byRuleConfMode;
  BYTE       byRes[2];
  union{
        DWORD                        dwULen[4];
        NET_DVR_MANUAL_CTRL_INFO     struManualCtrl;
       }uModeParam;
}NET_DVR_TRACK_MODE,*LPNET_DVR_TRACK_MODE;

Members

dwSize
结构体大小
byTrackMode
跟踪模式，其定义如下：
enum _TRACK_MODE_{
 MANUAL_CTRL = 0,
 ALARM_TRACK,
}TRACK_MODE
MANUAL_CTRL
手动跟踪
ALARM_TRACK
报警触发跟踪
byRuleConfMode
规则配置跟踪模式：0-本地配置跟踪；1-远程配置跟踪
byRes
保留
dwULen
联合体的长度
struManualCtrl
手动跟踪结构参数

See Also

NET_DVR_GetTrackMode NET_DVR_SetTrackMode


NET_DVR_TRACK_PARAMCFG

本地菜单规则参数结构体。

struct{
  BYTE     dwSize;
  WORD     wAlarmDelayTime;
  WORD     wTrackHoldTime;
  BYTE     byTrackMode;
  BYTE     byPreDirection;
  BYTE     byTrackSmooth;
  BYTE     byZoomAdjust;
  BYTE     byMaxTrackZoom;
  BYTE     byRes[11];
}NET_DVR_TRACK_PARAMCFG, *LPNET_DVR_TRACK_PARAMCFG;

Members

dwSize
结构体大小
wAlarmDelayTime
报警延时时间，单位：秒，范围[1,120]
wTrackHoldTime
报警跟踪持续时间，单位：秒，范围[0,300]
byTrackMode
本地跟踪类型，具体定义如下：
enum _IPDOME_TRACK_MODE_{
  NO_TRACK = 0,
  PAMORAMA_TRACK,
  PATROL_TRACK
}IPDOME_TRACK_MODE
NO_TRACK
不启用本地跟踪
PAMORAMA_TRACK
全景跟踪
PATROL_TRACK
巡航跟踪
byPreDirection
跟踪方向预判：0-不启用，1-启用
byTrackSmooth
跟踪连续：0-不启用，1-启用
byZoomAdjust
倍率系数调整
byMaxTrackZoom
最大跟踪倍率系数，具体定义如下：
等级 | 倍率
0（关） | 标定值
1 | 标定值*0.5
2 | 标定值*0.65
3 | 标定值*0.75
4 | 标定值*0.9
5 | 标定值*1.1
6 | 标定值*1.2
7 | 标定值*1.3
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_TRADEINFO

ATM DVR上传的交易信息结构体。

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;

Members

m_Year
交易时间：年
m_Month
交易时间：月
m_Day
交易时间：日
m_Hour
交易时间：时
m_Minute
交易时间：分
m_Second
交易时间：秒
DeviceName
设备名称
dwChannelNumer
通道号
CardNumber
卡号
cTradeType
交易类型
dwCash
交易金额

See Also

NET_DVR_SetDVRMessageCallBack_V30 NET_DVR_StartListen_V30


NET_DVR_TRIGCOORDINATE

智能高清IPC线圈位置配置参数结构体。

struct{
  WORD      wTopLeftX;
  WORD      wTopLeftY;
  WORD      wWdith;
  WORD      wHeight;
}NET_DVR_TRIGCOORDINATE, *LPNET_DVR_TRIGCOORDINATE;

Members

wTopLeftX
线圈左上角横坐标（2个字节），默认为160
wTopLeftY
线圈左上角纵坐标（2个字节），默认为210
wWdith
线圈宽度（2个字节），默认为1000
wHeight
线圈高度（2个字节），默认为45

See Also

NET_DVR_VTPARAM


NET_DVR_USER

用户参数结构体。

struct{
  DWORD                  dwSize;
  NET_DVR_USER_INFO      struUser[MAX_USERNUM];
}NET_DVR_USER,*LPNET_DVR_USER;

Members

dwSize
结构体大小
struUser
用户信息参数

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_USER_V30


NET_DVR_USER_EX

用户参数结构体。

struct{
  DWORD                    dwSize;
  NET_DVR_USER_INFO_EX     struUser[MAX_USERNUM];
}NET_DVR_USER_EX,*LPNET_DVR_USER_EX;

Members

dwSize
结构体大小
struUser
用户信息参数

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_USER_V30


NET_DVR_USER_INFO

单用户参数结构体。

struct{
  BYTE      sUserName[NAME_LEN];
  BYTE      sPassword[PASSWD_LEN];
  DWORD     dwLocalRight[MAX_RIGHT];
  DWORD     dwRemoteRight[MAX_RIGHT];
  char      sUserIP[16];
  BYTE      byMACAddr[MACADDR_LEN];
}NET_DVR_USER_INFO,*LPNET_DVR_USER_INFO;

Members

sUserName
用户名
sPassword
密码
dwLocalRight
本地操作权限，参数取值为1表示使能：
数组0－本地控制云台
数组1－本地手动录象
数组2－本地回放
数组3－本地设置参数
数组4－本地查看状态、日志
数组5－本地高级操作(升级，格式化，重启，关机)
dwRemoteRight
远程操作权限，参数取值为1表示使能：
数组0－远程控制云台
数组1－远程手动录象
数组2－远程回放
数组3－远程设置参数
数组4－远程查看状态、日志
数组5－远程高级操作(升级，格式化，重启，关机)
数组6－远程发起语音对讲
数组7－远程预览
数组8－远程请求报警上传、报警输出
数组9－远程控制，本地输出
数组10－远程控制串口
sUserIP
用户IP地址（为0时表示允许任何地址）
byMACAddr
物理地址

See Also

NET_DVR_USER


NET_DVR_USER_INFO_EX

单用户参数结构体。

struct{
  BYTE      sUserName[NAME_LEN];
  BYTE      sPassword[PASSWD_LEN];
  DWORD     dwLocalRight[MAX_RIGHT];
  DWORD     dwLocalPlaybackRight;
  DWORD     dwRemoteRight[MAX_RIGHT];
  DWORD     dwNetPreviewRight;
  DWORD     dwNetPlaybackRight;
  char      sUserIP[16];
  BYTE      byMACAddr[MACADDR_LEN];
}NET_DVR_USER_INFO_EX,*LPNET_DVR_USER_INFO_EX;

Members

sUserName
用户名
sPassword
密码
dwLocalRight
本地操作权限，参数取值为1表示使能：
数组0－本地控制云台
数组1－本地手动录象
数组2－本地回放
数组3－本地设置参数
数组4－本地查看状态、日志
数组5－本地高级操作(升级，格式化，重启，关机)
dwLocalPlaybackRight
本地可以回放的通道，按位计算（如bit0：表示channel 1）
dwRemoteRight
远程操作权限，参数取值为1表示使能：
数组0－远程控制云台
数组1－远程手动录象
数组2－远程回放
数组3－远程设置参数
数组4－远程查看状态、日志
数组5－远程高级操作(升级，格式化，重启，关机，JPEG抓图)
数组6－远程发起语音对讲
数组7－远程预览
数组8－远程请求报警上传、报警输出
数组9－远程控制，本地输出
数组10－远程控制串口
dwNetPreviewRight
远程可以预览的通道，按位计算（如bit0：表示channel 1）
dwNetPlaybackRight
远程可以回放的通道，按位计算（如bit0：表示channel 1）
sUserIP
用户IP地址（为0时表示允许任何地址）
byMACAddr
物理地址

See Also

NET_DVR_USER_EX


NET_DVR_USER_INFO_V30

单用户参数结构体。

struct{
  BYTE                sUserName[NAME_LEN];
  BYTE                sPassword[PASSWD_LEN];
  BYTE                byLocalRight[MAX_RIGHT];
  BYTE                byRemoteRight[MAX_RIGHT];
  BYTE                byNetPreviewRight[MAX_CHANNUM_V30];
  BYTE                byLocalPlaybackRight[MAX_CHANNUM_V30];
  BYTE                byNetPlaybackRight[MAX_CHANNUM_V30];
  BYTE                byLocalRecordRight[MAX_CHANNUM_V30];
  BYTE                byNetRecordRight[MAX_CHANNUM_V30];
  BYTE                byLocalPTZRight[MAX_CHANNUM_V30];
  BYTE                byNetPTZRight[MAX_CHANNUM_V30];
  BYTE                byLocalBackupRight[MAX_CHANNUM_V30];
  NET_DVR_IPADDR      struUserIP;
  BYTE                byMACAddr[MACADDR_LEN];
  BYTE                byPriority;
  BYTE                byAlarmOnRight;
  BYTE                byAlarmOffRight;
  BYTE                byBypassRight;
  BYTE                byRes[14];
}NET_DVR_USER_INFO_V30,*LPNET_DVR_USER_INFO_V30;

Members

sUserName
用户名
sPassword
密码
byLocalRight
本地操作权限，参数取值为1表示使能：
数组0－本地控制云台
数组1－本地手动录象
数组2－本地回放
数组3－本地设置参数
数组4－本地查看状态、日志
数组5－本地高级操作（升级，硬盘管理（格式化、设置硬盘属性、设置盘组、阵列扩容、RAID固件升级））
数组6—本地查看参数
数组7—本地管理模拟和IP camera
数组8—本地备份
数组9—本地关机/重启
byRemoteRight
远程操作权限，参数取值为1表示使能：
数组0－远程控制云台
数组1－远程手动录象
数组2－远程回放
数组3－远程设置参数（恢复默认参数，写日志）
数组4－远程查看状态、日志
数组5－远程高级操作（升级，硬盘管理（格式化、设置硬盘属性、设置盘组、阵列扩容、RAID固件升级），JPEG抓图，前面板锁定与解锁）
数组6－远程发起语音对讲
数组7－远程预览
数组8－远程请求报警上传、报警输出
数组9－远程控制，本地输出
数组10－远程控制串口
数组11—远程查看参数
数组12—远程管理模拟和IP camera
数组13—远程关机/重启
byNetPreviewRight
远程可以预览的通道：1-有权限，0-无权限
byLocalPlaybackRight
本地可以回放的通道：1-有权限，0-无权限
byNetPlaybackRight
远程可以回放的通道：1-有权限，0-无权限
byLocalRecordRight
本地可以录像的通道：1-有权限，0-无权限
byNetRecordRight
远程可以录像的通道：1-有权限，0-无权限
byLocalPTZRight
本地可以控制PTZ的通道：1-有权限，0-无权限
byNetPTZRight
远程可以控制PTZ的通道：1-有权限，0-无权限
byLocalBackupRight
本地备份权限通道：1-有权限，0-无权限
struUserIP
用户IP地址(为0时表示允许任何地址)
byMACAddr
物理地址
byPriority
优先级：0xff-无，0-低，1-中，2-高
无（表示不支持优先级的设置）
低（默认权限：包括本地和远程回放，本地和远程查看日志和状态，本地和远程关机/重启）
中（包括本地和远程控制云台，本地和远程手动录像，本地和远程回放，语音对讲和远程预览，本地备份，本地/远程关机/重启）
高（管理员）
byAlarmOnRight
报警输入口布防权限
byAlarmOffRight
报警输入口撤防权限
byBypassRight
报警输入口旁路权限
byRes
保留，置为0

See Also

NET_DVR_USER_V30


NET_DVR_USER_V30

用户参数结构体。

struct{
  DWORD                     dwSize;
  NET_DVR_USER_INFO_V30     struUser[MAX_USERNUM_V30];
}NET_DVR_USER_V30,*LPNET_DVR_USER_V30;

Members

dwSize
结构体大小
struUser
用户信息参数

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_USER


NET_DVR_VCA_VERSION

智能库版本参数结构体。

struct{
  WORD    wMajorVersion;
  WORD    wMinorVersion;
  WORD    wRevisionNumber;
  WORD    wBuildNumber;
  WORD    wVersionYear;
  BYTE    byVersionMonth;
  BYTE    byVersionDay;
  BYTE    byRes[8];
}NET_DVR_VCA_VERSION, *LPNET_DVR_VCA_VERSION;

Members

wMajorVersion
主版本号
wMinorVersion
次版本号
wRevisionNumber
修正号
wBuildNumber
编译号
wVersionYear
版本日期：年
byVersionMonth
版本日期：月
byVersionDay
版本日期：日
byRes
保留

See Also

NET_DVR_GetVCAVersion


NET_DVR_VD_INFO

单个虚拟磁盘参数结构体。

struct{
  WORD                wSlot;
  BYTE                byStatus;
  BYTE                byRaidMode;
  WORD                wArrayID;
  BYTE                byRepair;
  BYTE                byRes1;
  BYTE                byArrayName[MAX_NAMELEN];
  BYTE                byName[MAX_NAMELEN];
  DWORD               dwHCapacity;
  DWORD               dwLCapacity;
  DWORD               dwHFreeSpace;
  DWORD               dwLFreeSpace;
  NET_DVR_BGA_INFO    struBgaInfo;
  BYTE                byRes2[80];
}NET_DVR_VD_INFO, *LPNET_DVR_VD_INFO;

Members

wSlot
虚拟磁盘槽位
byStatus
虚拟磁盘状态：0-正常，1-降级，2-已删除，3-磁盘丢失，4-下线，5-次正常，6-外来
byRaidMode
RAID方式，具体定义如下：
enum _RAID_MODE_{
  RAID0 = 1,
  RAID1,
  RAID10,
  RAID1E,
  RAID5,
  RAID6,
  RAID50,
  JBOD,
  RAID60
}RAID_MODE
RAID0
RAID0方式
RAID1
RAID1方式
RAID10
RAID10方式
RAID1E
RAID1E方式
RAID5
RAID5方式
RAID6
RAID6方式
RAID50
RAID50方式
JBOD
JBOD方式
RAID60
RAID60方式
wArrayID
所属阵列ID
byRepair
是否需要修复：0-不需要，1-需要
byRes1
保留
byArrayName
阵列名称
byName
虚拟磁盘名称
dwHCapacity
虚拟磁盘容量高32位)
dwLCapacity
虚拟磁盘容量低32位
dwHFreeSpace
虚拟磁盘剩余空间高32位
dwLFreeSpace
虚拟磁盘剩余空间低32位
struBgaInfo
后台任务运行状态
byRes2
保留，置为0

See Also

NET_DVR_VD_LIST


NET_DVR_VD_LIST

虚拟磁盘参数结构体。

struct{
  DWORD              dwSize;
  DWORD              dwCount;
  NET_DVR_VD_INFO    struVDInfo[SUPPORT_VD_NUM];
}NET_DVR_VD_LIST, *LPNET_DVR_VD_LIST;

Members

dwSize
结构体大小
dwCount
虚拟磁盘个数
struVDInfo
单个虚拟磁盘信息

See Also

NET_DVR_GetVDList


NET_DVR_VD_SLOT

单个虚拟磁盘阵列分配参数结构体。

struct{
  WORD    wVDSlot;
  BYTE    byAlloc;
  BYTE    byRes[5];
  DWORD   dwHVDSlotSize;
  DWORD   dwLVDSlotSize;
}NET_DVR_VD_SLOT, *LPNET_DVR_VD_SLOT;

Members

wVDSlot
虚拟磁盘槽位号
byAlloc
是否已经分配：0-未分配，1-已分配
byRes
保留
dwHVDSlotSize
虚拟磁盘空间大小高32位
dwLVDSlotSize
虚拟磁盘空间大小低32位

See Also

NET_DVR_ARRAY_SPACE_ALLOC_INFO


NET_DVR_VEHICLE_INFO

车辆信息参数结构体。

struct{
  DWORD      dwIndex;
  BYTE       byVehicleType;
  BYTE       byColorDepth;
  BYTE       byColor;
  BYTE       byRes1;
  WORD       wSpeed;
  WORD       wLength;
  BYTE       byIllegalType;
  BYTE       byRes[35];
}NET_DVR_VEHICLE_INFO, *LPNET_DVR_VEHICLE_INFO;

Members

dwIndex
车辆序号
byVehicleType
车辆类型，0-其他车辆，1-小型车，2-大型车
byColorDepth
车身颜色深浅，0-深色，1-浅色
byColor
车身颜色，0-其他色，1-白色，2-银色，3-灰色，4-黑色，5-红色，6-深蓝，7-蓝色，8-黄色，9-绿色，10-棕色，11-粉色，12-紫色
byRes1
保留
wSpeed
车辆速度，单位km/h
wLength
车身长度
byIllegalType
0-正常：1-低速，2-超速，3-逆行，4-闯红灯
byRes
保留

See Also

NET_DVR_PLATE_RESULT


NET_DVR_VGA_DISP_CHAN_CFG

显示通道参数结构体。

struct{
  DWORD   dwSize;
  BYTE    byAudio;
  BYTE    byAudioWindowIdx;
  BYTE    byVgaResolution;
  BYTE    byVedioFormat;
  DWORD   dwWindowMode;
  BYTE    byJoinDecChan[MAX_WINDOWS];
  BYTE    byEnlargeStatus;
  BYTE    byEnlargeSubWindowIndex;
  BYTE    byJoinDecoderId[MAX_WINDOWS];
  BYTE    byRes[2];
}NET_DVR_VGA_DISP_CHAN_CFG,*LPNET_DVR_VGA_DISP_CHAN_CFG;

Members

dwSize
结构体大小
byAudio
音频是否开启：0-否，1-是
byAudioWindowIdx
音频开启子窗口
byVgaResolution
VGA的分辨率，可以从能力集中获取设备支持的分辨率
byVedioFormat
视频制式，具体定义如下：
enum{
  VS_NON  = 0,
  VS_NTSC = 1,
  VS_PAL  = 2
}VIDEO_STANDARD
VS_NON
无
VS_NTSC
NTSC制式
VS_PAL
PAL制式
dwWindowMode
画面模式，从能力集里获取，0-1；1-2；2-4；3-9；4-16
byJoinDecChan
对于63系列解码器，VGA1可以任意关联其解码通道，其余VGA、BNC只能自显示，具体如下：

对于DS6301，有一个VGA，一个BNC，4个解码通道
VGA和BNC可以任意管理1～4解码通道

对于DS6304，有2个VGA，4个BNC，8个解码通道
VGA1可以关联1～8解码通道
BNC1、BNC2可以关联1～4解码通道
VGA2、BNC3、BNC4可以关联5～8解码通道

对于DS6308，有4个VGA，8个BNC，16个解码通道
VGA1可以关联1～16解码通道
BNC1、BNC2可以关联1～4解码通道
VGA2、BNC3、BNC4可以关联5～8解码通道
VGA3、BNC5、BNC6可以关联9～12解码通道
VGA4、BNC7、BNC8可以关联13～16解码通道
byEnlargeStatus
是否处于放大状态：0-不放大，1-放大
byEnlargeSubWindowIndex
放大的子窗口号
byJoinDecoderId
各个子窗口对应解码通道所对应的解码子系统的槽位号
byRes
保留，置为0

See Also

NET_DVR_MatrixGetDisplayCfg NET_DVR_MatrixSetDisplayCfg


NET_DVR_VGAPARA

VGA参数结构体。

struct{
  WORD       wResolution;
  WORD       wFreq;
  DWORD      dwBrightness;
}NET_DVR_VGAPARA,*LPNET_DVR_VGAPARA;

Members

wResolution
分辨率
wFreq
刷新频率
dwBrightness
亮度

See Also

NET_DVR_VIDEOOUT_V30 NET_DVR_VIDEOOUT


NET_DVR_VIDEO_EFFECT

视频参数结构体。

struct{
  DWORD   dwBrightValue;
  DWORD   dwContrastValue;
  DWORD   dwSaturationValue;
  DWORD   dwHueValue;
  DWORD   byRes[3];
}NET_DVR_VIDEO_EFFECT, *LPNET_DVR_VIDEO_EFFECT;

Members

dwBrightValue
亮度，取值范围[0,255]
dwContrastValue
对比度，取值范围[0,255]
dwSaturationValue
饱和度，取值范围[0,255]
dwHueValue
色度，取值范围[0,255]，保留
byRes
保留

See Also

NET_DVR_VIDEO_INPUT_EFFECT


NET_DVR_VIDEO_INPUT_EFFECT

通道视频输入图像参数配置结构体。

struct{
  DWORD                   dwSize;
  WORD                    wEffectMode;
  BYTE                    byRes1[146];
  NET_DVR_VIDEO_EFFECT    struCustomizeMode;
  BYTE                    byRes2[60];
}NET_DVR_VIDEO_INPUT_EFFECT,*LPNET_DVR_VIDEO_INPUT_EFFECT;

Members

dwSize
结构体大小
wEffectMode
模式，0- 标准，1- 预置模式1，2- 预置模式2，3- 预置模式3，255- 自定义
byRes1
保留
struCustomizeMode
自定义模式参数
byRes2
保留

Remarks

调用NET_DVR_ClientSetVideoEffect接口设置视频显示参数时，会将这里的模式改为自定义，然后设置视频参数。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_VIDEO_PLATFORM

显示通道配置结构体。

struct{
  BYTE             byRes[160];
  struct{
    BYTE           byJoinDecoderId[MAX_WINDOWS_V41];
    BYTE           byDecResolution[MAX_WINDOWS_V41];
    BYTE           byRes[88];
  }struVideoPlatform;
  struct{
    BYTE           byRes[160];
  }struNotVideoPlatform;
}NET_DVR_VIDEO_PLATFORM, *LPNET_DVR_VIDEO_PLATFORM;

Members

byRes
保留
byJoinDecoderId
各个子窗口对应解码通道所对应的解码子系统的槽位号(对于视频综合平台中解码子系统有效)
byDecResolution
显示窗口所解视频分辨率：1- D1，2- 720P，3- 1080P，设备端需要根据此分辨率进行解码通道的分配。如1分屏配置成1080P，则设备会把4个解码通道都分配给此显示窗口。

Remarks

在V41以下的版本中，byDecResolution[MAX_WINDOWS_V41]是byDecResolution，V41版本中改为数组。在低版本向高版本转换时，根据NET_DVR_MATRIX_VOUTCFG中的画面模式dwWindowMode对byDecResolution[MAX_WINDOWS_V41]进行赋值；高版本向低版本转化时用byDecResolution[0]。

See Also

NET_DVR_MATRIX_VOUTCFG


NET_DVR_VIDEOEFFECT

视频参数结构体。

struct{
  BYTE       byBrightnessLevel;
  BYTE       byContrastLevel;
  BYTE       bySharpnessLevel;
  BYTE       bySaturationLevel;
  BYTE       byHueLevel;
  BYTE       byRes[3];
}NET_DVR_VIDEOEFFECT, *LPNET_DVR_VIDEOEFFECT;

Members

byBrightnessLevel
亮度，取值范围[0,100]
byContrastLevel
对比度，取值范围[0,100]
bySharpnessLevel
锐度，取值范围[0,100]
bySaturationLevel
饱和度，取值范围[0,100]
byHueLevel
色度，取值范围[0,100]，保留
byRes
保留

See Also

NET_DVR_CAMERAPARAMCFG NET_DVR_INPUTSTREAMCFG NET_DVR_OUTPUTPARAM


NET_DVR_VIDEOOUT

视频输出参数结构体。

struct{
  DWORD                   dwSize;
  NET_DVR_VOOUT           struVOOut[MAX_VIDEOOUT];
  NET_DVR_VGAPARA         struVGAPara[MAX_VGA];
  NET_DVR_MATRIXPARA      struMatrixPara;
}NET_DVR_VIDEOOUT,*LPNET_DVR_VIDEOOUT;

Members

dwSize
结构体大小
struVOOut
模拟视频BNC输出口参数
struVGAPara
VGA参数
struMatrixPara
MATRIX参数

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

扩展结构可见

NET_DVR_VIDEOOUT_V30


NET_DVR_VIDEOOUT_V30

视频输出参数结构体。

struct{
  DWORD                       dwSize;
  NET_DVR_VOOUT               struVOOut[MAX_VIDEOOUT_V30];
  NET_DVR_VGAPARA             struVGAPara[MAX_VGA_V30];
  NET_DVR_MATRIXPARA_V30      struMatrixPara[MAX_MATRIXOUT];
  BYTE                        byRes[16];
}NET_DVR_VIDEOOUT_V30,*LPNET_DVR_VIDEOOUT_V30;

Members

dwSize
结构体大小
struVOOut
模拟视频BNC输出口参数
struVGAPara
VGA参数
struMatrixPara
MATRIX参数
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig

Reference Structure

该结构扩展源于

NET_DVR_VIDEOOUT


NET_DVR_VILOST

信号丢失报警参数结构体。

struct{
  BYTE                       byEnableHandleVILost;
  NET_DVR_HANDLEEXCEPTION    strVILostHandleType;
  NET_DVR_SCHEDTIME          struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT];
}NET_DVR_VILOST, *LPNET_DVR_VILOST;

Members

byEnableHandleVILost
是否处理信号丢失报警：0-不处理，1-处理
strVILostHandleType
处理方式参数
struAlarmTime
布防时间参数

See Also

NET_DVR_PICCFG_EX NET_DVR_PICCFG


NET_DVR_VILOST_V30

信号丢失报警参数结构体。

struct{
  BYTE                           byEnableHandleVILost;
  NET_DVR_HANDLEEXCEPTION_V30    strVILostHandleType;
  NET_DVR_SCHEDTIME              struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_V30];
}NET_DVR_VILOST_V30, *LPNET_DVR_VILOST_V30;

Members

byEnableHandleVILost
是否处理信号丢失报警：0-不处理，1-处理
strVILostHandleType
处理方式参数
struAlarmTime
布防时间参数

See Also

NET_DVR_PICCFG_V30


NET_DVR_VOD_PARA

录像回放结构体。

struct{
  DWORD                  dwSize;
  NET_DVR_STREAM_INFO    struIDInfo;
  NET_DVR_TIME           struBeginTime;
  NET_DVR_TIME           struEndTime;
  HWND                   hWnd;
  BYTE                   byDrawFrame;
  BYTE                   byRes[31];
}NET_DVR_VOD_PARA,*LPNET_DVR_VOD_PARA;

Members

dwSize
结构体大小
struIDInfo
流ID信息
struBeginTime
开始时间
struEndTime
结束时间
hWnd
回放的窗口句柄，若置为空，SDK仍能收到码流数据，但不解码显示
byDrawFrame
是否抽帧：0- 不抽帧，1- 抽帧
byRes
保留，置为0

Remarks

Linux下，HWND定义如下：

typedef struct __PLAYRECT
{
    int x;        //显示框左上角横坐标
    int y;        //显示框左上角纵坐标
    int uWidth;   //显示框宽度
    int uHeight;  //显示框高度
}PLAYRECT;
typedef PLAYRECT HWND;

See Also

NET_DVR_PlayBackByTime_V40


NET_DVR_VOICEREQUESETPARAM

对讲请求参数结构体。

struct{
  BYTE                  nVoiceChannel;
  BYTE                  byRes1[3];
  NET_DVR_IPADDR        struCuIp;
  WORD                  wPort;
  BYTE                  byRes2[10];
}NET_DVR_VOICEREQUESETPARAM, *LPNET_DVR_VOICEREQUESETPARAM;

Members

nVoiceChannel
对讲通道号
byRes1
保留
struCuIp
CU端IP地址
wPort
CU端口号
byRes2
保留

See Also

NET_DVR_VoiceRequest


NET_DVR_VOOUT

模拟视频输出参数结构体。

struct{
  BYTE      byVideoFormat;
  BYTE      byMenuAlphaValue;
  WORD      wScreenSaveTime;
  WORD      wVOffset;
  WORD      wBrightness;
  BYTE      byStartMode;
  BYTE      byEnableScaler;
}NET_DVR_VOOUT,*LPNET_DVR_VOOUT;

Members

byVideoFormat
输出制式：0-PAL，1-NTSC
byMenuAlphaValue
菜单与背景图象对比度
wScreenSaveTime
屏幕保护时间：0-从不，1-1分钟，2-2分钟，3-5分钟，4-10分钟，5-20分钟，6-30分钟
wVOffset
视频输出偏移
wBrightness
视频输出亮度
byStartMode
启动后视频输出模式：0-菜单，1-预览
byEnableScaler
是否启动缩放：0-不启动，1-启动

See Also

NET_DVR_VIDEOOUT_V30 NET_DVR_VIDEOOUT


NET_DVR_VTPARAM

虚拟线圈参数结构体。

struct{
  DWORD                       dwSize;
  BYTE                        byEnable;
  BYTE                        byIsDisplay;
  BYTE                        byLoopPos;
  BYTE                        bySnapGain;
  BYTE                        dwSnapShutter;
  NET_DVR_TRIGCOORDINATE      struTrigCoordinate;
  NET_DVR_TRIGCOORDINATE      struRes[MAX_VL_NUM];
  BYTE                        byTotalLaneNum;
  BYTE                        byPolarLenType;
  BYTE                        byDayAuxLightMode;
  BYTE                        byLoopToCalRoadBright;
  BYTE                        byRoadGrayLowTh;
  BYTE                        byRoadGrayHighTh;
  WORD                        wLoopPosBias;
  DWORD                       dwHfrShtterInitValue;
  DWORD                       dwSnapShtterInitValue;
  DWORD                       dwHfrShtterMaxValue;
  DWORD                       dwSnapShtterMaxValue;
  DWORD                       dwHfrShtterNightValue;
  DWORD                       dwSnapShtterNightMinValue;
  DWORD                       dwSnapShtterNightMaxValue;
  DWORD                       dwInitAfe;
  DWORD                       dwMaxAfe;
  WORD                        wResolutionX;
  WORD                        wResolutionY;
  WORD                        dwGainNightValue;
  WORD                        dwSceneMode;
  WORD                        dwRecordMode;
  NET_DVR_GEOGLOCATION        struGeogLocation;
  BYTE                        byTrigFlag[MAX_VL_NUM];
  BYTE                        byTrigSensitive[MAX_VL_NUM];
  BYTE                        byRes2[62];
}NET_DVR_VTPARAM, *LPNET_DVR_VTPARAM;

Members

dwSize
结构体大小
byEnable
是否使能虚拟线圈，0-不使用，1-使用
byIsDisplay
是否显示虚拟线圈，0-不显示，1-显示
byLoopPos
晚间触发线圈的偏向：0-正向，1-负向（保留）
bySnapGain
抓拍增益
dwSnapShutter
抓拍快门速度
struTrigCoordinate
虚拟线圈参数
struRes
保留
byTotalLaneNum
视频触发的车道数
byPolarLenType
偏振镜类型，0：不加偏振镜；1：加施耐德偏振镜
byDayAuxLightMode
白天辅助照明模式，0：无辅助照明；1：LED灯照明；2：闪光灯照明
byLoopToCalRoadBright
用以计算路面亮度的车道(虚拟线圈)
byRoadGrayLowTh
路面亮度低阈值初始化值，默认值为1
byRoadGrayHighTh
路面亮度高阈值初始化值，默认值为140
wLoopPosBias
晚间触发线圈位移，默认值为30
dwHfrShtterInitValue
连续图像曝光时间的初始值，单位us，默认值为2000
dwSnapShtterInitValue
抓拍图像曝光时间的初始值，默认值为500
dwHfrShtterMaxValue
连续图像曝光时间的最大值，默认值为20000
dwSnapShtterMaxValue
抓拍图像曝光时间的最大值，默认值为1500
dwHfrShtterNightValue
晚间连续图像曝光时间的设置值，默认值为3000
dwSnapShtterNightMinValue
晚间抓拍图像曝光时间的最小值，默认值为3000
dwSnapShtterNightMaxValue
晚间抓拍图像曝光时间的最大值，默认值为5000
dwInitAfe
增益的初始值，默认值为200
dwMaxAfe
增益的最大值，默认值为400
wResolutionX
设备当前分辨率宽
wResolutionY
设备当前分辨率高
dwGainNightValue
晚间增益，默认值70
dwSceneMode
场景模式
enum _SCENE_MODE_{
  UNKOWN_SCENE_MODE   = 0,
  HIGHWAY_SCENE_MODE  = 1,
  SUBURBAN_SCENE_MODE = 2,
  URBAN_SCENE_MODE    = 3,
  TUNNEL_SCENE_MODE   = 4
}SCENE_MODE
UNKOWN_SCENE_MODE
未知场景模式
HIGHWAY_SCENE_MODE
高速场景模式
SUBURBAN_SCENE_MODE
郊区场景模式(保留)
URBAN_SCENE_MODE
市区场景模式
TUNNEL_SCENE_MODE
隧道场景模式(保留)
dwRecordMode
录像标志：0-不录像，1-录像
struGeogLocation
地址位置
byTrigFlag
触发标志，0-车头触发；1-车尾触发；2-车头/车尾都触发
byTrigSensitive
触发灵敏度，1-100
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_WDR

宽动态参数结构体。

struct{
  BYTE       byWDREnabled;
  BYTE       byWDRLevel1;
  BYTE       byWDRLevel2;
  BYTE       byWDRContrastLevel;
  BYTE       byRes[16];
}NET_DVR_WDR, *LPNET_DVR_WDR;

Members

byWDREnabled
宽动态是否启用，0-不启用，1-启用，2-自动
byWDRLevel1
0-F
byWDRLevel2
0-F
byWDRContrastLevel
0-100
byRes
保留

See Also

NET_DVR_CAMERAPARAMCFG


NET_DVR_WHITEBALANCE

白平衡参数结构体。

struct{
  BYTE       byWhiteBalanceMode;
  BYTE       byWhiteBalanceModeRGain;
  BYTE       byWhiteBalanceModeBGain;
  BYTE       byRes[5];
}NET_DVR_WHITEBALANCE, *LPNET_DVR_WHITEBALANCE;

Members

byWhiteBalanceMode
0-手动白平衡; 1-自动白平衡1（范围小）; 2-自动白平衡2（范围宽，2200K-15000K）;3-自动控制
byWhiteBalanceModeRGain
手动白平衡时有效，手动白平衡R增益
byWhiteBalanceModeBGain
手动白平衡时有效，手动白平衡B增益
byRes
保留

See Also

NET_DVR_CAMERAPARAMCFG


NET_DVR_WIFI_CFG

IP监控设备无线参数结构体。

struct{
  DWORD                 dwSize;
  NET_DVR_WIFI_CFG_EX   struWifiCfg;
}NET_DVR_WIFI_CFG,*LPNET_DVR_WIFI_CFG;

Members

dwSize
结构体大小
struWifiCfg
无线参数结构

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_WIFI_CFG_EX

IP监控设备无线参数的子结构体。

struct{
  NET_DVR_WIFIETHERNET   struEtherNet;
  char                   sEssid[IW_ESSID_MAX_SIZE];
  DWORD                  dwMode;
  DWORD                  dwSecurity;
  union{
           struct{
           DWORD   dwAuthentication;
           DWORD   dwKeyLength;
           DWORD   dwKeyType;
           DWORD   dwActive;
           char    sKeyInfo[WIFI_WEP_MAX_KEY_COUNT][WIFI_WEP_MAX_KEY_LENGTH];
           }wep;
           struct{
           DWORD   dwKeyLength;
           char    sKeyInfo[WIFI_WPA_PSK_MAX_KEY_LENGTH];
           char    sRes;
           }wpa_psk;
  }key;
}NET_DVR_WIFI_CFG_EX,*LPNET_DVR_WIFI_CFG_EX;

Members

struEtherNet
无线网口参数
sEssid
SSID
dwMode
工作模式：0-mange 模式，1-ad-hoc模式
dwSecurity
安全模式：0-不加密，1-wep加密，2-wpa-psk，3-wpa-Enterprise，4-wpa2_psk
dwAuthentication
权限类型：0-开放式，1-共享式
dwKeyLength
密钥长度：0-64位；1-128位；2-152位
dwKeyType
密钥类型：0-16进制；1-ASCII
dwActive
激活哪个密钥（值有0、1、2、3），0表示激活第一个，以此类推
sKeyInfo
密钥信息
dwKeyLength
字符加密的长度，允许8-63个ASCII字符
sKeyInfo
字符密钥的信息
sRes
保留，置为0

See Also

NET_DVR_WIFI_CFG


NET_DVR_WIFI_WORKMODE

网口工作模式参数结构体。

struct{
  DWORD   dwSize;
  DWORD   dwNetworkInterfaceMode;
}NET_DVR_WIFI_WORKMODE,*LPNET_DVR_WIFI_WORKMODE;

Members

dwSize
结构体大小
dwNetworkInterfaceMode
网口工作模式：0-自动切换模式；1-有线模式

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_WIFIETHERNET

无线网口参数结构体。

struct{
  char    sIpAddress[16];
  char    sIpMask[16];
  BYTE    byMACAddr [MACADDR_LEN];
  BYTE    bRes[2];
  DWORD   dwEnableDhcp;
  DWORD   dwAutoDns;
  char    sFirstDns[16];
  char    sSecondDns[16];
  char    sGatewayIpAddr[16];
  BYTE    bRes2[8];
}NET_DVR_WIFIETHERNET,*LPNET_DVR_WIFIETHERNET;

Members

sIpAddress
设备IP地址
sIpMask
掩码
byMACAddr
物理地址，仅获取不能设置
bRes
保留，置为0
dwEnableDhcp
是否启动DHCP：0-不启动，1-启动
dwAutoDns
如果启动DHCP是否自动获取DNS：0-不自动获取 ，1-自动获取；对于有线如果启动DHCP，目前自动获取DNS
sFirstDns
第一个DNS域名
sSecondDns
第二个DNS域名
sGatewayIpAddr
网关地址
bRes2
保留，置为0

See Also

NET_DVR_WIFI_CFG_EX


NET_DVR_WINLIST

窗口链表结构体

struct{
  DWORD                  dwSize;
  WORD                   wScreenSeq;
  BYTE                   byRes[10];
  DWORD                  dwWinNum;
  BYTE                  *pBuffer;
  DWORD                  dwBufLen;
}NET_DVR_WINLIST, *LPNET_DVR_WINLIST;

Members

dwSize
结构体大小
wScreenSeq
设备序号
byRes
保留
dwWinNum
设备返回的窗口数量
pBuffer
窗口信息缓冲区，最大为224*sizeof(NET_DVR_SCREEN_WINCFG)
dwBufLen
所分配指针长度

See Also

NET_DVR_GetAllValidWinInfo


NET_DVR_WIRELESS_ALARM_STUDY_PARAM

无线报警学习参数结构体。

struct{
  DWORD    dwSize;
  DWORD    dwChannel;
  DWORD    byIndex;
  BYTE     byRes[15];
}NET_DVR_WIRELESS_ALARM_STUDY_PARAM,*LPNET_DVR_WIRELESS_ALARM_STUDY_PARAM;

Members

dwSize
结构体大小
dwChannel
通道号
byIndex
无线报警序号，取值范围：1~8
byRes
保留，置为0

See Also

NET_DVR_RemoteControl


NET_DVR_WORKSTATE

设备工作状态信息结构体。

struct{
  DWORD                  dwDeviceStatic;
  NET_DVR_DISKSTATE      struHardDiskStatic[MAX_DISKNUM];
  NET_DVR_CHANNELSTATE   struChanStatic[MAX_CHANNUM];
  BYTE                   byAlarmInStatic[MAX_ALARMIN];
  BYTE                   byAlarmOutStatic[MAX_ALARMOUT];
  DWORD                  dwLocalDisplay;
}NET_DVR_WORKSTATE,*LPNET_DVR_WORKSTATE;

Members

dwDeviceStatic
设备的状态：0－正常；1－CPU占用率太高，超过85%；2－硬件错误，例如串口异常
struHardDiskStatic
硬盘状态
struChanStatic
通道状态
byAlarmInHandle
报警输入口的状态：0-没有报警；1-有报警
byAlarmOutStatic
报警输出口的状态：0-没有输出，1-有报警输出
dwLocalDisplay
本地显示状态：0-正常，1-不正常

See Also

NET_DVR_GetDVRWorkState


NET_DVR_WORKSTATE_V30

设备工作状态信息结构体。

struct{
  DWORD                      dwDeviceStatic;
  NET_DVR_DISKSTATE          struHardDiskStatic[MAX_DISKNUM_V30];
  NET_DVR_CHANNELSTATE_V30   struChanStatic[MAX_CHANNUM_V30];
  BYTE                       byAlarmInStatic[MAX_ALARMIN_V30];
  BYTE                       byAlarmOutStatic[MAX_ALARMOUT_V30];
  DWORD                      dwLocalDisplay;
  BYTE                       byAudioChanStatus[MAX_AUDIO_V30];
  BYTE                       byRes[10];
}NET_DVR_WORKSTATE_V30,*LPNET_DVR_WORKSTATE_V30;

Members

dwDeviceStatic
设备的状态：0－正常；1－CPU占用率太高，超过85%；2－硬件错误，例如串口异常
struHardDiskStatic
硬盘状态
struChanStatic
通道状态
byAlarmInStatic
报警输入口的状态：0-没有报警；1-有报警
byAlarmOutStatic
报警输出口的状态：0-没有输出，1-有报警输出
dwLocalDisplay
本地显示状态：0-正常，1-不正常
byAudioChanStatus
表示语音通道的状态：0-未使用，1-使用中，0xff无效
byRes
保留，置为0

See Also

NET_DVR_GetDVRWorkState_V30


NET_DVR_ZERO_ZOOMCFG

零通道缩放参数结构体。

struct{
  DWORD           dwSize;
  NET_VCA_POINT   struPoint;
  BYTE            byState;
  BYTE            byPreviewNumber;
  BYTE            byPreviewSeq[MAX_WINDOW_V30];
  BYTE            byRes[30];
}NET_DVR_ZERO_ZOOMCFG,*LPNET_DVR_ZERO_ZOOMCFG;

Members

dwSize
结构体大小
struPoint
画面中的坐标点
byState
现在的状态：0-缩小；1-放大
byPreviewNumber
预览数目：0-1画面，1-4画面，2-9画面，3-16画面（该参数只读）
byPreviewSeq
画面通道信息（该参数只读）
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_ZEROCHANCFG

零通道压缩参数结构体。

struct{
  DWORD    dwSize;
  BYTE     byEnable;
  BYTE     byRes1[3];
  DWORD    dwVideoBitrate;
  DWORD    dwVideoFrameRate;
  BYTE     byRes2[32];
}NET_DVR_ZEROCHANCFG, *LPNET_DVR_ZEROCHANCFG;

Members

dwSize
结构体大小
byEnable
是否启用零通道编码：0-不启用；1-启用
byRes1
保留
dwVideoBitrate
码率：0-保留，1-16K(保留)，2-32K，3-48k，4-64K，5-80K，6-96K，7-128K，8-160k，9-192K，10-224K，11-256K，12-320K，13-384K，14-448K，15-512K，16-640K，17-768K，18-896K，19-1024K，20-1280K，21-1536K，22-1792K，23-2048K。
dwVideoFrameRate
帧率：0-全部，1-1/16，2-1/8，3-1/4，4-1/2，5-1，6-2，7-4，8-6，9-8，10-10，11-12，12-16，13-20，14-15，15-18，16－22
byRes2
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_DVR_ZONEANDDST

夏令时参数结构体。

struct{
  DWORD                  dwSize;
  BYTE                   byRes1[16];
  DWORD                  dwEnableDST;
  BYTE                   byDSTBias;
  BYTE                   byRes2[3];
  NET_DVR_TIMEPOINT      struBeginPoint;
  NET_DVR_TIMEPOINT      struEndPoint;
}NET_DVR_ZONEANDDST,*LPNET_DVR_ZONEANDDST;

Members

dwSize
结构体大小
byRes1
保留，置为0
dwEnableDST
是否启用夏时制：0－不启用，1－启用
byDSTBias
夏令时偏移值（以分钟计）：30min，60min，90min，120min
byRes2
保留，置为0
struBeginPoint
夏时制开始时间
struEndPoint
夏时制停止时间

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_IPC_AUX_ALARMCFG

辅助（PIR、无线）报警参数结构体。

struct{
  DWORD                          dwSize;
  NET_IPC_SINGLE_AUX_ALARMCFG    struAlarm[MAX_AUX_ALARM_NUM];
  BYTE                           byRes[64];
}NET_IPC_AUX_ALARMCFG,*LPNET_IPC_AUX_ALARMCFG;

Members

dwSize
结构体大小
struAlarm
辅助报警参数
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_IPC_AUX_ALARMCFG_UNION

辅助报警参数联合体。

struct{
  DWORD                        uLen[472];
  NET_IPC_PIR_ALARMCFG         struPIRAlarm;
  NET_IPC_WIRELESS_ALARMCFG    struWirelessAlarm;
}NET_IPC_AUX_ALARMCFG_UNION,*LPNET_IPC_AUX_ALARMCFG_UNION;

Members

uLen
联合体大小
struPIRAlarm
PIR报警参数
struWirelessAlarm
无线报警参数

See Also

NET_IPC_SINGLE_AUX_ALARMCFG


NET_IPC_AUXALARM_RESULT

辅助（PIR、无线）报警参数结构体。

struct{
  DWORD                            dwSize;
  DWORD                            dwChannel;
  BYTE                             byAlarmType;
  BYTE                             byRes1[3];
  NET_IPC_AUXALARM_UPLOAD_UNION    struAuxAlarm;
  BYTE                             byRes[64];
}NET_IPC_AUXALARM_RESULT,*LPNET_IPC_AUXALARM_RESULT;

Members

dwSize
结构体大小
dwChannel
通道号
byAlarmType
报警器类型，定义详见下表
enum _IPC_AUX_ALARM_TYPE_{
  IPC_AUXALARM_UNKNOW   = 0,
  IPC_AUXALARM_PIR      = 1,
  IPC_AUXALARM_WIRELESS = 2,
  IPC_AUXALARM_CALLHELP = 3,
}IPC_AUX_ALARM_TYPE
IPC_AUXALARM_UNKNOW
未知
IPC_AUXALARM_PIR
PIR报警
IPC_AUXALARM_WIRELESS
无线报警
IPC_AUXALARM_CALLHELP
呼救报警
byRes1
保留
struAuxAlarm
报警结果信息
byRes
保留

See Also

NET_DVR_SetDVRMessageCallBack_V30 NET_DVR_StartListen_V30


NET_IPC_AUXALARM_UPLOAD_UNION

报警结果参数联合体。

struct{
  DWORD                        uLen[66];
  NET_IPC_PIR_ALARMCFG                struPIRAlarm;
  NET_IPC_SINGLE_WIRELESS_ALARMCFG    struWirelessAlarm;
}NET_IPC_AUXALARM_UPLOAD_UNION,*LPNET_IPC_AUXALARM_UPLOAD_UNION;

Members

uLen
联合体大小
struPIRAlarm
PIR报警参数
struWirelessAlarm
无线报警参数

See Also

NET_IPC_AUXALARM_RESULT


NET_IPC_PIR_ALARMCFG

PIR报警参数结构体。

struct{
  BYTE                           byAlarmName[NAME_LEN];
  BYTE                           byAlarmHandle;
  BYTE                           byRes1[3];
  NET_DVR_HANDLEEXCEPTION_V30    struAlarmHandleType;
  BYTE                           byRelRecordChan[MAX_CHANNUM_V30];
  BYTE                           byRes[64];
}NET_IPC_PIR_ALARMCFG,*LPNET_IPC_PIR_ALARMCFG;

Members

byAlarmName
报警名称
byAlarmHandle
是否处理：0- 不处理，1- 处理
byRes1
保留
struAlarmHandleType
处理方式
byRelRecordChan
报警触发的录象通道，按位表示，为1表示触发该通道。例如：byRelRecordChan[0]==1，表示触发通道1录像；byRelRecordChan[1]==1，表示触发通道2录像，依此类推
byRes
保留

See Also

NET_IPC_AUX_ALARMCFG_UNION NET_IPC_AUXALARM_UPLOAD_UNION


NET_IPC_SINGLE_AUX_ALARMCFG

单个辅助报警参数结构体。

struct{
  BYTE                          byAlarmType;
  BYTE                          byRes1[3];
  NET_IPC_AUX_ALARMCFG_UNION    uAlarm;
  BYTE                           byRes[16];
}NET_IPC_SINGLE_AUX_ALARMCFG,*LPNET_IPC_SINGLE_AUX_ALARMCFG;

Members

byAlarmType
报警器类型，定义详见下表
enum _IPC_AUX_ALARM_TYPE_{
  IPC_AUXALARM_UNKNOW   = 0,
  IPC_AUXALARM_PIR      = 1,
  IPC_AUXALARM_WIRELESS = 2,
  IPC_AUXALARM_CALLHELP = 3,
}IPC_AUX_ALARM_TYPE
IPC_AUXALARM_UNKNOW
未知
IPC_AUXALARM_PIR
PIR报警
IPC_AUXALARM_WIRELESS
无线报警
IPC_AUXALARM_CALLHELP
呼救报警
byRes1
保留
struAlarm
报警参数
byRes
保留

See Also

NET_IPC_AUX_ALARMCFG


NET_IPC_SINGLE_WIRELESS_ALARMCFG

单个无线报警参数结构体。

struct{
  BYTE                           byAlarmName[NAME_LEN];
  BYTE                           byAlarmHandle;
  BYTE                           byID;
  BYTE                           byRes1[2];
  NET_DVR_HANDLEEXCEPTION_V30    struAlarmHandleType;
  BYTE                           byRelRecordChan[MAX_CHANNUM_V30];
  BYTE                           byRes[32];
}NET_IPC_SINGLE_WIRELESS_ALARMCFG,*LPNET_IPC_SINGLE_WIRELESS_ALARMCFG;

Members

byAlarmName
报警名称
byAlarmHandle
是否处理：0- 不处理，1- 处理
byID
无线报警ID，取值范围：1~8
byRes1
保留
struAlarmHandleType
处理方式
byRelRecordChan
报警触发的录象通道，按位表示，为1表示触发该通道。例如：byRelRecordChan[0]==1，表示触发通道1录像；byRelRecordChan[1]==1，表示触发通道2录像，依此类推
byRes
保留

See Also

NET_IPC_WIRELESS_ALARMCFG NET_IPC_AUXALARM_UPLOAD_UNION


NET_IPC_WIRELESS_ALARMCFG

无线报警参数结构体。

struct{
  NET_IPC_SINGLE_WIRELESS_ALARMCFG    struWirelessAlarm[MAX_WIRELESS_ALARM_NUM];
  BYTE                                byRes[32];
}NET_IPC_WIRELESS_ALARMCFG,*LPNET_IPC_WIRELESS_ALARMCFG;

Members

struWirelessAlarm
单个无线报警参数
byRes
保留

See Also

NET_IPC_AUX_ALARMCFG_UNION


NET_ITC_EPOLICE_IOTL_PARAM

电警IO红绿灯参数结构体。

struct{
  NET_ITC_PLATE_RECOG_PARAM    struPlateRecog;
  NET_ITC_SINGLE_IOTL_PARAM    struSingleIOTL[MAX_IOSPEED_GROUP_NUM];
  BYTE                         byRes[32];
}NET_ITC_EPOLICE_IOTL_PARAM,*LPNET_ITC_EPOLICE_IOTL_PARAM;

Members

struPlateRecog
牌识参数
struSingleIOTL
单组IO红绿灯参数
byRes
保留

See Also

NET_ITC_TRIGGER_PARAM_UNION


NET_ITC_EPOLICE_LANE_PARAM

单组IO红绿灯参数结构体。

struct{
  BYTE                                byEnable;
  BYTE                                byRelatedDriveWay;
  WORD                                wDistance;
  BYTE                                byRecordEnable;
  BYTE                                byRecordType;
  BYTE                                byPreRecordTime;
  BYTE                                byRecordDelayTime;
  BYTE                                byRecordTimeOut;
  BYTE                                bySignSpeed;
  BYTE                                bySpeedLimit;
  BYTE                                byRes1;
  NET_ITC_SERIAL_INFO                 struSerialInfo;
  BYTE                                byRelatedIOOut[MAX_IOOUT_NUM];
  BYTE                                byFlashMode;
  BYTE                                byRes2[3];
  NET_ITC_PLATE_RECOG_REGION_PARAM    struPlateRecog[MAX_LANEAREA_NUM];
  BYTE                                byRes[16];
}NET_ITC_EPOLICE_LANE_PARAM,*LPNET_ITC_EPOLICE_LANE_PARAM;

Members

byEnable
是否启用：0- 不启用，1- 启用
byRelatedDriveWay
关联的车道号
wDistance
线圈距离（保留），单位：厘米
byRecordEnable
闯红灯周期录像标志：0- 不录像，1- 录像
byRecordType
闯红灯录像类型：0- 预录，1- 延时录像
byPreRecordTime
闯红灯录像片段预录时间（默认0），单位：秒
byRecordDelayTime
闯红灯录像片段延时时间（默认0），单位：秒
byRecordTimeOut
闯红灯周期录像超时时间，单位：秒
bySignSpeed
标志限速(卡式电警模式有效)，单位：km/h
bySpeedLimit
限速值(卡式电警模式有效)，单位：km/h
byRes1
保留
struSerialInfo
车检器参数
byRelatedIOOut
关联的IO输出口，可以同时关联多个
byFlashMode
闪光灯闪烁模式：0- 同时闪，1- 轮流闪
byRes2
保留
struPlateRecog
牌识区域参数
byRes
保留

See Also

NET_ITC_EPOLICE_RS485_PARAM


NET_ITC_EPOLICE_RS485_PARAM

电警/卡式电警RS485车检器触发参数结构体。

struct{
  BYTE                          byRelatedLaneNum;
  BYTE                          byRes1[3];
  NET_ITC_PLATE_RECOG_PARAM     struPlateRecog;
  NET_ITC_EPOLICE_LANE_PARAM    struLane[MAX_ITC_LANE_NUM];
  BYTE                          byRes[32];
}NET_ITC_EPOLICE_RS485_PARAM,*LPNET_ITC_EPOLICE_RS485_PARAM;

Members

byRelatedLaneNum
关联的车道个数
byRes1
保留
struPlateRecog
牌识参数
struLane
关联的车道参数
byRes
保留

See Also

NET_ITC_TRIGGER_PARAM_UNION


NET_ITC_FLASHOUT_INFO

同步输出参数结构体。

struct{
  BYTE     byFlashOutIndex[MAX_IOOUT_NUM];
  BYTE     byRes[44];
}NET_ITC_FLASHOUT_INFO,*LPNET_ITC_FLASHOUT_INFO;

Members

byFlashOutIndex
同步输出号
byRes
保留

See Also

NET_ITC_STATUS_UNION


NET_ITC_INTERVAL_PARAM

抓拍间隔参数结构体。

struct{
  BYTE    byIntervalType;
  BYTE    byRes1[3];
  WORD    wInterval[MAX_INTERVAL_NUM];
  BYTE    byRes[8];
}NET_ITC_INTERVAL_PARAM,*LPNET_ITC_INTERVAL_PARAM;

Members

byIntervalType
间隔类型（默认按时间）：0- 时间起效，1- 距离起效
byRes1
保留
wInterval
连拍间隔时间（单位：ms）或连拍间隔距离（单位：分米）。当byIntervalType为0时，表示间隔时间，当byIntervalType为1时，表示距离
byRes
保留

See Also

NET_ITC_SINGLEIO_PARAM NET_ITC_LANE_PARAM NET_ITC_VTLANE_PARAM


NET_ITC_IOOUT_PARAM

IO输出配置参数结构体。

struct{
  DWORD   dwSize;
  BYTE    byDefaultStatus;
  BYTE    byIoOutStatus;
  BYTE    byRes1[2];
  DWORD   dwTimeDelay;
  WORD    wAheadTime;
  BYTE    byFreqMulti;
  BYTE    byDutyRate;
  BYTE    byDetectBrightness;
  BYTE    byBrightnessThreld;
  BYTE    byFlashLightEnable;
  BYTE    byStartHour;
  BYTE    byStartMinute;
  BYTE    byEndHour;
  BYTE    byEndMinute;
  BYTE    byRes[9];
}NET_ITC_IOOUT_PARAM, *LPNET_ITC_IOOUT_PARAM;

Members

dwSize
结构体大小
byDefaultStatus
IO默认状态：0- 低电平，1- 高电平
byIoOutStatus
IO起效时状态：0- 低电平，1- 高电平，2- 脉冲
byRes1
保留，置为0
dwTimeDelay
IO有效持续时间，单位：us
wAheadTime
输出IO提前时间，单位：us
byFreqMulti
倍频，数值范围：[1,15]
byDutyRate
占空比，取值范围：[0,40%]
byDetectBrightness
自动检测亮度使能闪光灯：0- 不检测，1- 检测
byBrightnessThreld
使能闪光灯亮度阈值，范围：[0,100]，高于阈值闪
byFlashLightEnable
设置闪光灯时间使能：0- 关，1- 开
byStartHour
开始时间：小时，取值范围：[0,23]
byStartMinute
开始时间：分，取值范围：[0,59]
byEndHour
结束时间：小时，取值范围：[0,23]
byEndMinute
结束时间：分，取值范围：[0,59]
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_ITC_LANE_PARAM

车道参数结构体。

struct{
  BYTE                                byEnable;
  BYTE                                byRelatedDriveWay;
  WORD                                wDistance;
  WORD                                wTrigDelayTime;
  BYTE                                byTrigDelayDistance;
  BYTE                                bySpeedCapEn;
  BYTE                                bySignSpeed;
  BYTE                                bySpeedLimit;
  BYTE                                bySnapTimes;
  BYTE                                byRes1;
  NET_ITC_INTERVAL_PARAM              struInterval;
  BYTE                                byRelatedIOOut[MAX_IOOUT_NUM];
  BYTE                                byFlashMode;
  BYTE                                byRes2[3];
  NET_ITC_PLATE_RECOG_REGION_PARAM    struPlateRecog[MAX_LANEAREA_NUM];
  BYTE                                byRes[16];
}NET_ITC_LANE_PARAM,*LPNET_ITC_LANE_PARAM;

Members

byEnable
是否启用该车道：0- 不启用，1- 启用
byRelatedDriveWay
关联的车道号
wDistance
线圈距离，计算速度
wTrigDelayTime
触发延迟时间（默认200），单位：毫秒
byTrigDelayDistance
触发延迟距离（默认0），单位：分米
bySpeedCapEn
是否启用超速抓拍：0- 否，1- 是
bySignSpeed
标志限速，单位：km/h
bySpeedLimit
限速值，单位：km/h
bySnapTimes
抓拍次数（默认1）：0- 不抓拍；非0- 连拍次数，最大5
byRes1
保留
struInterval
抓拍间隔参数
byRelatedIOOut
关联的IO输出口，可以同时关联多个
byFlashMode
闪光灯闪烁模式：0- 同时闪，1- 轮流闪
byRes2
保留
struPlateRecog
车道牌识区域参数
byRes
保留

See Also

NET_ITC_POST_RS485_PARAM NET_ITC_POST_RS485_RADAR_PARAM


NET_ITC_PLATE_RECOG_PARAM

牌识参数结构体。

struct{
  BYTE     byDefaultCHN[MAX_CHJC_NUM];
  BYTE     byEnable;
  DWORD    dwRecogMode;
  BYTE     byRes[32];
}NET_ITC_PLATE_RECOG_PARAM,*LPNET_ITC_PLATE_RECOG_PARAM;

Members

byDefaultCHN
设备运行省份的汉字简写
byEnable
是否启用该区域牌识：0- 否，1- 是
dwRecogMode
识别的类型， bit0-背向识别：0- 正向车牌识别，1- 背向识别(尾牌识别)
bit1-大车牌识别或小车牌识别：0- 小车牌识别，1- 大车牌识别
bit2-车身颜色识别：0- 不采用车身颜色识别，在背向识别或小车牌识别时禁止启用；1- 车身颜色识别
bit3-农用车识别：0- 不采用农用车识别，1- 农用车识别
bit4-模糊识别：0- 不采用模糊识别，1- 模糊识别
bit5-帧定位或场定位：0- 帧定位，1- 场定位
bit6-帧识别或场识别：0- 帧识别，1- 场识别
bit7-晚上或白天：0- 白天，1- 晚上
byRes
保留

See Also

NET_ITC_POST_IOSPEED_PARAM NET_ITC_POST_SINGLEIO_PARAM NET_ITC_POST_RS485_PARAM
NET_ITC_POST_RS485_RADAR_PARAM NET_ITC_POST_VTCOIL_PARAM
NET_ITC_EPOLICE_IOTL_PARAM NET_ITC_EPOLICE_RS485_PARAM


NET_ITC_PLATE_RECOG_REGION_PARAM

牌识区域参数结构体。

struct{
  BYTE    byMode;
  BYTE    byRes1[3];
  union{
           NET_VCA_RECT           struRect;
           NET_ITC_POLYGON        struPolygon;
  }uRegion;
  BYTE    byRes[16];
}NET_ITC_PLATE_RECOG_REGION_PARAM,*LPNET_ITC_PLATE_RECOG_REGION_PARAM;

Members

byMode
区域类型：0- 矩形，1- 多边形
byRes1
保留
struRect
矩形区域
struPolygon
多边形区域
byRes
保留

See Also

NET_ITC_SINGLE_IOSPEED_PARAM NET_ITC_SINGLEIO_PARAM NET_ITC_LANE_PARAM
NET_ITC_VTLANE_PARAM NET_ITC_SINGLE_IOTL_PARAM NET_ITC_EPOLICE_LANE_PARAM


NET_ITC_POLYGON

多边型结构体。

struct{
  DWORD            dwPointNum;
  NET_VCA_POINT    struPos[ITC_MAX_POLYGON_POINT_NUM];
}NET_ITC_POLYGON,*LPNET_ITC_POLYGON;

Members

dwPointNum
有效点，大于等于3，若是3点在一条线上认为是无效区域，线交叉认为是无效区域
struPos
多边形边界点，最多20个

See Also

NET_ITC_PLATE_RECOG_REGION_PARAM


NET_ITC_POST_IOSPEED_PARAM

卡口IO测速参数结构体。

struct{
  NET_ITC_PLATE_RECOG_PARAM       struPlateRecog;
  NET_ITC_SINGLE_IOSPEED_PARAM    struSingleIOSpeed[MAX_IOSPEED_GROUP_NUM];
  BYTE                            byRes[32];
}NET_ITC_POST_IOSPEED_PARAM,*LPNET_ITC_POST_IOSPEED_PARAM;

Members

struPlateRecog
牌识参数
struSingleIOSpeed
单个IO测速组参数
byRes
保留

See Also

NET_ITC_TRIGGER_PARAM_UNION


NET_ITC_POST_RS485_PARAM

卡口RS485车检器触发参数结构体。

struct{
  BYTE                         byRelatedLaneNum;
  BYTE                         byRes1[3];
  NET_ITC_PLATE_RECOG_PARAM    struPlateRecog;
  NET_ITC_LANE_PARAM           struLane[MAX_ITC_LANE_NUM];
  BYTE                         byRes[32];
}NET_ITC_POST_RS485_PARAM,*LPNET_ITC_POST_RS485_PARAM;

Members

byRelatedLaneNum
关联的车道个数
byRes1
保留
struPlateRecog
牌识参数
struLane
关联的车道参数
byRes
保留

See Also

NET_ITC_TRIGGER_PARAM_UNION


NET_ITC_POST_RS485_RADAR_PARAM

卡口RS485雷达触发参数结构体。

struct{
  BYTE                         byRelatedLaneNum;
  BYTE                         byRes1[3];
  NET_ITC_PLATE_RECOG_PARAM    struPlateRecog;
  NET_ITC_LANE_PARAM           struLane[MAX_ITC_LANE_NUM];
  NET_ITC_RADAR_PARAM          struRadar;
  BYTE                         byRes[32];
}NET_ITC_POST_RS485_RADAR_PARAM,*LPNET_ITC_POST_RS485_RADAR_PARAM;

Members

byRelatedLaneNum
关联的车道个数
byRes1
保留
struPlateRecog
牌识参数
struLane
关联的车道参数
struRadar
雷达参数
byRes
保留

See Also

NET_ITC_TRIGGER_PARAM_UNION


NET_ITC_POST_SINGLEIO_PARAM

单IO触发参数结构体。

struct{
  NET_ITC_PLATE_RECOG_PARAM     struPlateRecog;
  NET_ITC_SINGLEIO_PARAM        struSingleIO[MAX_IOIN_NUM];
  BYTE     byRes[32];
}NET_ITC_POST_SINGLEIO_PARAM,*LPNET_ITC_POST_SINGLEIO_PARAM;

Members

struPlateRecog
牌识参数
struSingleIO
单个IO触发参数，数组0表示IO1，数组1表示IO2，依次类推
byRes
保留

See Also

NET_ITC_TRIGGER_PARAM_UNION


NET_ITC_POST_VTCOIL_PARAM

卡口虚拟线圈触发参数结构体。

struct{
  BYTE                         byRelatedLaneNum;
  BYTE                         byIsDisplay;
  BYTE                         byLoopPos;
  BYTE                         byPolarLenType;
  BYTE                         byDayAuxLightMode;
  BYTE                         byVideoLaneNO;
  BYTE                         byVideoLowTh;
  BYTE                         byVideoHighTh;
  BYTE                         byRecordMode;
  BYTE                         byRes1[3];
  WORD                         wResolutionX;
  WORD                         wResolutionY;
  DWORD                        dwDayInitExp;
  DWORD                        dwDayMaxExp;
  DWORD                        dwNightExp;
  DWORD                        dwSnapExp;
  BYTE                         byDayInitGain;
  BYTE                         byDayMaxGain;
  BYTE                         byNightGain;
  BYTE                         bySnapGain;
  DWORD                        dwSceneMode;
  NET_DVR_GEOGLOCATION         struGeogLocation;
  NET_ITC_PLATE_RECOG_PARAM    struPlateRecog;
  NET_ITC_VTCOIL_INFO          struVtCoil[MAX_VL_NUM];
  NET_ITC_RADAR_PARAM          struRadar;
  BYTE                         byRes[32];
}NET_ITC_POST_VTCOIL_PARAM,*LPNET_ITC_POST_VTCOIL_PARAM;

Members

byRelatedLaneNum
关联的车道个数
byIsDisplay
视频中是否显示虚拟线圈：0- 不显示，1- 显示
byLoopPos
晚间触发线圈的偏向（默认10）
byPolarLenType
偏振镜类型：0- 不加偏振镜，1- 加施耐德偏振镜
byDayAuxLightMode
白天辅助照明模式：0- 无辅助照明，1- LED灯照明，2- 闪光灯照明
byVideoLaneNO
视频参考亮度的参考车道号
byVideoLowTh
视频参考亮度低阈值初始化值（默认40）
byVideoHighTh
视频参考亮度高阈值初始化值（默认55）
byRecordMode
录像标志：0- 不录像，1- 录像
byRes1
保留
wResolutionX
设备当前分辨率宽
wResolutionY
设备当前分辨率高
dwDayInitExp
视频白天曝光时间的初始值，默认为2000
dwDayMaxExp
视频白天曝光时间的最大值，默认为20000
dwNightExp
晚间视频曝光时间的设置值，默认为3000
dwSnapExp
抓拍曝光时间
byDayInitGain
视频白天增益的初始值，默认为200
byDayMaxGain
视频白天增益的最大值，默认为400
byNightGain
晚间视频增益
bySnapGain
抓拍增益
dwSceneMode
场景模式
enum _SCENE_MODE_{
  UNKOWN_SCENE_MODE   = 0,
  HIGHWAY_SCENE_MODE  = 1,
  SUBURBAN_SCENE_MODE = 2,
  URBAN_SCENE_MODE    = 3,
  TUNNEL_SCENE_MODE   = 4
}SCENE_MODE
UNKOWN_SCENE_MODE
未知场景模式
HIGHWAY_SCENE_MODE
高速场景模式
SUBURBAN_SCENE_MODE
郊区场景模式(保留)
URBAN_SCENE_MODE
市区场景模式
TUNNEL_SCENE_MODE
隧道场景模式(保留)
struGeogLocation
地址位置(默认浙江)
struPlateRecog
牌识参数
struVtCoil
虚拟线圈参数
struRadar
雷达参数
byRes
保留

See Also

NET_ITC_TRIGGER_PARAM_UNION


NET_ITC_RADAR_PARAM

雷达参数结构体。

struct{
  BYTE    byRadarType;
  BYTE    byLevelAngle;
  WORD    wRadarSensitivity;
  BYTE    byRes[20];
}NET_ITC_RADAR_PARAM,*LPNET_ITC_RADAR_PARAM;

Members

byRadarType
雷达类型：0- 无雷达，1- 安道雷雷达，2- 奥利维亚，3- 川速微波，0xff- 其它类型
byLevelAngle
与水平线所成角度，默认为25°，取值范围：0~90度
wRadarSensitivity
雷达灵敏度
byRes
保留

See Also

NET_ITC_POST_RS485_RADAR_PARAM NET_ITC_POST_VTCOIL_PARAM


NET_ITC_SERIAL_CHECKINFO

串口参数结构体。

struct{
  BYTE     bySerialIndex[MAX_ITC_SERIALCHECK_NUM];
  BYTE     byRes[40];
}NET_ITC_SERIAL_CHECKINFO,*LPNET_ITC_SERIAL_CHECKINFO;

Members

bySerialIndex
485串口校验结果：0- 无效，1- 有效，bySerialIndex[0]表示正确的头，bySerialIndex[1]表示正确的尾
byRes
保留

See Also

NET_ITC_STATUS_UNION


NET_ITC_SERIAL_INFO

车检器参数结构体。

struct{
  BYTE     bySerialProtocol;
  BYTE     byIntervalType;
  WORD     wInterval;
  BYTE     byRes[12];
}NET_ITC_SERIAL_INFO,*LPNET_ITC_SERIAL_INFO;

Members

bySerialProtocol
车检器协议类型，定义如下所示：
enum _ITC_SERIAL_PROTOCOL_{
  ITC_PROTOCOL_UNKNOW             = 0,
  ITC_SINGLE_COIL_PROTOCOL        = 1,
  ITC_DOUBLE_COIL_PROTOCOL_MODE1  = 2,
  ITC_DOUBLE_COIL_PROTOCOL_MODE2  = 3,
  ITC_DOUBLE_COIL_PROTOCOL_MODE3  = 4,
  ITC_OTHER_PROTOCOL              = 0xff
}ITC_SERIAL_PROTOCOL
ITC_PROTOCOL_UNKNOW
未知
ITC_SINGLE_COIL_PROTOCOL
单线圈车检器协议（动态显示：到达、离开、离开延迟抓拍，离开牌识）
ITC_DOUBLE_COIL_PROTOCOL_MODE1
双线圈车检器协议模式1（动态显示：到达一、离开一、离开二抓拍，离开一牌识）
ITC_DOUBLE_COIL_PROTOCOL_MODE2
双线圈车检器协议模式2（动态显示：离开一、离开二、离开二延时抓拍，离开一牌识，默认为延时距离1m）
ITC_DOUBLE_COIL_PROTOCOL_MODE3
双线圈车检器协议模式3（动态显示：进入二、离开一、离开二延时抓拍，离开一牌识，默认为延时距离1m）
ITC_OTHER_PROTOCOL
其它车检器协议
byIntervalType
间隔类型（默认按时间）：0- 时间起效，1- 距离起效
wInterval
连拍间隔时间（单位：ms）或连拍间隔距离（单位：分米）。当byIntervalType为0时，表示间隔时间，当byIntervalType为1时，表示距离
byRes
保留

See Also

NET_ITC_EPOLICE_LANE_PARAM


NET_ITC_SINGLE_IOSPEED_PARAM

单组IO测速参数结构体。

struct{
  BYTE                                byEnable;
  BYTE                                byTrigCoil1;
  BYTE                                byCoil1IOStatus;
  BYTE                                byTrigCoil2;
  BYTE                                byCoil2IOStatus;
  BYTE                                byRelatedDriveWay;
  BYTE                                byTimeOut;
  BYTE                                byRes1;
  DWORD                               dwDistance;
  BYTE                                byCapSpeed;
  BYTE                                bySpeedLimit;
  BYTE                                bySpeedCapEn;
  BYTE                                bySnapTimes1;
  BYTE                                bySnapTimes2;
  BYTE                                byRes2[2];
  BYTE                                byIntervalType;
  WORD                                wInterval1[MAX_INTERVAL_NUM];
  WORD                                wInterval2[MAX_INTERVAL_NUM];
  BYTE                                byRelatedIOOut[MAX_IOOUT_NUM];
  BYTE                                byFlashMode;
  BYTE                                byRes3[3];
  NET_ITC_PLATE_RECOG_REGION_PARAM    struPlateRecog[MAX_LANEAREA_NUM];
  BYTE                                byRes[32];
}NET_ITC_SINGLE_IOSPEED_PARAM,*LPNET_ITC_SINGLE_IOSPEED_PARAM;

Members

byEnable
是否启用：0- 不启用，1- 启用
byTrigCoil1
第一线圈关联IO：0- IO1，1- IO2，2- IO3，3- IO4，4- IO5，5- IO6
byCoil1IOStatus
第一线圈IO输入口状态：0- 下降沿（默认），1- 上升沿，2- 上升沿和下降沿，3- 高电平，4- 低电平
byTrigCoil2
第二线圈关联IO：0- IO1，1- IO2，2- IO3，3- IO4，4- IO5，5- IO6
byCoil2IOStatus
第二线圈IO输入口状态：0- 下降沿（默认），1- 上升沿，2- 上升沿和下降沿，3- 高电平，4- 低电平
byRelatedDriveWay
关联的车道号
byTimeOut
超时时间（默认10），单位：s
byRes1
保留
dwDistance
线圈距离（默认1000），单位：厘米
byCapSpeed
起拍速度（默认30），单位：km/h
bySpeedLimit
限速值（默认60），单位：km/h
bySpeedCapEn
是否启用超速抓拍：0- 否，1- 是
bySnapTimes1
线圈1抓拍次数（默认不抓拍）：0- 不抓拍，非0- 连拍次数，最大5次
bySnapTimes2
线圈2抓拍次数（默认1），0- 不抓拍，非0- 连拍次数，最大5次
byRes2
保留
byIntervalType
间隔类型（默认按时间），0- 时间起效，1- 距离起效
wInterval1
线圈1连拍间隔时间（单位：ms）或连拍间隔距离（单位：分米）。 当byIntervalType为0时，表示间隔时间，当byIntervalType为1时，表示距离
wInterval2
线圈2连拍间隔时间（单位：ms）或连拍间隔距离（单位：分米）。 当byIntervalType为0时，表示间隔时间，当byIntervalType为1时，表示距离
byRelatedIOOut
关联的IO输出口(可以同时关联多个)，数组0表示IO输出口1，数组1表示IO输出口2，以此类推，其参数值：0- 不关联，1- 关联
byFlashMode
闪光灯闪烁模式：0- 同时闪，1- 轮流闪
byRes3
保留
struPlateRecog
牌识参数(可用牌识区域1个，保留一个)
byRes
保留

See Also

NET_ITC_POST_IOSPEED_PARAM


NET_ITC_SINGLE_IOTL_PARAM

单组IO红绿灯参数结构体。

struct{
  BYTE                                byEnable;
  BYTE                                byLightIO;
  BYTE                                byTrafficLight;
  BYTE                                byTrigIO;
  BYTE                                byTrigIOStatus;
  BYTE                                byRelatedDriveWay;
  BYTE                                byRecordEnable;
  BYTE                                byRecordType;
  BYTE                                byPreRecordTime;
  BYTE                                byRecordDelayTime;
  BYTE                                byRecordTimeOut;
  BYTE                                byRedSnapTimes;
  BYTE                                byGreenSnapTimes;
  BYTE                                byRes1[2];
  BYTE                                byIntervalType;
  WORD                                wRedInterval[MAX_INTERVAL_NUM];
  WORD                                wGreenInterval[MAX_INTERVAL_NUM];
  BYTE                                byRelatedIOOut[MAX_IOOUT_NUM];
  BYTE                                byFlashMode;
  BYTE                                byRes2[3];
  NET_ITC_PLATE_RECOG_REGION_PARAM    struPlateRecog[MAX_LANEAREA_NUM];
  BYTE                                byRes[32];
}NET_ITC_SINGLE_IOTL_PARAM,*LPNET_ITC_SINGLE_IOTL_PARAM;

Members

byEnable
是否启用：0- 不启用，1- 启用
byLightIO
红绿灯IO：0- IO1，1- IO2，2- IO3，3- IO4，4- IO5，5- IO6
byTrafficLight
红绿灯有效状态：0- 高电平红灯，低电平绿灯；1- 高电平绿灯，低电平红灯
byTrigIO
触发的IO号：0- IO1，1- IO2，2- IO3，3- IO4，4- IO5，5- IO6
byTrigIOStatus
触发IO口的状态（默认0）：0- 下降沿，1- 上升沿，2- 上升沿和下降沿，3- 高电平，4- 低电平
byRelatedDriveWay
关联的车道号
byRecordEnable
闯红灯周期录像标志：0- 不录像，1- 录像
byRecordType
闯红灯录像类型：0- 预录，1- 延时录像
byPreRecordTime
闯红灯录像片段预录时间（默认0），单位：秒
byRecordDelayTime
闯红灯录像片段延时时间（默认0），单位：秒
byRecordTimeOut
闯红灯周期录像超时时间，单位：秒
byRedSnapTimes
红灯抓拍次数：0- 不抓拍；非0- 连拍次数，最大5次
byGreenSnapTimes
绿灯抓拍次数：0- 不抓拍；非0- 连拍次数，最大5次
byRes1
保留
byIntervalType
间隔类型（默认按时间）：0- 时间起效，1- 距离起效
wRedInterval
红灯连拍间隔时间（单位：ms）或连拍间隔距离（单位：分米）。当byIntervalType为0时，表示间隔时间，当byIntervalType为1时，表示距离高
wGreenInterval
绿灯连拍间隔时间（单位：ms）或连拍间隔距离（单位：分米）。当byIntervalType为0时，表示间隔时间，当byIntervalType为1时，表示距离
byRelatedIOOut
关联的IO输出口，可以同时关联多个
byFlashMode
闪光灯闪烁模式：0- 同时闪，1- 轮流闪
byRes2
保留
struPlateRecog
牌识区域参数
byRes
保留

See Also

NET_ITC_EPOLICE_IOTL_PARAM


NET_ITC_SINGLE_TRIGGERCFG

单个触发参数结构体。

struct{
  BYTE                           byEnable;
  BYTE                           byRes1[3];
  DWORD                          dwTriggerType;
  NET_ITC_TRIGGER_PARAM_UNION    uTriggerParam;
  BYTE                           byRes[64];
}NET_ITC_SINGLE_TRIGGERCFG,*LPNET_ITC_SINGLE_TRIGGERCFG;

Members

byEnable
启用状态：0- 不启用，1- 启用
byRes1
保留
dwTriggerType
触发类型，详见ITC_TRIGGERMODE_TYPE
uTriggerParam
触发参数
byRes
保留

See Also

ITC_TRIGGERMODE_TYPE NET_ITC_TRIGGERCFG

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_ITC_SINGLEIO_PARAM

单IO参数结构体。

struct{
  BYTE                                 byDefaultStatus;
  BYTE                                 byRelatedDriveWay;
  BYTE                                 bySnapTimes;
  BYTE                                 byRes1;
  NET_ITC_INTERVAL_PARAM               struInterval;
  BYTE                                 byRelatedIOOut[MAX_IOOUT_NUM];
  BYTE                                 byFlashMode;
  BYTE                                 byRes2[3];
  NET_ITC_PLATE_RECOG_REGION_PARAM     struPlateRecog[MAX_LANEAREA_NUM];
  BYTE                                 byRes[32];
}NET_ITC_SINGLEIO_PARAM,*LPNET_ITC_SINGLEIO_PARAM;

Members

byDefaultStatus
IO触发默认状态：0- 低电平，1- 高电平
byRelatedDriveWay
关联的车道号
bySnapTimes
抓拍次数（默认1）：0- 不抓拍；非0- 连拍次数，最大5
byRes1
保留
struInterval
抓拍间隔参数
byRelatedIOOut
关联的IO输出口，可以同时关联多个
byFlashMode
闪光灯闪烁模式：0- 同时闪，1- 轮流闪
byRes2
保留
struPlateRecog
牌识区域参数
byRes
保留

See Also

NET_ITC_POST_SINGLEIO_PARAM


NET_ITC_STATUS_DETECT_RESULT

实时状态检测结果结构体。

struct{
  ITC_STATUS_DETECT_TYPE    dwStatusType;
  NET_ITC_STATUS_UNION      uStatusParam;
  DWORD                     dwHoldTime;
  BYTE                      byRes[32];
}NET_ITC_STATUS_DETECT_RESULT,*LPNET_ITC_STATUS_DETECT_RESULT;

Members

dwStatusType
状态检测类型，定义如下所示：
enum _ITC_STATUS_DETECT_TYPE_{
  ITC_STATUS_DETECT_NULL = 0,
  ITC_STATUS_DETECT_TRIGGERIO,
  ITC_STATUS_DETECT_FLASHOUT,
  ITC_STATUS_DETECT_RS485,
  ITC_STATUS_DETECT_TRIGGERTYPE
}ITC_STATUS_DETECT_TYPE
ITC_STATUS_DETECT_NULL
未知
ITC_STATUS_DETECT_TRIGGERIO
触发IO
ITC_STATUS_DETECT_FLASHOUT
同步输出
ITC_STATUS_DETECT_RS485
RS485
ITC_STATUS_DETECT_TRIGGERTYPE
触发类型（保留）
uStatusParam
状态检测结果
dwHoldTime
灯亮持续时间（保留），单位：ms
byRes
保留

See Also

NET_DVR_StartListen_V30


NET_ITC_STATUS_UNION

状态检测结果联合体。

struct{
  BYTE                         uLen[48];
  NET_ITC_TRIGGERIO_INFO       struTrigIO;
  NET_ITC_FLASHOUT_INFO        struFlashOut;
  NET_ITC_SERIAL_CHECKINFO     struSerial;
  NET_ITC_TRIGGERTYPE_INFO     struTrigType;
}NET_ITC_STATUS_UNION,*LPNET_ITC_STATUS_UNION;

Members

uLen
联合体的最大长度
struTrigIO
触发IO口号
struFlashOut
同步输出
struSerial
串口
struTrigType
触发类型（保留）

See Also

NET_ITC_STATUS_DETECT_RESULT


NET_ITC_TRIGGER_PARAM_UNION

触发参数联合体。

struct{
  DWORD                              uLen[1070];
  NET_ITC_POST_IOSPEED_PARAM         struIOSpeed;
  NET_ITC_POST_SINGLEIO_PARAM        struSingleIO;
  NET_ITC_POST_RS485_PARAM           struPostRs485;
  NET_ITC_POST_RS485_RADAR_PARAM     struPostRadar;
  NET_ITC_POST_VTCOIL_PARAM          struVtCoil;
  NET_ITC_EPOLICE_IOTL_PARAM         struIOTL;
  NET_ITC_EPOLICE_RS485_PARAM        struEpoliceRs485;
  NET_ITC_EPOLICE_RS485_PARAM        struPERs485;
}NET_ITC_TRIGGER_PARAM_UNION,*LPNET_ITC_TRIGGER_PARAM_UNION;

Members

uLen
联合体的最大长度
struIOSpeed
（卡口）IO测速参数
struSingleIO
（卡口）单IO参数
struPostRs485
（卡口）RS485车检器参数
struPostRadar
（卡口）RS485雷达参数
struVtCoil
（卡口）虚拟线圈参数
struIOTL
（电警）IO红绿灯参数
struEpoliceRs485
（电警）RS485车检器触发参数
struPERs485
（卡式电警）RS485车检器触发参数

See Also

NET_ITC_SINGLE_TRIGGERCFG


NET_ITC_TRIGGERCFG

触发参数结构体。

struct{
  DWORD                        dwSize;
  NET_ITC_SINGLE_TRIGGERCFG    struTriggerParam;
  BYTE                         byRes[32];
}NET_ITC_TRIGGERCFG,*LPNET_ITC_TRIGGERCFG;

Members

dwSize
结构体大小
struTriggerParam
单个触发参数
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_ITC_TRIGGERIO_INFO

触发IO口参数结构体。

struct{
  BYTE     byTriggerIOIndex[MAX_IOIN_NUM];
  BYTE     byRes[40];
}NET_ITC_TRIGGERIO_INFO,*LPNET_ITC_TRIGGERIO_INFO;

Members

byTriggerIOIndex
触发IO号
byRes
保留

See Also

NET_ITC_STATUS_UNION


NET_ITC_TRIGGERMODE_ABILITY

触发模式能力结构体。

struct{
  DWORD    dwSize;
  DWORD    dwTriggerType;
  BYTE     byRes[16];
}NET_ITC_TRIGGERMODE_ABILITY,*LPNET_ITC_TRIGGERMODE_ABILITY;

Members

dwSize
结构体大小
dwTriggerType
触发类型，按位表示，定义如下所示：
enum _ITC_TRIGGERMODE_TYPE_{
  ITC_POST_IOSPEED_TYPE             = 0x1,
  ITC_POST_SINGLEIO_TYPE            = 0x2,
  ITC_POST_RS485_TYPE               = 0x4,
  ITC_POST_RS485_RADAR_TYPE         = 0x8,
  ITC_POST_VIRTUALCOIL_TYPE         = 0x10,
  ITC_EPOLICE_IO_TRAFFICLIGHTS_TYPE = 0x100,
  ITC_EPOLICE_RS485_TYPE            = 0x200,
  ITC_PE_RS485_TYPE                 = 0x10000,
  ITC_VIDEO_EPOLICE_TYPE            = 0x20000
}ITC_TRIGGERMODE_TYPE
ITC_POST_IOSPEED_TYPE
IO测速（卡口）
ITC_POST_SINGLEIO_TYPE
单IO触发（卡口）
ITC_POST_RS485_TYPE
RS485车检器触发（卡口）
ITC_POST_RS485_RADAR_TYPE
RS485雷达触发（卡口）
ITC_POST_VIRTUALCOIL_TYPE
虚拟线圈触发（卡口）
ITC_EPOLICE_IO_TRAFFICLIGHTS_TYPE
IO红绿灯（电警）
ITC_EPOLICE_RS485_TYPE
RS485车检器电警触发（电警）
ITC_PE_RS485_TYPE
RS485车检器卡式电警触发（卡式电警）
ITC_VIDEO_EPOLICE_TYPE
视频电警触发（卡式电警）
byRes
保留

See Also

NET_DVR_GetDeviceAbility


NET_ITC_TRIGGERTYPE_INFO

触发类型参数结构体。

struct{
  BYTE     byTrigTypeIndex;
  BYTE     byRes[47];
}NET_ITC_TRIGGERTYPE_INFO,*LPNET_ITC_TRIGGERTYPE_INFO;

Members

byTrigTypeIndex
触发类型值
byRes
保留

See Also

NET_ITC_STATUS_UNION


NET_ITC_VTCOIL_INFO

虚拟线圈结构体。

struct{
  NET_VCA_RECT            struLaneRect;
  BYTE                    byTrigFlag;
  BYTE                    byTrigSensitive;
  BYTE                    byRelatedIOOut[MAX_IOOUT_NUM];
  BYTE                    byFlashMode;
  BYTE                    byRes3;
  BYTE                    byEnableRadar;
  NET_ITC_VTLANE_PARAM    struLane;
  BYTE                    byRes[32];
}NET_ITC_VTCOIL_INFO,*LPNET_ITC_VTCOIL_INFO;

Members

struLaneRect
虚拟线圈区域
byTrigFlag
触发标志：0- 车头触发，1- 车尾触发，2- 车头/车尾都触发
byTrigSensitive
触发灵敏度：1~100
byRelatedIOOut
关联的IO输出口(可以同时关联多个)，数组0表示IO输出口1，数组1表示IO输出口2，以此类推，0-不关联，1-关联
byFlashMode
闪光灯闪烁模式：0- 同时闪，1- 轮流闪
byRes3
保留
byEnableRadar
是否启用雷达测速：0- 否，1- 是
struLane
关联的车道参数
byRes
保留

See Also

NET_ITC_POST_VTCOIL_PARAM


NET_ITC_VTLANE_PARAM

车道参数结构体。

struct{
  BYTE                                byRelatedDriveWay;
  BYTE                                bySpeedCapEn;
  BYTE                                bySignSpeed;
  BYTE                                bySpeedLimit;
  BYTE                                bySnapTimes;
  BYTE                                byRes1[3];
  NET_ITC_INTERVAL_PARAM              struInterval;
  BYTE                                byRelatedIOOut[MAX_IOOUT_NUM];
  BYTE                                byFlashMode;
  BYTE                                byRes2[3];
  NET_ITC_PLATE_RECOG_REGION_PARAM    struPlateRecog[MAX_LANEAREA_NUM];
  BYTE                                byRes[16];
}NET_ITC_VTLANE_PARAM,*LPNET_ITC_VTLANE_PARAM;

Members

byRelatedDriveWay
关联的车道号
bySpeedCapEn
是否启用超速抓拍：0- 否，1- 是
bySignSpeed
标志限速，单位：km/h
bySpeedLimit
限速值，单位：km/h
bySnapTimes
抓拍次数（默认1）：0- 不抓拍；非0- 连拍次数，最大5
byRes1
保留
struInterval
抓拍间隔参数
byRelatedIOOut
关联的IO输出口，可以同时关联多个
byFlashMode
闪光灯闪烁模式：0- 同时闪，1- 轮流闪
byRes2
保留
struPlateRecog
车道牌识参数
byRes
保留

See Also

NET_ITC_VTCOIL_INFO


NET_VCA_RULECFG

设备网络SDK开发使用手册

NET_IVMS_BEHAVIORCFG

智能分析仪行为分析参数结构体。

struct{
  DWORD               dwSize;
  BYTE                byPicProType;
  BYTE                byRes[3];
  NET_DVR_JPEGPARA    struPictureParam;
  NET_IVMS_RULECFG    struRuleCfg[MAX_DAYS][MAX_TIMESEGMENT];
}NET_IVMS_BEHAVIORCFG, *LPNET_IVMS_BEHAVIORCFG;

Members

dwSize
结构体大小
byPicProType
报警时图片处理方式：0-不处理；非0-处理
byRes
保留，置为0
struPictureParam
图片规格结构
struRuleCfg
按时间段设置的规则参数列表

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_IVMS_DEVSCHED

智能分析仪取流计划子结构。

struct{
  NET_DVR_SCHEDTIME          struTime;
  NET_DVR_PU_STREAM_CFG      struPUStream;
}NET_IVMS_DEVSCHED, *LPNET_IVMS_DEVSCHED;

Members

struTime
取流时间参数
struPUStream
前端取流配置参数

See Also

NET_IVMS_STREAMCFG


NET_IVMS_ENTER_REGION

智能分析仪ATM进入区域参数结构体。

struct{
  DWORD                      dwSize;
  NET_VCA_ENTER_REGION       struEnter[MAX_DAYS][MAX_TIMESEGMENT];
}NET_IVMS_ENTER_REGION, *LPNET_IVMS_ENTER_REGION;

Members

dwSize
结构体大小
struEnter
按时间段设置的进入区域参数

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_IVMS_MASK_REGION_LIST

IVMS屏蔽区域链表结构体。

struct{
  DWORD                      dwSize;
  NET_VCA_MASK_REGION_LIST   struList[MAX_DAYS][MAX_TIMESEGMENT];
}NET_IVMS_MASK_REGION_LIST, *LPNET_IVMS_MASK_REGION_LIST;

Members

dwSize
结构体大小
struList
屏蔽区域列表

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_IVMS_ONE_RULE

智能分析仪单条规则结构体。

struct{
  BYTE                        byActive;
  BYTE                        byRes1[7];
  BYTE                        byRuleName[NAME_LEN];
  VCA_EVENT_TYPE              dwEventType;
  NET_VCA_EVENT_UNION         uEventParam;
  NET_VCA_SIZE_FILTER         struSizeFilter;
  BYTE                        byRes2[68];
}NET_IVMS_ONE_RULE, *LPNET_IVMS_ONE_RULE;

Members

byActive
是否激活规则,0-否, 非0-是
byRes1
保留
byRuleName
规则名称
dwEventType
行为分析事件类型，具体定义见下表：
enum _VCA_EVENT_TYPE_{
  VCA_TRAVERSE_PLANE  = 0x1,
  VCA_ENTER_AREA      = 0x2,
  VCA_EXIT_AREA       = 0x4,
  VCA_INTRUSION       = 0x8,
  VCA_LOITER          = 0x10,
  VCA_LEFT_TAKE       = 0x20,
  VCA_PARKING         = 0x40,
  VCA_RUN             = 0x80,
  VCA_HIGH_DENSITY    = 0x100
  VCA_VIOLENT_MOTION   = 0x200,
  VCA_REACH_HIGHT      = 0x400,
  VCA_GET_UP           = 0x800,
  VCA_LEFT             = 0x1000,
  VCA_TAKE             = 0x2000,
  VCA_HUMAN_ENTER      = 0x10000000,
  VCA_OVER_TIME        = 0x20000000,
  VCA_STICK_UP         = 0x40000000,
  VCA_INSTALL_SCANNER  = 0x80000000
}VCA_EVENT_TYPE
VCA_TRAVERSE_PLANE
穿越警戒面
VCA_ENTER_AREA
目标进入区域，支持区域规则
VCA_EXIT_AREA
目标离开区域，支持区域规则
VCA_INTRUSION
周界入侵，支持区域规则
VCA_LOITER
徘徊，支持区域规则
VCA_LEFT_TAKE
丢包捡包，支持区域规则
VCA_PARKING
停车，支持区域规则
VCA_RUN
奔跑，支持区域规则
VCA_HIGH_DENSITY
区域内人员密度，支持区域规则
VCA_VIOLENT_MOTION
剧烈运动检测
VCA_REACH_HIGHT
攀高检测
VCA_GET_UP
起身检测
VCA_LEFT
丢包
VCA_TAKE
捡包
VCA_HUMAN_ENTER
人靠近ATM（仅在ATM_PANEL模式下支持）
VCA_OVER_TIME
操作超时（仅在ATM_PANEL模式下支持）
VCA_STICK_UP
贴纸条,支持区域规则
VCA_INSTALL_SCANNER
安装读卡器,支持区域规则
uEventParam
行为分析事件参数
struSizeFilter
尺寸过滤器
byRes2
保留

See Also

NET_IVMS_RULECFG


NET_IVMS_RULECFG

智能分析仪规则结构体。

struct{
  NET_IVMS_ONE_RULE   struRule[MAX_RULE_NUM];
}NET_IVMS_RULECFG, *LPNET_IVMS_RULECFG;

Members

struRule
规则数组

See Also

NET_IVMS_BEHAVIORCFG


NET_IVMS_STREAMCFG

智能分析仪参数配置结构体。

struct{
  DWORD                dwSize;
  NET_IVMS_DEVSCHED    struDevSched[MAX_DAYS][MAX_TIMESEGMENT];
}NET_IVMS_STREAMCFG,*LPNET_IVMS_STREAMCFG;

Members

dwSize
结构体大小
struDevSched
按时间段配置前端取流以及规则信息

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_VCA_ADVANCE_FIND

高级检索参数结构体。

struct{
  DWORD              dwFacePicID;
  BYTE               byRes[36];
}NET_VCA_ADVANCE_FIND, *LPNET_VCA_ADVANCE_FIND;

Members

dwFacePicID
人脸图片ID
byRes
保留

See Also

NET_VCA_FIND_SNAPPIC_UNION


NET_VCA_AREA

进入/离开区域参数结构体。

struct{
  NET_VCA_POLYGON   struRegion;
  BYTE              byRes[8];
}NET_VCA_AREA,*LPNET_VCA_AREA;

Members

struRegion
区域范围
byRes
保留，置为0

See Also

NET_VCA_EVENT_UNION


NET_VCA_BEHAVIOR_ABILITY

行为分析能力输出参数结构体。

struct{
  DWORD   dwSize;
  DWORD   dwAbilityType;
  BYTE    byMaxRuleNum;
  BYTE    byMaxTargetNum;
  BYTE    bySupport;
  BYTE    byRes[9];
}NET_VCA_BEHAVIOR_ABILITY,*LPNET_VCA_BEHAVIOR_ABILITY;

Members

dwSize
结构体大小
dwAbilityType
支持的行为分析能力类型，按位表示，具体定义如下：
enum _VCA_ABILITY_TYPE_{
  TRAVERSE_PLANE_ABILITY   = 0x01,
  ENTER_AREA_ABILITY       = 0x02,
  EXIT_AREA_ABILITY        = 0x04,
  INTRUSION_ABILITY        = 0x08,
  LOITER_ABILITY           = 0x10,
  LEFT_TAKE_ABILITY        = 0x20,
  PARKING_ABILITY          = 0x40,
  RUN_ABILITY              = 0x80,
  HIGH_DENSITY_ABILITY     = 0x100,
  LF_TRACK_ABILITY         = 0x200,
  VIOLENT_MOTION_ABILITY   = 0x400,
  REACH_HIGHT_ABILITY      = 0x800,
  GET_UP_ABILITY           = 0x1000,
  LEFT_ABILITY             = 0x2000,
  TAKE_ABILITY             = 0x4000,
  HUMAN_ENTER_ABILITY      = 0x10000000,
  OVER_TIME_ABILITY        = 0x20000000,
  STICK_UP_ABILITY         = 0x40000000,
  INSTALL_SCANNER_ABILITY  = 0x80000000
}VCA_ABILITY_TYPE
TRAVERSE_PLANE_ABILITY
穿越警戒面
ENTER_AREA_ABILITY
进入区域
EXIT_AREA_ABILITY
离开区域
INTRUSION_ABILITY
入侵
LOITER_ABILITY
徘徊
LEFT_TAKE_ABILITY
丢包捡包
PARKING_ABILITY
停车
RUN_ABILITY
奔跑
HIGH_DENSITY_ABILITY
区域内人员密度
LF_TRACK_ABILITY
球机跟踪
VIOLENT_MOTION_ABILITY
剧烈运动检测
REACH_HIGHT_ABILITY
攀高检测
GET_UP_ABILITY
起身检测
LEFT_ABILITY
丢包检测
TAKE_ABILITY
捡包检测
HUMAN_ENTER_ABILITY
人靠近ATM，只在ATM_PANEL模式下支持
OVER_TIME_ABILITY
操作超时，只在ATM_PANEL模式下支持
STICK_UP_ABILITY
贴纸条,支持区域规则
INSTALL_SCANNER_ABILITY
安装读卡器,支持区域规则
byMaxRuleNum
最大规则数
byMaxTargetNum
最大目标数
bySupport
支持的功能类型，按位表示。
bySupport & 0x01 支持标定功能
byRes
保留，置为0

See Also

NET_DVR_GetDeviceAbility


NET_VCA_BLACKLIST_COND

黑白名单信息查询条件结构体。

struct{
  LONG                       lChannel;
  DWORD                      dwGroupNo;
  BYTE                       byType;
  BYTE                       byLevel;
  BYTE                       byRes1[2];
  NET_VCA_HUMAN_ATTRIBUTE    struAttribute;
  BYTE                       byRes[20];
}NET_VCA_BLACKLIST_COND, *LPNET_VCA_BLACKLIST_COND;

Members

dwSize
结构体大小
dwGroupNo
分组号
byType
黑白名单标志：0- 全部，1- 白名单，2- 黑名单
byLevel
黑名单等级，0- 全部，1- 低，2- 中，3- 高
byRes1
保留
struAttribute
人员信息
byRes
保留

See Also

NET_DVR_FindBlackList


NET_VCA_BLACKLIST_FASTREGISTER_PARA

黑白名单注册信息结构体。

struct{
  DWORD                     dwSize;
  NET_VCA_BLACKLIST_INFO    struBlackListInfo;
  DWORD                     dwImageLen;
  BYTE                      byRes[124];>
  BYTE                      *pImage;
}NET_VCA_BLACKLIST_FASTREGISTER_PARA, *LPNET_VCA_BLACKLIST_FASTREGISTER_PARA;

Members

dwSize
结构体大小
struBlackListInfo
黑名单基本参数
dwImageLen
图像数据长度
byRes
保留
pImage
图像数据

See Also

NET_DVR_FastAddBlackList


NET_VCA_BLACKLIST_INFO

黑名单信息结构体。

struct{
  DWORD                    dwSize;
  DWORD                    dwRegisterID;
  DWORD                    dwGroupNo;
  BYTE                     byType;
  BYTE                     byLevel;
  BYTE                     byRes1[2];
  NET_VCA_HUMAN_ATTRIBUTE  struAttribute;
  BYTE                     byRemark[NAME_LEN];
  BYTE                     byRes2[20];
}NET_VCA_BLACKLIST_INFO, *LPNET_VCA_BLACKLIST_INFO;

Members

dwSize
结构体大小
dwRegisterID
名单注册ID号（只读）
dwGroupNo
分组号
byType
黑白名单标志：0- 白名单，1- 黑名单
byLevel
黑名单等级：0- 低，1- 中，2- 高
byRes1
保留
struAttribute
人员信息
byRemark
备注信息
byRes2
保留

Remarks

注册黑名单时分组号有效：指定黑名单注册到哪个分组，多个分组可以有相同的黑名单。
修改黑名单时分组号无效，修改当前黑名单时会把所有分组中的该黑名单修改。
删除黑名单时分组号有效，删除该分组下的全部黑名单。

byLevel参数越高越容易报警。

See Also

NET_VCA_BLACKLIST_INFO_ALARM NET_VCA_BLACKLIST_PARA
NET_VCA_BLACKLIST_INFO_ALARM_LOG NET_VCA_BLACKLIST_FASTREGISTER_PARA


NET_VCA_BLACKLIST_INFO_ALARM

黑名单报警信息结构体。

struct{
  NET_VCA_BLACKLIST_INFO       struBlackListInfo;
  DWORD                        dwBlackListPicLen;
  BYTE                         byRes[20];
  BYTE                         *pBuffer1;
}NET_VCA_BLACKLIST_INFO_ALARM, *LPNET_VCA_BLACKLIST_INFO_ALARM;

Members

struBlackListInfo
黑名单基本信息
dwBlackListPicLen
黑名单人脸子图的长度，为0表示没有图片，大于0表示有图片
byRes
保留
pBuffer1
黑名单人脸子图的图片数据

See Also

NET_VCA_FACESNAP_MATCH_ALARM


NET_VCA_BLACKLIST_INFO_ALARM_LOG

黑名单信息结构体。

struct{
  NET_VCA_BLACKLIST_INFO       struBlackListInfo;
  DWORD                        dwBlackListPicID;
  BYTE                         byRes[20];
}NET_VCA_BLACKLIST_INFO_ALARM_LOG, *LPNET_VCA_BLACKLIST_INFO_ALARM_LOG;

Members

struBlackListInfo
黑名单基本信息
dwBlackListPicID
黑名单人脸子图ID，用于查找图片
byRes
保留

See Also

NET_VCA_FACESNAP_MATCH_ALARM_LOG


NET_VCA_BLACKLIST_PARA

黑白名单信息结构体。

struct{
  DWORD                       dwSize;
  NET_VCA_BLACKLIST_INFO      struBlackListInfo;
  DWORD                       dwRegisterPicNum;
  NET_VCA_PICMODEL_RESULT     struRegisterPic[MAX_HUMAN_PICTURE_NUM];
  BYTE                        byRes[40];
}NET_VCA_BLACKLIST_PARA, *LPNET_VCA_BLACKLIST_PARA;

Members

dwSize
结构体大小
struBlackListInfo
黑名单基本参数
dwRegisterPicNum
黑名单图个数
struRegisterPic
黑名单图片信息
byRes
保留

See Also

NET_DVR_AddBlackList NET_DVR_UpdateBlackList


NET_VCA_BLACKLIST_PIC

黑名单对应图片信息结构体。

struct{
  DWORD                         dwSize;
  DWORD                         dwFacePicNum;
  BYTE                          byRes[20];
  NET_VCA_PICMODEL_RESULT       struBlackListPic[MAX_HUMAN_PICTURE_NUM];
}NET_VCA_BLACKLIST_PIC, *LPNET_VCA_BLACKLIST_PIC;

Members

dwSize
结构体大小
dwFacePicNum
人脸图个数
byRes
保留
struBlackListPic
单张照片信息

See Also

NET_DVR_GetBlackListPicture


NET_VCA_BLACKLIST_UPDATE_PARA

黑白名单修改参数信息。

struct{
  DWORD                            dwSize;
  NET_VCA_BLACKLIST_INFO           struBlackListInfo;
  NET_VCA_BLACKLIST_UPDATE_PIC     struUpdatePic[MAX_HUMAN_PICTURE_NUM];
  BYTE                             byRes[40];
}NET_VCA_BLACKLIST_UPDATE_PARA, *LPNET_VCA_BLACKLIST_UPDATE_PARA;

Members

dwSize
结构体大小
struBlackListInfo
黑名单基本参数
struUpdatePic
黑名单图片信息
byRes
保留

See Also

NET_DVR_UpdateBlackList


NET_VCA_BLACKLIST_UPDATE_PIC

黑白名单修改图片信息结构体。

struct{
  DWORD               dwFacePicID;
  DWORD               dwHandle;
  DWORD               dwImageID;
  DWORD               dwFaceScore;
  NET_VCA_RECT        struVcaRect;
  BYTE                byRes[20];
}NET_VCA_BLACKLIST_UPDATE_PIC, *LPNET_VCA_BLACKLIST_UPDATE_PIC;

Members

dwFacePicID
人脸图ID
dwHandle
处理图片：0- 不处理，1- 替换，2- 新增，3- 删除
dwImageID
大图ID
dwFaceScore
人脸评分，取值范围：0~100
struVcaRect
人脸子图区域
byRes
保留

Remarks

黑名单修改时，人脸图片可以有这些操作：不处理、替换、增加和删除，根据每张人脸图的ID分开处理。 替换或者增加的人脸图可以是通过其他大图经过识别产生的小图，而且只需输入大图ID和人脸子图区域（即替换或者新增的人脸子图必须是经过识别的）。

See Also

NET_VCA_BLACKLIST_UPDATE_PARA


NET_VCA_CHAN_IN_PARAM

智能设备通道能力输入参数。

struct{
  BYTE   byVCAType;
  BYTE   byMode;
  BYTE   byRes[2];
}NET_VCA_CHAN_IN_PARAM,*LPNET_VCA_CHAN_IN_PARAM;

Members

byVCAType
智能设备类型，具体定义如下：
enum _VCA_CHAN_ABILITY_TYPE_{
  VCA_BEHAVIOR_BASE      = 1,
  VCA_BEHAVIOR_ADVANCE   = 2,
  VCA_BEHAVIOR_FULL      = 3,
  VCA_PLATE              = 4,
  VCA_ATM                = 5,
  VCA_PDC                = 6
  VCA_ITS                = 7,
  VCA_BEHAVIOR_PRISON    = 8,
}VCA_CHAN_ABILITY_TYPE
VCA_BEHAVIOR_BASE
行为分析基本版
VCA_BEHAVIOR_ADVANCE
行为分析高级版
VCA_BEHAVIOR_FULL
行为分析完整版
VCA_PLATE
车牌能力
VCA_ATM
ATM能力
VCA_PDC
人流量统计能力
VCA_ITS
智能交通事件
VCA_BEHAVIOR_PRISON
行为分析监狱版
byMode
模式，具体定义如下：

获取ATM能力时
enum _VCA_CHAN_MODE_TYPE_{
  VCA_ATM_PANEL      = 0,
  VCA_ATM_SURROUND   = 1,
  VCA_ATM_FACE       = 2
}VCA_CHAN_MODE_TYPE
VCA_ATM_PANEL
ATM面板
VCA_ATM_SURROUND
ATM环境
VCA_ATM_FACE
ATM海鑫人脸识别&私有ATM人脸识别

获取智能交通事件能力时
enum _TRAFFIC_SCENE_MODE_{
  FREEWAY  = 0,
  TUNNEL,
  BRIDGE
}TRAFFIC_SCENE_MODE
FREEWAY
高速户外场景
TUNNEL
高速隧道场景
BRIDGE
高速桥梁场景
byRes
保留，置为0

See Also

NET_DVR_GetDeviceAbility


NET_VCA_CTRLCFG

智能控制信息结构体。

struct{
  DWORD              dwSize;
  NET_VCA_CTRLINFO   struCtrlInfo[MAX_VCA_CHAN];
  BYTE               byRes[16];
}NET_VCA_CTRLCFG,*LPNET_VCA_CTRLCFG;

Members

dwSize
结构体大小
struCtrlInfo
智能通道控制信息
byRes
保留，置为0

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_VCA_CTRLINFO

智能通道控制信息结构体。

struct{
  BYTE   byVCAEnable;
  BYTE   byVCAType;
  BYTE   byStreamWithVCA;
  BYTE   byMode;
  BYTE   byRes[4];
}NET_VCA_CTRLINFO,*LPNET_VCA_CTRLINFO;

Members

byVCAEnable
是否开启智能：0-否，非0-是
byVCAType
智能通道类型，具体定义见下表：
enum _VCA_CHAN_ABILITY_TYPE_{
  VCA_BEHAVIOR_BASE      = 1,
  VCA_BEHAVIOR_ADVANCE   = 2,
  VCA_BEHAVIOR_FULL      = 3,
  VCA_PLATE              = 4,
  VCA_ATM                = 5,
  VCA_PDC                = 6
  VCA_ITS                = 7,
  VCA_BEHAVIOR_PRISON    = 8,
}VCA_CHAN_ABILITY_TYPE
VCA_BEHAVIOR_BASE
行为分析基本版
VCA_BEHAVIOR_ADVANCE
行为分析高级版
VCA_BEHAVIOR_FULL
行为分析完整版
VCA_PLATE
车牌能力
VCA_ATM
ATM能力
VCA_PDC
人流量统计能力
VCA_ITS
智能交通事件
VCA_BEHAVIOR_PRISON
行为分析监狱版
byStreamWithVCA
码流中是否带智能信息：0-否，非0-是
byMode
模式，VCA_CHAN_MODE_TYPE。ATM能力的时候需要配置。
byRes
保留，置为0

See Also

NET_VCA_CTRLCFG


NET_VCA_DEV_ABILITY

智能设备能力集结构体。

struct{
  DWORD   dwSize;
  BYTE    byVCAChanNum;
  BYTE    byPlateChanNum;
  BYTE    byBBaseChanNum;
  BYTE    byBAdvanceChanNum;
  BYTE    byBFullChanNum;
  BYTE    byATMChanNum;
  BYTE    byPDCChanNum;
  BYTE    byITSChanNum;
  BYTE    byBPrisonChanNum;
  BYTE    byFSnapChanNum;
  BYTE    byFSnapRecogChanNum;
  BYTE    byFRetrievalChanNum;
  BYTE    bySupport;
  BYTE    byRes[27];
}NET_VCA_DEV_ABILITY,*LPNET_VCA_DEV_ABILITY;

Members

dwSize
结构体大小
byVCAChanNum
智能通道个数
byPlateChanNum
车牌通道个数
byBBaseChanNum
行为基本版个数
byBAdvanceChanNum
行为高级版个数
byBFullChanNum
行为完整版个数
byATMChanNum
智能ATM通道个数
byPDCChanNum
人数统计通道个数
byITSChanNum
交通事件通道个数
byBPrisonChanNum
行为监狱版通道个数
byFSnapChanNum
人脸抓拍通道个数
byFSnapRecogChanNum
人脸抓拍和识别通道个数
byFRetrievalChanNum
人脸后检索个数
bySupport
能力，位与结果为0表示不支持，1表示支持
bySupport&0x1，表示是否支持智能跟踪
byRes
保留，置为0

See Also

NET_DVR_GetDeviceAbility


NET_VCA_DEV_INFO

前端设备信息结构体。

struct{
  NET_DVR_IPADDR   struDevIP;
  WORD             wPort;
  BYTE             byChannel;
  BYTE             byIvmsChannel;
}NET_VCA_DEV_INFO,*LPNET_VCA_DEV_INFO;

Members

struDevIP
前端设备地址
wPort
前端设备端口号
byChannel
前端设备通道号，参数值表示通道号。比如，byChannel=1，表示通道1。
byIvmsChannel
IVMS通道号


NET_VCA_DRAW_MODE

智能叠加模式参数结构体。

struct{
  DWORD    dwSize;
  BYTE     byDspAddTarget;
  BYTE     byDspAddRule;
  BYTE     byDspPicAddTarget;
  BYTE     byDspPicAddRule;
  BYTE     byRes[4];
}NET_VCA_DRAW_MODE, *LPNET_VCA_DRAW_MODE;

Members

dwSize
结构体大小
byDspAddTarget
编码是否叠加目标：0-不叠加，非0-叠加
byDspAddRule
编码是否叠加规则：0-不叠加，非0-叠加
byDspPicAddTarget
抓图是否叠加目标：0-不叠加，非0-叠加
byDspPicAddRule
抓图是否叠加规则：0-不叠加，非0-叠加
byRes
保留，置为0

See Also

NET_DVR_GetVCADrawMode NET_DVR_SetVCADrawMode


NET_VCA_ENTER_REGION

ATM进入区域参数结构体。

struct{
  DWORD             dwSize;
  BYTE              byEnable;
  BYTE              byRes1[3];
  NET_VCA_POLYGON   struPolygon;
  BYTE              byRes2[16];
}NET_VCA_ENTER_REGION, * LPNET_VCA_ENTER_REGION;

Members

dwSize
结构体大小
byEnable
是否激活, 0-否，非0-是
byRes1
保留，置为0
struPolygon
进入区域参数
byRes2
保留，置为0

See Also

NET_IVMS_ENTER_REGION


NET_VCA_EVENT_UNION

警戒规则参数结构体。

union{
  DWORD                    uLen[23];
  NET_VCA_TRAVERSE_PLANE   struTraversePlane;
  NET_VCA_AREA             struArea;
  NET_VCA_INTRUSION        struIntrusion;
  NET_VCA_LOITER           struLoiter;
  NET_VCA_TAKE_LEFT        struTakeTeft;
  NET_VCA_PARKING          struParking;
  NET_VCA_RUN              struRun;
  NET_VCA_HIGH_DENSITY     struHighDensity;
  NET_VCA_VIOLENT_MOTION   struViolentMotion;
  NET_VCA_REACH_HIGHT      struReachHight;
  NET_VCA_GET_UP           struGetUp;
  NET_VCA_LEFT             struLeft;
  NET_VCA_TAKE             struTake;
  NET_VCA_HUMAN_ENTER      struHumanEnter;
  NET_VCA_OVER_TIME        struOvertime;
  NET_VCA_STICK_UP         struStickUp;
  NET_VCA_SCANNER          struScanner;
}NET_VCA_EVENT_UNION,*LPNET_VCA_EVENT_UNION;

Members

uLen
联合体大小
struTraversePlane
穿越警戒面参数
struArea
进入/离开区域参数
struIntrusion
入侵参数
struLoiter
徘徊参数
struTakeTeft
丢包/捡包参数
struParking
停车参数
struRun
奔跑参数
struHighDensity
人员聚集参数
struViolentMotion
剧烈运动
struReachHight
攀高
struGetUp
起床
struLeft
丢包
struTake
捡包
struHumanEnter
人员进入
struOvertime
操作超时
struStickUp
贴纸条
struScanner
读卡器参数

See Also

NET_DVR_SEARCH_EVENT_RET NET_IVMS_ONE_RULE NET_VCA_ONE_RULE NET_VCA_RULE_INFO


NET_VCA_FACEMATCH_PICCOND

黑名单比对图片查询条件。

struct{
  DWORD              dwSize;
  DWORD              dwSnapFaceID;
  DWORD              dwBlackListID;
  DWORD              dwBlackListFaceID;
  BYTE               byRes[20];
}NET_VCA_FACEMATCH_PICCOND, *LPNET_VCA_FACEMATCH_PICCOND;

Members

dwSize
结构体大小
dwSnapFaceID
抓拍人脸子图ID
dwBlackListID
匹配的黑名单ID
dwBlackListFaceID
比对的黑名单人脸子图ID
byRes
保留

See Also

NET_DVR_GetFaceMatchPic


NET_VCA_FACEMATCH_PICTURE

黑名单比对查找图片结果。

struct{
  DWORD              dwSize;
  DWORD              dwSnapFaceLen;
  DWORD              dwBlackListFaceLen;
  BYTE               byRes[20];
  DWORD              *pSnapFace;
  BYTE               *pBlackListFace;
}NET_VCA_FACEMATCH_PICTURE, *LPNET_VCA_FACEMATCH_PICTURE;

Members

dwSize
结构体大小
dwSnapFaceLen
抓拍人脸子图长度
dwBlackListFaceLen
比对的黑名单人脸子图长度
byRes
保留
pSnapFace
抓拍人脸子图的图片数据
pBlackListFace
比对的黑名单人脸子图数据

See Also

NET_DVR_GetFaceMatchPic


NET_VCA_FACESNAP_INFO_ALARM

人脸抓拍信息结构体。

struct{
  DWORD             dwRelativeTime;
  DWORD             dwAbsTime;
  DWORD             dwSnapFacePicID;
  DWORD             dwSnapFacePicLen;
  NET_VCA_DEV_INFO  struDevInfo;
  BYTE              byRes[20];
  BYTE              *pBuffer1;
}NET_VCA_FACESNAP_INFO_ALARM, *LPNET_VCA_FACESNAP_INFO_ALARM;

Members

dwRelativeTime
相对时标
dwAbsTime
绝对时标
dwSnapFacePicID
抓拍人脸图ID
dwSnapFacePicLen
抓拍人脸子图的长度，为0表示没有图片，大于0表示有图片
struDevInfo
前端设备信息
byRes
保留
pBuffer1
抓拍人脸子图的图片数据

See Also

NET_VCA_FACESNAP_MATCH_ALARM


NET_VCA_FACESNAP_INFO_ALARM_LOG

人脸抓拍信息结构体。

struct{
  DWORD             dwRelativeTime;
  DWORD             dwAbsTime;
  DWORD             dwSnapFacePicID;
  NET_VCA_DEV_INFO  struDevInfo;
  BYTE              byRes[20];
}NET_VCA_FACESNAP_INFO_ALARM_LOG, *LPNET_VCA_FACESNAP_INFO_ALARM_LOG;

Members

dwRelativeTime
相对时标
dwAbsTime
绝对时标
dwSnapFacePicID
抓拍人脸图ID
struDevInfo
前端设备信息
byRes
保留

See Also

NET_VCA_FACESNAP_MATCH_ALARM_LOG


NET_VCA_FACESNAP_MATCH_ALARM

黑名单比对结果报警上传结构体。

struct{
  DWORD                          dwSize;
  float                          fSimilarity;
  NET_VCA_FACESNAP_INFO_ALARM    struSnapInfo;
  NET_VCA_BLACKLIST_INFO_ALARM   struBlackListInfo;
  BYTE                           byRes[60];
}NET_VCA_FACESNAP_MATCH_ALARM, *LPNET_VCA_FACESNAP_MATCH_ALARM;

Members

dwSize
结构体大小
fSimilarity
相似度，取值范围：[0.001,1]
struSnapInfo
人脸抓拍上传信息
struBlackListInfo
黑名单报警信息
byRes
保留

Remarks

实时抓拍与黑名单中的图片进行比对，同时输出抓拍信息和黑名单相关信息（包括比对出的相似度最高的一张人脸图片）。

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_VCA_FACESNAP_MATCH_ALARM_LOG

黑名单比对报警结果信息。

struct{
  DWORD                               dwSize;
  float                               fSimilarity;
  NET_VCA_FACESNAP_INFO_ALARM_LOG     struSnapInfoLog;
  NET_VCA_BLACKLIST_INFO_ALARM_LOG    struBlackListInfoLog;
  BYTE                                byRes[60];
}NET_VCA_FACESNAP_MATCH_ALARM_LOG, *LPNET_VCA_FACESNAP_MATCH_ALARM_LOG;

Members

dwSize
结构大小
fSimilarity
相似度，取值范围：[0.001,1]
struSnapInfoLog
人脸抓拍信息
struBlackListInfoLog
黑名单信息
byRes
保留

See Also

NET_DVR_FindNextFaceMatchAlarm


NET_VCA_FACESNAP_RESULT

人脸抓拍结果结构体。

struct{
  DWORD                    dwSize;
  DWORD                    dwRelativeTime;
  DWORD                    dwAbsTime;
  DWORD                    dwFacePicID;
  DWORD                    dwFaceScore;
  NET_VCA_TARGET_INFO      struTargetInfo;
  NET_VCA_RECT             struRect;
  NET_VCA_DEV_INFO         struDevInfo;
  DWORD                    dwFacePicLen;
  DWORD                    dwBackgroundPicLen;
  BYTE                     byRes[60];
  BYTE                     *pBuffer1;
  BYTE                     *pBuffer2;
}NET_VCA_FACESNAP_RESULT, *LPNET_VCA_FACESNAP_RESULT;

Members

dwSize
结构体大小
dwRelativeTime
相对时标
dwAbsTime
绝对时标
dwFacePicID
人脸图ID，用于人脸跟踪时产生轨迹，像行为分析一样保存在码流信息里面有播放库去解析并显示轨迹
dwFaceScore
人脸评分，范围：0~100
struTargetInfo
报警目标信息
struRect
人脸子图区域
struDevInfo
前端设备信息
dwFacePicLen
人脸子图的长度，为0表示没有图片，大于0表示有图片
dwBackgroundPicLen
背景图的长度，为0表示没有图片，大于0表示有图片(保留)
byRes
保留
*pBuffer1
人脸子图的图片数据
*pBuffer2
背景图的图片数据（保留，通过查找背景图接口可以获取背景图）

See Also

NET_DVR_SetDVRMessageCallBack_V30


NET_VCA_FACESNAPCFG

人脸抓拍规则参数结构体。

struct{
  DWORD                        dwSize;
  BYTE                         bySnapTime;
  BYTE                         bySnapInterval;
  BYTE                         bySnapThreshold;
  BYTE                         byGenerateRate;
  BYTE                         bySensitive;
  BYTE                         byRes1[3];
  NET_DVR_JPEGPARA             struPictureParam;
  NET_VCA_SINGLE_FACESNAPCFG   struRule[MAX_RULE_NUM];
  NET_DVR_SCHEDTIME            struAlarmTime[MAX_RULE_NUM_4][MAX_TIMESEGMENT];
  BYTE                         byRes2[36];
}NET_VCA_FACESNAPCFG, *LPNET_VCA_FACESNAPCFG;

Members

dwSize
结构体大小
bySnapTime
单个目标人脸的抓拍次数，取值范围：0~10
bySnapInterval
抓拍间隔，单位：帧
bySnapThreshold
抓拍阈值，取值范围：0-100
byGenerateRate
目标生成速度，范围[1, 5]
bySensitive
目标检测灵敏度，范围[1, 5]
byRes1
保留
struPictureParam
图片规格结构（图片分辨率和图片质量）
struRule
人脸抓拍规则
struAlarmTime
布防时间
byRes2
保留

Remarks

评分大于抓拍阈值时，才进行抓拍。

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_VCA_FD_IMAGE_CFG

图片信息结构体。

struct{
  DWORD              dwWidth;
  DWORD              dwHeight;
  DWORD              dwImageLen;
  BYTE               byRes[20];
  BYTE               *pImage;
}NET_VCA_FD_IMAGE_CFG, *LPNET_VCA_FD_IMAGE_CFG;

Members

dwWidth
灰度图像宽度
dwHeight
灰度图像高度
dwImageLen
灰度图像数据长度
byRes
保留
pImage
灰度图像数据

See Also

NET_VCA_FD_PROCIMG_CFG


NET_VCA_FD_PROCIMG_CFG

图片检测条件结构体。

struct{
  DWORD                  dwSize;
  BYTE                   byEnable;
  BYTE                   bySensitivity;
  BYTE                   byRes1[22];
  NET_VCA_SIZE_FILTER    struSizeFilter;
  NET_VCA_POLYGON        struPolygon;
  NET_VCA_FD_IMAGE_CFG   struFDImage;
  BYTE                   byRes2[20];
}NET_VCA_FD_PROCIMG_CFG, *LPNET_VCA_FD_PROCIMG_CFG;

Members

dwSize
结构体大小
byEnable
是否激活规则：0- 否， 1- 是
bySensitivity
检测灵敏度，取值范围：[0,5]
byRes1
保留
struSizeFilter
尺寸过滤器
struPolygon
多边形
struFDImage
图片信息
byRes2
保留

See Also

NET_DVR_DetectImage


NET_VCA_FD_PROCIMG_RESULT

单张图片检测结果。

struct{
  DWORD                 dwSize;
  DWORD                 dwImageId;
  BYTE                  byRes[20];
  DWORD                 dwSubImageNum;
  NET_VCA_SUB_PROCIMG   struProcImg[MAX_TARGET_NUM];
}NET_VCA_FD_PROCIMG_RESULT, *LPNET_VCA_FD_PROCIMG_RESULT;

Members

dwSize
结构体大小
dwImageId
大图ID
byRes
保留
dwSubImageNum
人脸子图张数
struProcImg
单张子图信息

See Also

NET_DVR_DetectImage


NET_VCA_FIND_PICTURECOND

黑白名单比对报警结构查询条件。

struct{
  LONG               lChannel;
  NET_DVR_TIME       struStartTime;
  NET_DVR_TIME       struStopTime;
  BYTE               byRes[12];
}NET_VCA_FIND_PICTURECOND, *LPNET_VCA_FIND_PICTURECOND;

Members

lChannel
通道号
struStartTime
开始时间
struStopTime
结束时间
byRes
保留

See Also

NET_DVR_FindFaceMatchAlarm


NET_VCA_FIND_PICTURECOND_ADVANCE

事后检索条件结构体。

struct{
  LONG                            lChannel;
  NET_DVR_TIME                    struStartTime;
  NET_DVR_TIME                    struStopTime;
  BYTE                            byThreshold;
  BYTE                            byRes[23];
  DWORD                           dwFindType;
  NET_VCA_FIND_SNAPPIC_UNION      uFindParam;
}NET_VCA_FIND_PICTURECOND_ADVANCE, *LPNET_VCA_FIND_PICTURECOND_ADVANCE;

Members

lChannel
通道号
struStartTime
开始时间
struStopTime
结束时间
byThreshold
阈值，取值范围：0~100
byRes
保留
dwFindType
检索类型，详见：
enum _VCA_FIND_SNAPPIC_TYPE_{
  VCA_NORMAL_FIND  = 0x00000000,
  VCA_ADVANCE_FIND = 0x00000001
}VCA_FIND_SNAPPIC_TYPE
VCA_NORMAL_FIND
普通检索
VCA_ADVANCE_FIND
高级检索
uFindParam
检索参数

See Also

NET_DVR_AdvanceFindSnapPicture


NET_VCA_FIND_SNAPPIC_UNION

事后检索参数联合体。

struct{
  NET_VCA_NORMAL_FIND        struNormalFind;
  NET_VCA_ADVANCE_FIND       struAdvanceFind;
}NET_VCA_FIND_SNAPPIC_UNION, *LPNET_VCA_FIND_SNAPPIC_UNION;

Members

struNormalFind
普通检索（与抓拍库比对）
struAdvanceFind
高级检索（与抓拍库比对）

Remarks

普通检索就是可以输出单张检测的结果与抓拍数据库比对，输出与该输入的人脸条件相符合的结果，此时的输入条件是大图ID、人脸评分、人脸子图区域.

高级检索是通过事后查询或者普通检索获得的结果（人脸子图ID）与抓拍数据库比对，输出与条件符合的结果，此时只需要输入人脸子图ID即可。

See Also

NET_VCA_FIND_PICTURECOND_ADVANCE


NET_VCA_GET_UP

起身参数结构体。

struct{
  NET_VCA_POLYGON      struRegion;
  WORD                 wDuration;
  BYTE                 byRes[6];
}NET_VCA_GET_UP, *LPNET_VCA_GET_UP;

Members

struRegion
区域范围
wDuration
触发事件阈值，1-100秒
byRes
保留

See Also

NET_VCA_EVENT_UNION


NET_VCA_HIGH_DENSITY

人员聚集参数结构体。

struct{
  NET_VCA_POLYGON   struRegion;
  float             fDensity;
  BYTE              byRes[2];
  WORD              wDuration;
}NET_VCA_HIGH_DENSITY,*LPNET_VCA_HIGH_DENSITY;

Members

struRegion
区域范围
fDensity
密度比率，取值范围[0.1,1.0]
byRes
保留，置为0
wDuration
触发人员聚集参数报警阈值，20-360s

See Also

NET_VCA_EVENT_UNION


NET_VCA_HUMAN_ATTRIBUTE

人员信息结构体。

struct{
  BYTE                       bySex;
  BYTE                       byCertificateType;
  BYTE                       byBirthDate[MAX_HUMAN_BIRTHDATE_LEN];
  BYTE                       byName[NAME_LEN];
  NET_DVR_AREAINFOCFG        struNativePlace;
  BYTE                       byCertificateNumber[NAME_LEN];
  BYTE                       byRes2[20];
}NET_VCA_HUMAN_ATTRIBUTE, *LPNET_VCA_HUMAN_ATTRIBUTE;

Members

bySex
性别：0- 不启用，1- 男，2- 女
byCertificateType
证件类型：0- 不启用，1- 身份证，2- 警官证
byBirthDate
出生年月，如：201106
byName
姓名
struNativePlace
籍贯
byCertificateNumber
证件号
byRes2
保留

See Also

NET_VCA_BLACKLIST_INFO NET_VCA_BLACKLIST_COND


NET_VCA_HUMAN_ENTER

人员进入参数结构体。

struct{
  DWORD                 dwRes[23];
}NET_VCA_HUMAN_ENTER, *LPNET_VCA_HUMAN_ENTER;

Members

dwRes
保留

See Also

NET_VCA_EVENT_UNION


NET_VCA_INTRUSION

入侵参数结构体。

struct{
  NET_VCA_POLYGON   struRegion;
  WORD              wDuration;
  BYTE              byRes[6];
}NET_VCA_INTRUSION,*LPNET_VCA_INTRUSION;

Members

struRegion
区域范围
wDuration
报警延迟时间: 1-100秒，建议5秒，判断有效报警的时间(如果是ATM设备，时间为1-1200秒)
byRes
保留，置为0

See Also

NET_VCA_EVENT_UNION


NET_VCA_LEFT

丢包参数结构体。

struct{
  NET_VCA_POLYGON      struRegion;
  WORD                 wDuration;
  BYTE                 byRes[6];
}NET_VCA_LEFT, *LPNET_VCA_LEFT;

Members

struRegion
区域范围
wDuration
触发事件阈值，10-100秒
byRes
保留

See Also

NET_VCA_EVENT_UNION


NET_VCA_LINE

线结构参数结构体。

struct{
  NET_VCA_POINT   struStart;
  NET_VCA_POINT   struEnd;
}NET_VCA_LINE,*LPNET_VCA_LINE;

Members

struStart
起点
struEnd
终点

See Also

NET_VCA_REACH_HIGHT NET_VCA_TRAVERSE_PLANE


NET_VCA_LOITER

徘徊参数结构体。

struct{
  NET_VCA_POLYGON   struRegion;
  WORD              wDuration;
  BYTE              byRes[6];
}NET_VCA_LOITER,*LPNET_VCA_LOITER;

Members

struRegion
区域范围
wDuration
触发徘徊报警的持续时间：1-120秒，建议10秒
byRes
保留，置为0

See Also

NET_VCA_EVENT_UNION


NET_VCA_MASK_REGION

屏蔽区域结构体。

struct{
  BYTE              byEnable;
  BYTE              byRes[3];
  NET_VCA_POLYGON   struPolygon;
}NET_VCA_MASK_REGION, *LPNET_VCA_MASK_REGION;

Members

byEnable
是否激活, 0-否，非0-是
byRes
保留，置为0
struPolygon
屏蔽多边形

See Also

NET_VCA_MASK_REGION_LIST


NET_VCA_MASK_REGION_LIST

屏蔽区域链表结构体。

struct{
  DWORD                 dwSize;
  BYTE                  byRes[4];
  NET_VCA_MASK_REGION   struMask[MAX_MASK_REGION_NUM];
}NET_VCA_MASK_REGION_LIST, *LPNET_VCA_MASK_REGION_LIST;

Members

dwSize
结构体大小
byRes
保留，置为0
struMask
屏蔽区域数组

See Also

NET_IVMS_MASK_REGION_LIST


NET_VCA_NORMAL_FIND

普通检索参数结构体。

struct{
  DWORD              dwImageID;
  DWORD              dwFaceScore;
  NET_VCA_RECT       struVcaRect;
  BYTE               byRes[20];
}NET_VCA_NORMAL_FIND, *LPNET_VCA_NORMAL_FIND;

Members

dwImageID
大图ID
dwFaceScore
人脸评分
struVcaRect
人脸子图区域
byRes
保留

See Also

NET_VCA_FIND_SNAPPIC_UNION


NET_VCA_ONE_RULE

警戒规则参数结构体。

struct{
  BYTE                          byActive;
  BYTE                          byRes[7];
  BYTE                          byRuleName[NAME_LEN];
  VCA_EVENT_TYPE                dwEventType;
  NET_VCA_EVENT_UNION           uEventParam;
  NET_VCA_SIZE_FILTER           struSizeFilter;
  NET_DVR_SCHEDTIME             struAlarmTime[MAX_DAYS][MAX_TIMESEGMENT_2];
  NET_DVR_HANDLEEXCEPTION_V30   struHandleType;
  BYTE                          byRelRecordChan[MAX_CHANNUM_V30];
}NET_VCA_ONE_RULE,*LPNET_VCA_ONE_RULE;

Members

byActive
是否激活规则：0-否；非0-是
byRes
保留，置为0
byRuleName
规则名称
dwEventType
行为分析事件类型，具体定义见下表：
enum _VCA_EVENT_TYPE_{
  VCA_TRAVERSE_PLANE   = 0x1,
  VCA_ENTER_AREA       = 0x2,
  VCA_EXIT_AREA        = 0x4,
  VCA_INTRUSION        = 0x8,
  VCA_LOITER           = 0x10,
  VCA_LEFT_TAKE        = 0x20,
  VCA_PARKING          = 0x40,
  VCA_RUN              = 0x80,
  VCA_HIGH_DENSITY     = 0x100,
  VCA_VIOLENT_MOTION   = 0x200,
  VCA_REACH_HIGHT      = 0x400,
  VCA_GET_UP           = 0x800,
  VCA_LEFT             = 0x1000,
  VCA_TAKE             = 0x2000,
  VCA_HUMAN_ENTER      = 0x10000000,
  VCA_OVER_TIME        = 0x20000000,
  VCA_STICK_UP         = 0x40000000,
  VCA_INSTALL_SCANNER  = 0x80000000
}VCA_EVENT_TYPE
VCA_TRAVERSE_PLANE
穿越警戒面
VCA_ENTER_AREA
目标进入区域，支持区域规则
VCA_EXIT_AREA
目标离开区域，支持区域规则
VCA_INTRUSION
周界入侵，支持区域规则
VCA_LOITER
徘徊，支持区域规则
VCA_LEFT_TAKE
丢包捡包，支持区域规则
VCA_PARKING
停车，支持区域规则
VCA_RUN
奔跑，支持区域规则
VCA_HIGH_DENSITY
区域内人员密度，支持区域规则
VCA_VIOLENT_MOTION
剧烈运动检测
VCA_REACH_HIGHT
攀高检测
VCA_GET_UP
起身检测
VCA_LEFT
丢包
VCA_TAKE
捡包
VCA_HUMAN_ENTER
人靠近ATM（仅在ATM_PANEL模式下支持）
VCA_OVER_TIME
操作超时（仅在ATM_PANEL模式下支持）
VCA_STICK_UP
贴纸条,支持区域规则
VCA_INSTALL_SCANNER
安装读卡器,支持区域规则
uEventParam
行为分析事件参数
struSizeFilter
尺寸过滤器
struAlarmTime
布防时间
struHandleType
处理方式
byRelRecordChan
报警触发的录象通道：1表示触发该通道；0表示不触发

See Also

NET_VCA_RULECFG


NET_VCA_OVER_TIME

操作超时结构体。

struct{
  NET_VCA_POLYGON      struRegion;
  WORD                 wDuration;
  BYTE                 byRes[6];
}NET_VCA_OVER_TIME, *LPNET_VCA_OVER_TIME;

Members

struRegion
区域范围
wDuration
操作报警时间阈值
byRes
保留

See Also

NET_VCA_EVENT_UNION


NET_VCA_PARKING

停车参数结构体。

struct{
  NET_VCA_POLYGON   struRegion;
  WORD              wDuration;
  BYTE              byRes[6];
}NET_VCA_PARKING,*LPNET_VCA_PARKING;

Members

struRegion
区域范围
wDuration
触发停车报警的持续时间：1-120秒，建议10秒
byRes
保留，置为0

See Also

NET_VCA_EVENT_UNION


NET_VCA_PICMODEL_RESULT

单张图片的模型结果结构体。

struct{
  DWORD      dwImageLen;
  DWORD      dwModelLen;
  BYTE       byRes[20];
  BYTE       *pImage;
  BYTE       *pModel;
}NET_VCA_PICMODEL_RESULT, *LPNET_VCA_PICMODEL_RESULT;

Members

dwImageLen
图片数据长度
dwModelLen
模型数据长度
byRes
保留
pImage
人脸图片数据指针
pModel
模型数据指针

See Also

NET_DVR_GetPictureModel NET_VCA_BLACKLIST_PARA


NET_VCA_POINT

点坐标参数结构体。

struct{
  float  fX;
  float  fY;
}NET_VCA_POINT,*LPNET_VCA_POINT;

Members

fX
X轴坐标，取值范围[0.001,1]
fY
Y轴坐标，取值范围[0.001,1]


NET_VCA_POLYGON

多边形结构体。

struct{
  DWORD           dwPointNum;
  NET_VCA_POINT   struPos[VCA_MAX_POLYGON_POINT_NUM];
}NET_VCA_POLYGON,*LPNET_VCA_POLYGON;

Members

dwPointNum
有效点（大于等于3），若是3点在一条线上认为是无效区域，线交叉认为是无效区域
struPos
多边形边界点，最大值为10


NET_VCA_REACH_HIGHT

攀高参数结构体。

struct{
  NET_VCA_LINE         struVcaLine;
  WORD                 wDuration;
  BYTE                 byRes[6];
}NET_VCA_REACH_HIGHT, *LPNET_VCA_REACH_HIGHT;

Members

struVcaLine
攀高警戒面
wDuration
触发事件阈值，1-100秒
byRes
保留

See Also

NET_VCA_EVENT_UNION


NET_VCA_RECT

区域框参数结构体。

struct{
  float   fX;
  float   fY;
  float   fWidth;
  float   fHeight;
}NET_VCA_RECT,*LPNET_VCA_RECT;

Members

fX
边界框左上角点的X轴坐标，取值范围[0.001,1]
fY
边界框左上角点的Y轴坐标，取值范围[0.001,1]
fWidth
边界框的宽度，取值范围[0.001,1]
fHeight
边界框的高度，取值范围[0.001,1]


NET_VCA_REGISTER_PIC

黑名单图片信息结构体。

struct{
  DWORD          dwImageID;
  DWORD          dwFaceScore;
  NET_VCA_RECT   struVcaRect;
  BYTE           byRes[20];
}NET_VCA_REGISTER_PIC, *LPNET_VCA_REGISTER_PIC;

Members

dwImageID
大图ID
dwFaceScore
人脸评分，取值范围：0-100
struVcaRect
人脸子图区域
byRes
保留

See Also

NET_VCA_BLACKLIST_PARA NET_DVR_GetPictureModel


NET_VCA_RULE_ALARM

行为分析报警结构体。

struct{
  DWORD                 dwSize;
  DWORD                 dwRelativeTime;
  DWORD                 dwAbsTime;
  NET_VCA_RULE_INFO     struRuleInfo;
  NET_VCA_TARGET_INFO   struTargetInfo;
  NET_VCA_DEV_INFO      struDevInfo;
  DWORD                 dwPicDataLen;
  BYTE                  byPicType;
  BYTE                  byRes[3];
  DWORD                 dwRes[3];
  BYTE                  *pImage;
}NET_VCA_RULE_ALARM,*LPNET_VCA_RULE_ALARM;

Members

dwSize
结构体大小
dwRelativeTime
相对时标，从开启智能到触发事件的时间
dwAbsTime
绝对时标
struRuleInfo
事件规则信息
struTargetInfo
报警目标信息
struDevInfo
前端设备信息
dwPicDataLen
返回图片的长度。为0表示没有图片，大于0表示该结构后面紧跟图片数据
byPicType
0—普通图片，1—对比图片
byRes
保留，置为0
dwRes
保留，置为0
pImage
指向图片的指针

See Also

NET_DVR_SetDVRMessageCallBack_V30 NET_DVR_StartListen_V30


NET_VCA_RULE_INFO

事件规则信息结构体。

struct{
  BYTE                  byRuleID;
  BYTE                  byRes[3];
  BYTE                  byRuleName[NAME_LEN];
  VCA_EVENT_TYPE        dwEventType;
  NET_VCA_EVENT_UNION   uEventParam;
}NET_VCA_RULE_INFO,*LPNET_VCA_RULE_INFO;

Members

byRuleID
规则序号，为规则配置结构下标，0-7
byRes
保留，置为0
byRuleName
规则名称
dwEventType
警戒事件类型，具体定义如下：
enum _VCA_EVENT_TYPE_{
  VCA_TRAVERSE_PLANE   = 0x1,
  VCA_ENTER_AREA       = 0x2,
  VCA_EXIT_AREA        = 0x4,
  VCA_INTRUSION        = 0x8,
  VCA_LOITER           = 0x10,
  VCA_LEFT_TAKE        = 0x20,
  VCA_PARKING          = 0x40,
  VCA_RUN              = 0x80,
  VCA_HIGH_DENSITY     = 0x100,
  VCA_VIOLENT_MOTION   = 0x200,
  VCA_REACH_HIGHT      = 0x400,
  VCA_GET_UP           = 0x800,
  VCA_LEFT             = 0x1000,
  VCA_TAKE             = 0x2000,
  VCA_HUMAN_ENTER      = 0x10000000,
  VCA_OVER_TIME        = 0x20000000,
  VCA_STICK_UP         = 0x40000000,
  VCA_INSTALL_SCANNER  = 0x80000000
}VCA_EVENT_TYPE
VCA_TRAVERSE_PLANE
穿越警戒面
VCA_ENTER_AREA
目标进入区域，支持区域规则
VCA_EXIT_AREA
目标离开区域，支持区域规则
VCA_INTRUSION
周界入侵，支持区域规则
VCA_LOITER
徘徊，支持区域规则
VCA_LEFT_TAKE
丢包捡包，支持区域规则
VCA_PARKING
停车，支持区域规则
VCA_RUN
奔跑，支持区域规则
VCA_HIGH_DENSITY
区域内人员密度，支持区域规则
VCA_VIOLENT_MOTION
剧烈运动检测
VCA_REACH_HIGHT
攀高检测
VCA_GET_UP
起身检测
VCA_LEFT
丢包
VCA_TAKE
捡包
VCA_HUMAN_ENTER
人靠近ATM（仅在ATM_PANEL模式下支持）
VCA_OVER_TIME
操作超时（仅在ATM_PANEL模式下支持）
VCA_STICK_UP
贴纸条,支持区域规则
VCA_INSTALL_SCANNER
安装读卡器,支持区域规则
uEventParam
事件参数

See Also

NET_VCA_RULE_ALARM


NET_VCA_RULECFG

行为分析参数结构体。

struct{
  DWORD              dwSize;
  BYTE               byPicProType;
  BYTE               byUpLastAlarm;
  BYTE               byPicRecordEnable;
  BYTE               byRes;
  NET_DVR_JPEGPARA   struPictureParam;
  NET_VCA_ONE_RULE   struRule[MAX_RULE_NUM];
}NET_VCA_RULECFG,*LPNET_VCA_RULECFG;

Members

dwSize
结构体大小
byPicProType
报警时图片处理方式：0-不处理；非0-处理
byUpLastAlarm
是否先上传最近一次的报警，0-否，1-是
byPicRecordEnable
是否启用图片存储：0- 不启用，1- 启用
byRes
保留，置为0
struPictureParam
图片规格结构
struRule
规则数组

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_VCA_RUN

奔跑参数结构体。

struct{
  NET_VCA_POLYGON   struRegion;
  float             fRunDistance;
  BYTE              byRes[4];
}NET_VCA_RUN,*LPNET_VCA_RUN;

Members

struRegion
区域范围
fRunDistance
人奔跑最大距离，取值范围[0.1,1.00]
byRes
保留，置为0

See Also

NET_VCA_EVENT_UNION


NET_VCA_SAVE_PATH_CFG

设备存储信息结构体。

struct{
  DWORD                    dwSize;
  NET_VCA_SINGLE_PATH      struPathInfo[MAX_DISKNUM_V30];
  BYTE                     byRes[40];
}NET_VCA_SAVE_PATH_CFG, *LPNET_VCA_SAVE_PATH_CFG;

Members

dwSize
结构体大小
struPathInfo
单个分区信息
byRes
保留

See Also

NET_DVR_GetDVRConfig NET_DVR_SetDVRConfig


NET_VCA_SCANNER

读卡器参数结构体。

struct{
  NET_VCA_POLYGON   struRegion;
  WORD              wDuration;
  BYTE              bySensitivity;
  BYTE              byRes[5];
}NET_VCA_SCANNER,*LPNET_VCA_SCANNER;

Members

struRegion
区域范围
wDuration
读卡持续时间：4-60秒，建议10s秒
bySensitivity
灵敏度参数，范围[1,5]
byRes
保留，置为0

See Also

NET_VCA_EVENT_UNION


NET_VCA_SINGLE_BLACKLIST_PIC

单张照片信息结构体。

struct{
  DWORD       dwFacePicID;
  DWORD       dwFacePicLen;
  BYTE        byRes[20];
  BYTE        *pFacePic;
}NET_VCA_SINGLE_BLACKLIST_PIC, *LPNET_VCA_SINGLE_BLACKLIST_PIC;

Members

dwFacePicID
人脸图ID
dwFacePicLen
图片数据长度
byRes
保留
pFacePic
图片数据

Remarks

dwFacePicID由黑名单添加时建模产生。


NET_VCA_SINGLE_FACESNAPCFG

人脸抓拍规则参数（单条）结构体。

struct{
  BYTE                    byActive;
  BYTE                    byRes[3];
  NET_VCA_SIZE_FILTER     struSizeFilter;
  NET_VCA_POLYGON         struVcaPolygon;
}NET_VCA_SINGLE_FACESNAPCFG, *LPNET_VCA_SINGLE_FACESNAPCFG;

Members

byActive
是否激活规则：0- 否，1- 是
byRes
保留
struSizeFilter
尺寸过滤器
struVcaPolygon
人脸识别区域

See Also

NET_VCA_FACESNAPCFG


NET_VCA_SINGLE_PATH

单个分区配置结构体。

struct{
  BYTE         byActive;
  BYTE         byType;
  BYTE         byRes1[6];
  DWORD        dwDiskDriver;
  DWORD        dwLeftSpace;
  BYTE         byRes2[8];
}NET_VCA_SINGLE_PATH, *LPNET_VCA_SINGLE_PATH;

Members

byActive
是否可用：0- 否，1- 是
byType
0- 存储抓拍，1- 存储黑名单比对报警，2- 存储抓拍和黑名单比对报警
byRes1
保留
dwDiskDriver
盘符号，从0开始
dwLeftSpace
预留容量，单位为G
byRes2
保留

See Also

NET_VCA_SAVE_PATH_CFG


NET_VCA_SIZE_FILTER

尺寸过滤器参数结构体。

struct{
  BYTE           byActive;
  BYTE           byMode;
  BYTE           byRes[2];
  NET_VCA_RECT   struMiniRect;
  NET_VCA_RECT   struMaxRect;
}NET_VCA_SIZE_FILTER,*LPNET_VCA_SIZE_FILTER;

Members

byActive
是否激活尺寸过滤器，0-否 ，非0-是
byMode
过滤器模式，具体定义如下：
enum _VCA_SIZE_FILTER_MODE_{
  IMAGE_PIX_MODE,
  REAL_WORLD_MODE,
  DEFAULT_MODE
}SIZE_FILTER_MODE
IMAGE_PIX_MODE
根据像素大小设置
REAL_WORLD_MODE
根据实际大小设置
DEFAULT_MODE
默认模式(目前ATM支持)
byRes
保留，置为0
struMiniRect
最小目标框，全0表示不设置。实际模式时取值范围为0-50，单位为m。
struMaxRect
最大目标框，全0表示不设置


NET_VCA_STICK_UP

贴纸条参数结构体。

struct{
  NET_VCA_POLYGON   struRegion;
  WORD              wDuration;
  BYTE              bySensitivity;
  BYTE              byRes[5];
}NET_VCA_STICK_UP,*LPNET_VCA_STICK_UP;

Members

struRegion
区域范围
wDuration
触发时间阈值：4-60秒，建议10秒
bySensitivity
灵敏度参数，范围[1,5]
byRes
保留，置为0

See Also

NET_VCA_EVENT_UNION


NET_VCA_SUB_PROCIMG

单张子图信息结构体。

struct{
  DWORD              dwImageLen;
  DWORD              dwFaceScore;
  NET_VCA_RECT       struVcaRect;
  BYTE               byRes[20];
  BYTE               *pImage;
}NET_VCA_SUB_PROCIMG, *LPNET_VCA_SUB_PROCIMG;

Members

dwImageLen
图片数据长度
dwFaceScore
人脸评分，取值范围：0~100
struVcaRect
人脸子图区域
byRes
保留
pImage
图片数据

See Also

NET_VCA_FD_PROCIMG_RESULT


NET_VCA_SUB_SNAPPIC_DATA

人脸图片结构体。

struct{
  DWORD              dwFacePicID;
  DWORD              dwFacePicLen;
  NET_DVR_TIME       struSnapTime;
  DWORD              dwSimilarity;
  BYTE               byRes[16];
  char               sPicBuf[MAX_FACE_PIC_LEN];
}NET_VCA_SUB_SNAPPIC_DATA, *LPNET_VCA_SUB_SNAPPIC_DATA;

Members

dwFacePicID
人脸图ID
dwFacePicLen
人脸图数据长度
struSnapTime
抓拍时间
dwSimilarity
相似度
byRes
保留
sPicBuf
图片数据

See Also

此处的图片ID可供后面事后检索用。

See Also

NET_DVR_FindNextSnapPic


NET_VCA_TAKE

捡包参数结构体。

struct{
  NET_VCA_POLYGON      struRegion;
  WORD                 wDuration;
  BYTE                 byRes[6];
}NET_VCA_TAKE, *LPNET_VCA_TAKE;

Members

struRegion
区域范围
wDuration
触发捡包报警阈值，10-100秒
byRes
保留

See Also

NET_VCA_EVENT_UNION


NET_VCA_TAKE_LEFT

丢包/捡包参数结构体。

struct{
  NET_VCA_POLYGON   struRegion;
  WORD              wDuration;
  BYTE              byRes[6];
}NET_VCA_TAKE_LEFT,*LPNET_VCA_TAKE_LEFT;

Members

struRegion
区域范围
wDuration
触发丢包/捡包报警的持续时间：1-120秒，建议10秒（如果ATM设备，时间为4-60秒）
byRes
保留，置为0

See Also

NET_VCA_EVENT_UNION


NET_VCA_TARGET_INFO

报警目标信息结构体。

struct{
  DWORD          dwID;
  NET_VCA_RECT   struRect;
  BYTE           byRes[4];
}NET_VCA_TARGET_INFO,*LPNET_VCA_TARGET_INFO;

Members

dwID
目标ID，人员密度过高报警时为0
struRect
目标边界框
byRes
保留，置为0

See Also

NET_DVR_FACEDETECT_ALARM NET_VCA_FACESNAP_RESULT NET_VCA_RULE_ALARM


NET_VCA_TRAVERSE_PLANE

穿越警戒面参数结构体。

struct{
  NET_VCA_LINE          struPlaneBottom;
  VCA_CROSS_DIRECTION   dwCrossDirection;
  BYTE                  byRes1;
  BYTE                  byPlaneHeight;
  BYTE                  byRes2[38];
}NET_VCA_TRAVERSE_PLANE,*LPNET_VCA_TRAVERSE_PLANE;

Members

struPlaneBottom
警戒面底边
dwCrossDirection
穿越方向，具体定义见下表：
enum _VCA_CROSS_DIRECTION_{
  VCA_BOTH_DIRECTION  = 0,
  VCA_LEFT_GO_RIGHT   = 1,
  VCA_RIGHT_GO_LEFT   = 2
}VCA_CROSS_DIRECTION
VCA_BOTH_DIRECTION
双向
VCA_LEFT_GO_RIGHT
由左至右
VCA_RIGHT_GO_LEFT
由右至左
byRes1
保留，置为0
byPlaneHeight
警戒面高度
byRes2
保留，置为0

See Also

NET_VCA_EVENT_UNION


NET_VCA_VIOLENT_MOTION

剧烈运动参数结构体。

struct{
  NET_VCA_POLYGON      struRegion;
  WORD                 wDuration;
  BYTE                 bySensitivity;
  BYTE                 byRes[5];
}NET_VCA_VIOLENT_MOTION, *LPNET_VCA_VIOLENT_MOTION;

Members

struRegion
区域范围
wDuration
触发事件阈值，1-50秒
bySensitivity
灵敏度参区域范围数，范围[1,5]
byRes
保留

See Also

NET_VCA_EVENT_UNION


TTY_CONFIG

串口参数结构体。

struct{
  BYTE         baudrate;
  BYTE         databits;
  BYTE         stopbits;
  BYTE         parity;
  BYTE         flowcontrol;
  BYTE         res[3];
}TTY_CONFIG,*LPTTY_CONFIG;

Members

baudrate
波特率
databits
数据位
stopbits
停止位
parity
奇偶校验位
flowcontrol
流控
res
保留，置为0


设备RAID能力XML描述

能力类型宏定义 | 能力类型说明 | pInBuf | pOutBuf
DEVICE_RAID_ABILITY | 获取设备RAID能力 | 无 | 设备RAID能力XML描述

  • 输出参数XML格式：
    • <RAID version=”2.0”>

    <RaidType>
      /*RAID类型，1-MARVELL RAID卡，2-软RAID*/
      <Range>1,2</Range>
    </RaidType>

    <RaidAutoRebuild>
      /*是否支持配置RAID自动重建，1-支持，不支持无此项*/
      <Range>1</Range>
    </RaidAutoRebuild>

    <AdapterUpgrade>
      /*是否支持固件升级，1-支持，不支持无此项*/
      <Range>1</Range>
    </AdapterUpgrade>

    <MaxPdCount>
      /*最大物理磁盘个数*/
      <Value>1</Value>
    </MaxPdCount>

    <MaxArrayCount>
      /*最大阵列个数*/
      <Value>1</Value>
    </MaxArrayCount>

    <MaxVdCount>
      /*最大可显示虚拟磁盘个数*/
      <Value>1</Value>
    </MaxVdCount>

    <MaxCreateVdCount>
      /*最大可创建虚拟磁盘个数*/
      <Value>1</Value>
    </MaxCreateVdCount>

    <SpareType>
      /*热备类型，1-全局热备，2-指定阵列热备 */
      <Range>1,2</Range>
    </SpareType>

    <RaidMode>
      /*阵列模式: 1-RAID0,2-RAID1,3-RAID10,4-RAID1E,5-RAID5,6-RAID6,7-RAID50,8-JBOD,9-RAID60*/
      <Range>1,2,3,4,5,6,7,8,9</Range>
    </RaidMode>

    <RebuildArray>
      /*是否支持阵列重建，1-支持，不支持无此项*/
      <Range>1</Range>
    </RebuildArray>

    <MigrateArray>
      /*是否支持阵列迁移，1-支持，不支持无此项*/
      <Range>1</Range>
    </MigrateArray>

    <MigrateArrayType>
      /*支持阵列迁移类型，不支持阵列迁移无此项*/
      /*1-RAID0,2-RAID1,3-RAID10,4-RAID1E,5-RAID5,6-RAID6,7-RAID50,8-JBOD,9-RAID60*/

      <RAID0> //迁移前阵列类型
        <Range>2,3,4,5,6,7,8,9</Range> //迁移后阵列类型
      </RAID0>

      <RAID1> //迁移前阵列类型
        <Range>1,3,4,5,6,7,8,9</Range> //迁移后阵列类型
      </RAID1>

      <RAID10> //迁移前阵列类型
        <Range>1,2,4,5,6,7,8,9</Range> //迁移后阵列类型
      </RAID10>

      <RAID1E> //迁移前阵列类型
        <Range>1,2,3,5,6,7,8,9</Range> //迁移后阵列类型
      </RAID1E>

      <RAID5> //迁移前阵列类型
        <Range>1,2,3,4,6,7,8,9</Range> //迁移后阵列类型
      </RAID5>

      <RAID6> //迁移前阵列类型
        <Range>1,2,3,4,5,7,8,9</Range> //迁移后阵列类型
      </RAID6>

      <RAID50> //迁移前阵列类型
        <Range>1,2,3,4,5,6,8,9</Range> //迁移后阵列类型
      </RAID50>

      <JBOD> //迁移前阵列类型
        <Range>1,2,3,5,4,6,7,9</Range> //迁移后阵列类型
      </JBOD>

      <RAID60> //迁移前阵列类型
        <Range>1,2,3,4,5,6,7,8</Range> //迁移后阵列类型
      </RAID60>

    </MigrateArrayType>

    <ScanArray>
      /*是否支持重新扫描阵列，1-支持，不支持无此项*/
      <Range>1</Range>
    </ScanArray>

    <StopArray>
      /*是否支持阵列停止，1-支持，不支持无此项*/
      <Range>1</Range>
    </StopArray>

    <ArrayInitType>
      /*阵列初始化类型，0-快速初始化，1-完全初始化（前台），2-完全初始化（后台），3-不初始化*/
      <Range>0,1,2,3</Range>
    </ArrayInitType>

    <VdInitType>
      /*虚拟磁盘初始化类型，0-快速初始化，1-完全初始化（前台），2-完全初始化（后台），3-不初始化*/
      <Range>0,1,2,3</Range>
    </VdInitType>

    <MinVdSize>
      /*虚拟磁盘最小容量，单位：MB*/
      <Value>1</Value>
    </MinVdSize>

</RAID>


设备前端参数XML描述

能力类型宏定义 | 能力类型说明 | pInBuf | pOutBuf
IPC_FRONT_PARAMETER | 获取设备前端参数能力 | 无 | 设备前端参数XML描述

  • 输出参数XML格式：
    • <CAMERAPARA>

    <PowerLineFrequencyMode>
    /*0-50HZ; 1-60HZ*/
    <Range>0,1</Range>>
    </PowerLineFrequencyMode>

    <WhiteBalance>

        <WhiteBalanceMode>
        /*0 USERSET, 1 AWB1, 2 AWB2; 2 AWB3*/
        <Range>0,1</Range>
        </WhiteBalanceMode>

        <WhiteBalanceModeRGain>
            <Min>0</Min> /*最小值*/
            <Max>255</Max> /*最大值*/
        </WhiteBalanceModeRGain>

        <WhiteBalanceModeBGain>
            <Min>0</Min> /*最小值*/
            <Max>255</Max> /*最大值*/
        </WhiteBalanceModeBGain>
    </WhiteBalance>

    <Exposure>
        <ExposureMode>
        /*0 手动曝光 1自动曝光*/
        <Range>0,1</Range>
        </ExposureMode>

        <ExposureSet>
        /* 0-自动*8、1-自动*5、2 -自动*4、3 -自动*2、4 -1/25、5 -1/50、6 -1/100、7 -1/250、8 -1/500、9 -1/750、10-1/1000、11-1/2000、12-1/4000、13-1/10,000、14-1/100,000 */
        <Range>0,1,2,3,4,5,6,7,8,9,10,11,12,13,14</Range>
        </ExposureSet>

        <exposureUSERSET>
        /*自动自定义曝光时间*/
            <Min>0</Min> /*最小值*/
            <Max>2000000</Max> /*最大值*/
        </exposureUSERSET>

        <ExposureTarget>
        /*手动曝光时间，单位微妙*/
            <Min>0</Min> /*最小值*/
            <Max>2000000</Max> /*最大值*/
        </ExposureTarget>
    </Exposure>

    <IrisMode>
        /*0 自动曝光 1手动曝光*/
        <Range>0,1</Range>
    </IrisMode>

    <FocusMode>
        /*0手动聚焦;1自动聚焦; 2自动被焦*/
        <Range>0,1,2</Range>
    </FocusMode>

    <GainLevel>
        <Min>0</Min>
        <Max>100</Max>
    </GainLevel>

    <BrightnessLevel>
        <Min>0</Min>
        <Max>100</Max>
    </BrightnessLevel>

    <ContrastLevel>
        <Min>0</Min>
        <Max>100</Max>
    </ContrastLevel>

    <SharpnessLevel>
        <Min>0</Min>
        <Max>100</Max>
    </SharpnessLevel>

    <SaturationLevel>
        <Min>0</Min>
        <Max>100</Max>
    </SaturationLevel>

    <HueLevel>
        <Min>0</Min>
        <Max>100</Max>
    </HueLevel>

    <GammaCorrection>
        <GammaCorrectionEnabled>
        /*0 dsibale  1 enable*/
        <Range>0,1</Range>
        </GammaCorrectionEnabled>

        <GammaCorrectionLevel>
            <Min>0</Min>
            <Max>100</Max>
        </GammaCorrectionLevel>
    </GammaCorrection>

    <WDR>
        <WDREnabled>
        /*0 dsibale  1 enable 2 Auto*/
        <Range>0,1,2</Range>
        </WDREnabled>

        <WDRLevel1>
            <Min>0</Min>
            <Max>0xf</Max>
        </WDRLevel1>

        <WDRLevel2>
            <Min>0</Min>
            <Max>0xf</Max>
        </WDRLevel2>

        <WDRContrastLevel >
            <Min>0</Min>
            <Max>0xf</Max>
        </WDRContrastLevel >
    </WDR>

    <DayNightFilter>
        <DayNightFilterType>
        /*0  day,1 night,2 auto*/
        <Range>0,1,2</Range>
        </DayNightFilterType>

        <SwitchSchedule>
            <SwitchScheduleEnabled>
            /*0 dsibale  1 enable*/
            <Range>0,1</Range>
            </SwitchScheduleEnabled>

            <DayToNightFilterLevel>
                <Range>0,1,2,3,4,5,6,7</Range>
            </DayToNightFilterLevel>

            <NightToDayFilterLevel>
                <Range>0,1,2,3,4,5,6,7</Range>
            </NightToDayFilterLevel>

            <DayNightFilterTime>
                <Min>0</Min>
                <Max>120</Max>
            </DayNightFilterTime>

        </SwitchSchedule>
    </DayNightFilter>

    <Backlight>
        <BacklightMode>
        /*0 USERSET、 1UP、2 DOWN、3 LEFT、4 RIGHT、5 MIDDLE、6 自定义*/
        <Range>0,1,2,3,4,5,6</Range>
        </BacklightMode>

        <BacklightLevel>
            <Min>0</Min>
            <Max>0xf</Max>
        </BacklightLevel>
    </Backlight>

    <Mirror>
    /*0-off，1-leftright，2-updown，3-center*/
    <Range>0,1,2,3</Range>
    </Mirror>

    <EPTZ>
    /*0-不启用电子云台，1-启用电子云台*/
    <Range>0,1</Range>
    </EPTZ>

    <LOCALOUTPUT>
    /*0-不支持，1-支持*/
    /*365: 迷你球，卡片机不支持本地输出;9p031前端设备暂不支持本地输出*/
    /*6467:BNC—0,1 ; HDMI—0:不支持,20:HDMI_720P50,20:HDMI_720P60, 22 : HDMI_1080I60,
    /*23 : HDMI_1080I50, 24 : HDMI_1080P24, 25 : HDMI_1080P25,
    /*26:HDMI_1080P30, 27 : HDMI_1080P50, 28 : HDMI_1080P60*/
    <Range>0,1</Range>
    </LOCALOUTPUT>

    <DigitalNoiseReduction>
        <DigitalNoiseReductionEnable>
        /*0-关闭，1-普通模式，2专家模式*/
        <Range>0,1,2</Range>
        </DigitalNoiseReductionEnable>

        //普通模式下数字降噪级别
        <DigitalNoiseReductionLevel>
            /*0-100*/
            <Min>0</Min>
            <Max>100</Max>
        </DigitalNoiseReductionLevel>

        //专家模式下空域数字降噪级别
        <DigitalNoiseSpectralLevel>
            /*0-100*/
            <Min>0</Min>
            <Max>100</Max>
        </DigitalNoiseSpectralLevel>

        //专家模式下时域数字降噪级别
        <DigitalNoiseTemporalLevel>
            /*0-100*/
            <Min>0</Min>
            <Max>100</Max>
        </DigitalNoiseTemporalLevel>
    </DigitalNoiseReduction>

    /*色阶范围*/
    <ColorRange>
    /*0:16-235，1:0-255*/
    <Range>0,1</Range>
    </ColorRange>

    <DigitalZoom>
    /* 数字倍率，热成像设备用到 */
    /* 数字倍率:0-关闭，1-×2，2-×4 */
       <Range>0,1,2</Range>
    </DigitalZoom>

    <DeadPixelDetect>
    /*0 dsibale  1 enable*/
    <Range>0,1</Range>
    </DeadPixelDetect>

    /*行编码能力项*/
    <LINEENCODE>
    /*0 dsibale  1 enable*/
    <Range>0,1</Range>
    </LINEENCODE>

    /*自动光圈灵敏度*/
    <AutoApertureLevel>
    /*Maximum value*/
    <Min>0</Min>
    /*Minimum value*/
    <Max>10</Max>
    /*Default value*/
    <Default>5</Default>
    </AutoApertureLevel>

</CAMERAPARA>


设备当前编码能力XML描述

由于主码流编码类型、主码流的分辨率能够影响主码流编码帧率、子码流分辨率和子码流的帧率；如果这些信息都在编码参数中描述，编码参数xml描述会十分复杂并且数据量很大。用户可以查询特定编码方式和主码流分辨率情况下主码流编码帧率，子码流分辨率和子码流帧率。

能力类型宏定义 | 能力类型说明 | pInBuf | pOutBuf
DEVICE_ENCODE_CURRENT | 获取设备当前编码能力 | 当前编码类型和分辨率XML描述 | 设备当前编码能力XML描述

  • 输入参数XML格式：
    • <CurrentCompressInfo>
    <VideoEncodeType>
    /*0：private 264;1: STD_MPEG4; 2 ：STD_H264*/
    </VideoEncodeType>

    <VideoResolution>
    /*0-DCIF，1-CIF，2-QCIF，3-4CIF，4-2CIF，16-VGA，17-UXGA，18-SVGA，19-HD720p，20-XVGA，21-HD900p，27-HD1080i，*/
    /*28-2560*1920，29-1600*304，30-2048*1536，31-2448*2048*/
    </VideoResolution>

</CurrentCompressInfo>
  • 输出参数XML格式：
    • <CurrentCompressInfo>

    <VideoEncodeType>
    /*0：private 264;1: STD_MPEG4; 2 ：STD_H264*/
    <Range>1,2</Range>>
    </VideoEncodeType>

    <VideoResolution>
    /*0-DCIF，1-CIF，2-QCIF，3-4CIF，4-2CIF，16-VGA，17-UXGA，18-SVGA，19-HD720p，20-XVGA，21-HD900p，27-HD1080i，*/
    /*28-2560*1920，29-1600*304，30-2048*1536，31-2448*2048*/
    </VideoResolution>

    <VideoFrameRate>
    /*0:全帧率;1:1/16;2:1/8;3:1/4;4:1/2;5:1;6:2;7:4;8:6;9:8;10:10;11:12;12:16;13:20;14:15;15:18;16:22*/
    <Range>0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16</Range>
    </VideoFrameRate>

    /*当前编码分辨率和当前帧率情况下，子主码流支持的分辨率和帧率*/
    <SubChannelList>
    <SubChannelEntry>
    <index>1</index>/*子通道索引*/

        <VideoResolutionList>

            <VideoResolutionEntry>
            /*CIF*/
                <Index>1</Index>
                <VideoFrameRate>
                /*0:全帧率;1:1/16;2:1/8;3:1/4;4:1/2;5:1;6:2;7:4;8:6;9:8;10:10;11:12;12:16;13:20;14:15;15:18;16:22*/
                <Range>0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16</Range>
                </VideoFrameRate>
            </VideoResolutionEntry>

            <VideoResolutionEntry>
            /*QCIF*/
                <Index>2</Index>
                <VideoFrameRate >
                /*0:全帧率;1:1/16;2:1/8;3:1/4;4:1/2;5:1;6:2;7:4;8:6;9:8;10:10;11:12;12:16;13:20;14:15;15:18;16:22*/
                <Range>0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16</Range>
                </VideoFrameRate >
            </VideoResolutionEntry>
        </VideoResolutionList>

     </SubChannelEntry>
     </SubChannelList>

</CurrentCompressInfo>


设备所有能力XML描述

设备网络SDK开发使用手册

设备所有编码能力XML描述

能力类型宏定义 | 能力类型说明 | pInBuf | pOutBuf
DEVICE_ENCODE_ALL_ABILITY | 获取设备所有编码能力 | 无 | 设备所有编码能力XML描述

  • 输出参数XML格式：
    • <AudioVideoCompressInfo>
<AudioCompressInfo>
    <AudioEncodeType>
    /*0:G722_1; 1:G711_MU; 2:G711_A; 3: G723;4: MP1L2;5 MP2L2;99: RAW*/
    <Range>0,1,2,3,4,5,99</Range>
    </AudioEncodeType>

    <VoiceTalkEncodeType>
    /*0:G722_1; 1:G711_MU; 2:G711_A; 3: G723;4: MP1L2;5 MP2L2;99: RAW*/
    <Range>0,1,2,3,4,5,99</Range>
    <VoiceTalkEncodeType>
</AudioCompressInfo>

<VideoCompressInfo>

    <ChannelList>

        <ChannelEntry>
            /*通道号*/
            <ChannelNumber>1</ChannelNumber>
            <MainChannel>

            <VideoEncodeType>
            /*0：private 264;1: STD_H264; 2：STD_MPEG4;7:STD_RTPMJPEG*/
            <Range>1,2</Range>
            </VideoEncodeType>

            <VideoResolutionList>
            /*分辨率：0-DCIF，1-CIF，2-QCIF，3-4CIF，4-2CIF，16-VGA，17-UXGA，18-SVGA，19-HD720p，20-XVGA，21-HD900p，*/
            /*27-HD1080i，28-2560*1920，29-1600*304，30-2048*1536，31-2448*2048*/
                <VideoResolutionEntry>
                /*DCIF*/
                <Index>0</Index>
                <Name>DCIF</Name>
                <Resolution>528*384</Resolution>
                </VideoResolutionEntry>

                <VideoResolutionEntry>
                /*CIF*/
                <Index>1</Index>
                <Name>CIF</Name>
                <Resolution>352*288</Resolution>
                </VideoResolutionEntry>

                <VideoResolutionEntry>
                /*QCIF*/
                <Index>2</Index>
                <Name>QCIF</Name>
                <Resolution>176*144</Resolution>
                </VideoResolutionEntry>

                <VideoResolutionEntry>
                /*4CIF*/
                <Index>3</Index>
                <Name>4CIF</Name>
                <Resolution>704*576</Resolution>
                </VideoResolutionEntry>

                <VideoResolutionEntry>
                /*2CIF*/
                <Index>4</Index>
                <Name>2CIF</Name>
                <Resolution>704*288</Resolution>
                </VideoResolutionEntry>

                <VideoResolutionEntry>
                /*QVGA*/
                <Index>6</Index>
                <Name>QVGA</Name>
                <Resolution>320*240</Resolution>
                </VideoResolutionEntry>

                …………

                <VideoResolutionEntry>
                /*UXGA*/
                <Index>17</Index>
                <Name>UXGA</Name>
                <Resolution>1600*1200</Resolution>
                </VideoResolutionEntry>

                /*其他分辨率以此类推*/
                …………
            </VideoResolutionList>

            <VideoFrameRate>
            /*0:全帧率;1:1/16;2:1/8;3:1/4;4:1/2;5:1;6:2;7:4;8:6;9:8;10:10;11:12;12:16;13:20;14:15;15:18;16:22*/
            <Range>0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16</Range>
            </VideoFrameRate>

            <VideoBitrate>
            /*编码码率*/
            <Min>16</Min>/*最小玛率(单位Kb)*/
            <Max>16384K</Max>/*最大玛率(单位Kb)*/
            </VideoBitrate>

            <IntervalBPFrame>
            /*0-BBP帧; 1-BP帧;2单P帧*/
            <Range>0,1,2</Range>
            </IntervalBPFrame>

            /*E帧最大编码能力*/
            <EFrame>0</EFrame>
            </MainChannel>

            <SubChannelList>
                <SubChannelEntry>
                <index>1</index>/*子通道索引*/

                <VideoEncodeType>
                /*0：private 264;1: STD_H264; 2 ：STD_MPEG4;7:STD_RTPMJPEG*/
                <Range>1,2</Range>
                </VideoEncodeType>

                <VideoResolutionList>

                    <VideoResolutionEntry>
                    /*CIF*/
                    <Index>1</Index>
                    <Name>CIF</Name>
                    <Resolution>352*288</Resolution>
                    </VideoResolutionEntry>

                    <VideoResolutionEntry>
                    /*QCIF*/
                    <Index>2</Index>
                    <Name>QCIF</Name>
                    <Resolution>176*144</Resolution>
                    </VideoResolutionEntry>

                    <VideoResolutionEntry>
                    /*QVGA*/
                    <Index>6</Index>
                    <Name>QVGA</Name>
                    <Resolution>320*240</Resolution>
                    </VideoResolutionEntry>
                    </VideoResolutionList>

               <VideoFrameRate>
               <Range>0,1,2,3,4,5,6,7,8,9,10,11,12,13</Range>
               </VideoFrameRate>

               <VideoBitrate>
               //编码码率
               <Min>16</Min>/*最小玛率(单位Kb)*/
               <Max>16384</Max>/*最大玛率(单位Kb)*/
               </VideoBitrate>

               <IntervalBPFrame>
               /*0-BBP帧; 1-BP帧;2单P帧*/
               <Range>0,1,2</Range>
               </IntervalBPFrame>

               <EFrame>0</EFrame>/*E帧最大编码能力*/

               <SubChannelEntry>
           </SubChannelList>

        <ChannelEntry>
    <ChannelList>>

</VideoCompressInfo>
</AudioVideoCompressInfo>


设备报警能力XML描述

能力类型宏定义 | 能力类型说明 | pInBuf | pOutBuf
DEVICE_ALARM_ABILITY | 获取设备报警能力 | 设备报警能力XML描述 | 设备报警能力XML描述

  • 输入参数XML格式：
    • <AlarmAbility version="2.0">
  <channelID><!-- req, 通道号 --></channelID>
</AlarmAbility>
  • 输出参数XML格式：
    • <AlarmAbility version="2.0">
  <channelEntry>

   <channelID><!—req,通道号--></channelID>

   <PIRAlarm>
    <enabled opt="true,false"><!-- req,是否启用PIR报警--></enabled>
    <alarmHandleType opt="monitor,audio,center,alarmout,picture,wirelesslight"></alarmHandleType>
   </PIRAlarm>

   <wirelessAlarm>
    <enabled opt="true,false"><!-- req,是否启用无线报警--></enabled>
    <wirelessAlarmID min="1" max="8"><!—req,支持的无线报警个数 --></wirelessAlarmID>
    <alarmHandleType opt="monitor,audio,center,alarmout,picture,wirelesslight"></alarmHandleType>
   </wirelessAlarm>

  </channelEntry>
</AlarmAbility>

    See Also

    NET_DVR_GetDeviceAbility


设备网络能力XML描述

能力类型宏定义 | 能力类型说明 | pInBuf | pOutBuf
DEVICE_NETWORK_ABILITY | 获取设备网络能力 | 无 | 设备网络能力XML描述

  • 输出参数XML格式：
    • <NetworkSetting>
    /*wifi能力描述*/
    <WirelessSetting>

        <InterfaceMode>
        /*0自动切换; 1有线模式*/
        <Range>0,1</Range>
        </InterfaceMode>

        <NetworkMode>
        /*0 managed; 1 ad-hoc*/
        <Range>0,1</Range>>
        </NetworMode>

        <SecurityMode>
        <NONE></NONE>
        <WEP>
           <AuthenticationType>
           /*0开放式; 1共享式*/
           <Range>0,1</Range>>
           </AuthenticationType>

           <WEPKeyLength>
           /*0:64位; 1 :128位; 3 :152位*/
           <Range>0,1,2</Range>
           </WEPKeyLength>
        </WEP>

        <WPA_PSK>
           <WPA_PSK KeyLength>
           <Min>8</Min>
           <Max>63</Max>
           </WPA_PSK KeyLength>
        </WPA_PSK>
        </SecurityMode>

    </WirelessSetting>

</NetworkSetting>


设备软硬件能力XML描述

能力类型宏定义 | 能力类型说明 | pInBuf | pOutBuf
DEVICE_SOFTHARDWARE_ABILITY | 获取设备软硬件能力 | 无 | 设备软硬件能力XML描述

  • 输出参数XML格式：
    • <BasicCapability>
   /*硬件支持信息总体介绍*/
   <HardwareCapability>
       <HardwareVersion>
       /* 前面板版本,高16位是主版本,低16位是次版本 */
       </HardwareVersion>

       <AlarmInPortNum>
       /* DVR报警输入个数 */
       </AlarmInPortNum>

       <AlarmOutPortNum>
       /* DVR报警输出个数 */
       </AlarmOutPortNum>

       <RS232Num>
       /* DVR 232串口个数 */
       </RS232Num>

       <RS485Num>
       /* DVR 485串口个数 */
       </RS485Num>

       <NetworkPortNum>
       /* 网络口个数 */
       </NetworkPortNum>

       <USBNum>
       /* USB口的个数 */
       </USBNum>

       <FlashSize>
       /*Flash大小（单位K）*/
       </ FlashSize >

       <RamSize>
       /*Ram大小（单位K）*/
       </RamSize>

       <USBVersion>
       /*USB版本*/
       </USBVersion>

       <SDNum>
       /*SD卡个数*/
       </SDNum>

       <VideoInNum>
       /*VIN个数*/
       </VideoInNum>

       <AudioInNum>
       /*AIN个数*/
       </AudioInNum>

       <VideoOutNum>
       /*VOUT个数*/
       </VideoOutNum>

       <AudioOutNum>
       /*AOUT个数*/
       </AudioOutNum>

       <SDSupport>
       /*是否支持SD卡*/
       </SDSupport>

       <WiFiSupport>
       /*是否支持WiFi- 0：不支持，1：支持*/
       </WiFiSupport>

       <POESupport>
       /*是否支持POE- 0：不支持，1：支持*/
       </POESupport>

       <IRSupport>
       /*是否支持红外 - 0：不支持，1：支持*/
       </IRSupport >

       <VideoOutSupport>
       /*是否支持本地输出- 0：不支持，1：支持*/
       </VideoOutSupport>

       <ResetSupport>
       /*是否支持恢复出厂设置- 0：不支持，1：支持*/
       </ResetSupport>

   </HardwareCapability>

   /*软件能力支持信息总体介绍*/
   <SoftwareCapability >

       <NasSupport>
       /*是否支持nas存储功能：0：不支持，1：支持*/
       </ NasSupport>

       <RtspSupport>
       /*是否支持rtsp网络传输功能0：不支持，1：支持*/
       </ RtspSupport>

       <NtpSupport>
       /*是否支持NTP校时- 0：不支持，1：支持*/
       </NtpSupport>

       <EptzSupport>
       /*是否支持电子云台 - 0：不支持，1：支持*/
       </EptzSupport>

       <PtzSupport>
       /*是否支持云台控制 - 0：不支持，1：支持*/
       </PtzSupport>

       <DDNSSupport>
       /*是否支持DDNS - 0：不支持，1：支持*/
       </DDNSSupport>

       <UPNPSupport>
       /*是否支持UPNP- 0：不支持，1：支持*/
       </UPNPSupport>

       <Ipv6Support>
       /*是否支持ipv6- 0：不支持，1：支持*/
       </Ipv6Support>

       <VCASupport>
       /*是否支持智能- 0：不支持，1：支持*/
       </VCASupport>

       <MultipleStreamSupport>
       /*是否支持复合流-0：不支持，1：支持*/
       </MultipleStreamSupport>

       <SubStreamSupport>
       /*是否支持子码流-0：不支持，1：支持*/
       </SubStreamSupport>

   </SoftwareCapability>
</BasicCapability>