接口说明文档
文档修订记录
*变化状态:A ——增加,M ——修改,D ——删除
以下接口的使用可参见海康威视《设备网络SDK 使用手册》
1. 接口设计
1.1抓拍逻辑配置
#define NET_DVR_GET_CAPTURELOGICCFG 4000 //获取抓拍逻辑配置参数 #define NET_DVR_SET_CAPTURELOGICCFG 4001 //设置抓拍逻辑配置参数
使用函数NET_DVR_GetDVRConfig()和NET_DVR_SetDVRConfig()配置 #define MAX_LANERECT_NUM 5 //最大车道识别区域数
#define MAX_COIL_NUM 3 //最大线圈个数
#define MAX_CAPTURE_MODE 3 //支持的抓怕模式
typedef struct tagNET_DVR_CAPTUREMODECFG
{
DWORD dwCaptureState; //0-不抓拍,1-进入抓拍,2-离开抓拍,3-进入离开都抓拍,4-进入和进入延时抓拍,5-离开和离开延时抓,6-进入抓拍和离开延时抓拍,7-进入延时抓拍,8-离开延时抓拍
DWORD dwDelayType; //延迟抓拍类型,0-时间,1-距离
WORD wDelayTime; //延迟时间(当延迟抓拍类型为时间时有效),单位:ms WORD wDelayDistance; //延迟距离(当延迟抓拍类型为距离时有效),单位:dm }NET_DVR_CAPTUREMODECFG, *LPNET_DVR_CAPTUREMODECFG;
typedef struct tagNET_DVR_LOOPCAPLOGICCFG
{
NET_DVR_CAPTUREMODECFG struCaptureMode[MAX_CAPTURE_MODE]; //不同模式下的抓拍配置,数组0表示红灯时抓拍配置,数组1表示绿灯时抓拍配置,数组2表示超速抓拍配置
} NET_DVR_LOOPCAPLOGICCFG, *LP NET_DVR_LOOPCAPLOGICCFG;
typedef struct tagNET_DVR_TRAFFICLANECFG
{
BYTE byLoopNum; //线圈的个数
BYTE byPosteCapture; //闯红灯时,哪一张作为卡口图片抓拍,做为卡口该张必须设置抓拍,且默认卡口那张识别,
//0-进入线圈1,
//1-离开线圈1,
//2-进入线圈2,
//3-离开线圈2,
//4-进入线圈1延时,
//5-离开线圈1延时,
//6-进入线圈2延时,
//7-离开线圈2延时,
BYTE byRes1[2]; //保留
NET_DVR_LOOPCAPLOGICCFG struLoopCapLogic[MAX_COIL_NUM]; //线圈抓拍逻辑参数
}NET_DVR_TRAFFICLANECFG, *LPNET_DVR_TRAFFICLANECFG;
typedef struct tagNET_DVR_CAPTURELOGICCFG
{
DWORD dwSize;
BYTE byWorkMode; //应用模式:0-卡口,1-电警,2-卡口电警
BYTE byRes1[3]; //保留
NET_DVR_TRAFFICLANECFG struTrafficLane[MAX_LANERECT_NUM]; //车道抓拍逻辑参数
BYTE byRes2[60]; //保留
}NET_DVR_CAPTURELOGICCFG, *LPNET_DVR_CAPTURELOGICCFG;
1.2专用功能配置
#define NET_DVR_GET_SNAPENABLECFG 1086 //获取抓拍机使能参数 #define NET_DVR_SET_SNAPENABLECFG 1087 //设置抓拍机使能参数
typedef struct tagNET_DVR_ SNAPENABLECFG
{
DWORD dwSize;
BYTE byPlateEnable;//是否支持车牌识别,0-不支持,1-支持
BYTE byRes1[2];/*(保留)*/
BYTE byFrameFlip; //图像是否翻转 0-不翻转,1-翻转
WORD wFlipAngle; //图像翻转角度 0,90,180,270
WORD wLightPhase; //相位,取值范围[0, 360]
BYTE byLight SyncPower; //是否与信号灯电源同步,0-不同步;1-同步
BYTE byFrequency; //信号频率
BYTE byUploadSDEnable; //是否自动上传SD 图片,0-否;1-是
BYTE byUploadNoPlatePic; //是否上传无车牌图片,0-否,1-是
BYTE byRes2[60]; //保留
}NET_DVR_SNAPENABLECFG, *LPNET_DVR_SNAPENABLECFG;
1.3雷达配置
#define NET_DVR_GET_RADARSPEEDCFG 4002 //获取雷达测速参数配置 #define NET_DVR_SET_RADARSPEEDCFG 4003 //设置雷达测速参数配置
typedef struct tagNET_DVR_RADARSPEEDCFG
{
DWORD dwSize;
BYTE byRadarSnapTrigger; //是否启用雷达触发:0-否,1-是
BYTE byRadarType; //雷达类型:0-奥利维亚,1-安道雷,2-川速
BYTE byFaultDetectionEn; //是否开启雷达故障检测,0-否,1-是
BYTE bySpeedMode; //测速模式:0-不测速,1-线圈测速,2-雷达测速
BYTE bySpeedRectifyMode; //雷达测速校正类型: 0-角度校正,1-线性倍数校正,2-常量校正(当前为雷达测速时,角度校正有效)
BYTE byDefaultSpeedValue; //雷达未检测到速度时的速度值:0-固定为0,1-为0-限速值随机生成
BYTE byDegree Rectify; //角度校正系数,0-90
BYTE byRes1; //保留
float fLinearRectify; //线性倍数校正(范围0.50~2.00)
int iConstantRectify; //常量校正(范围-50~50)默认为0
BYTE byRes2[24]; //保留
}NET_DVR_RADARSPEEDCFG, *LPNET_DVR_RADARSPEEDCFG;
接口:
NET_DVR_GetDVRConfig和NET_DVR_SetDVRConfig
1.4OSD 叠加配置
#define NET_DVR_GET_OSDOVERLAYCFG 4004 //获取OSD 叠加参数配置 #define NET_DVR_SET_OSDOVERLAYCFG 4005 //设置OSD 叠加参数配置
#define MAX_OSD_NUM 20 //最大OSD 种数
typedef struct tagNET_DVR_OSD_PARAM
{
BYTE byOSDType; //OSD类型:0-不叠加
//1-叠加毫秒信息,
//2-限速标志,1~999km/h
//3-违法信息(低速、超速、逆行、闯红灯)
//4-车道号
//5-超速比,0~999%
//6-车速,1~999km/h
//7-车长, 1~99米
//8-车型,大、中、小型
//9-车牌号加车牌颜色
//10-车身颜色
//11-红灯已亮时间
//12-时间叠加
//13-监测点信息(客户可根据需要设置)
BYTE byChangeLineNum; //该OSD 后的换行数
BYTE bySpaceNum; //该OSD 后的空格数,默认为0
BYTE byRes; //保留
}NET_DVR_OSD_PARAM, *LPNET_DVR_OSD_PARAM;
typedef struct tagNET_DVR_OSDOVERLAYCFG
{
DWORD dwSize;
BYTE byFontSize; //字体大小:0-32*32,1-64*64
BYTE byRes1[3]; //保留
NET_DVR_OSD_PARAM struOsdParam[MAX_OSD_NUM]; //OSD参数
BYTE byMonitorInfo1[32]; //监测点1信息
BYTE byMonitorInfo2[44]; //监测点2信息
BYTE byRes2[24]; //保留
}NET_DVR_OSDOVERLAYCFG, *LPNET_DVR_OSDOVERLAYCFG;
接口:
NET_DVR_GetDVRConfig和NET_DVR_SetDVRConfig
1.5卡口电警参数配置
#define NET_DVR_GET_POSTEPOLICECFG 1088 //获取卡口电警参数 #define NET_DVR_SET_ POSTEPOLICECFG 1089 //设置卡口电警参数
使用函数NET_DVR_GetDVRConfig()和NET_DVR_SetDVRConfig()配置
typedef struct tagNET_DVR_POSTEPOLICECFG
{
DWORD dwSize;
DWORD dwDistance;//线圈距离, 单位cm ,取值范围[0,20000]
DWORD dwLightChan[6]; //信号灯通道号
BYTE byCapSpeed;//起拍速度,单位km/h,取值范围[0,255]
BYTE bySpeedLimit;//限速值,单位km/h,取值范围[0,255]
BYTE byTrafficDirection;//车流方向,0-由东向西,1-由西向东,2-由南向北,3-由北向南 BYTE byRes1; //保留
WORD wTrigDelay; //触发延时时间,单位:毫秒
WORD wLoopPreDist; //触发延时距离,单位:分米
DWORD dwEnTrigTime; //启动视频触发的时间,单位:分
BYTE byDeviceSN[10]; //设备编号
BYTE byRes2[110];//保留字节
}NET_DVR_POSTEPOLICECFG, *LPNET_DVR_POSTEPOLICECFG;
1.6闪光灯参数配置
#define NET_DVR_GET_FLASHCFG
#define NET_DVR_SET_FLASHCFG
1074 //获取IO 闪光灯输出参数 1075 //设置IO 闪光灯输出参数
使用函数NET_DVR_GetDVRConfig()和NET_DVR_SetDVRConfig()配置,通道号为对应IO 输出口号
typedef struct tagNET_DVR_FLASH_OUTCFG
{
DWORD dwSize;
BYTE byMode;//闪光灯闪烁模式,0-不闪,1-闪,2-关联闪,3-轮闪
BYTE byRelatedIoIn;//闪光灯关联的输入IO 号(关联闪时此参数有效,暂时保留)
BYTE byRecognizedLane; /*关联的IO 号,按位表示,bit0表示IO1是否关联,0-不关联,1-关联*/
BYTE byDetectBrightness;/*自动检测亮度使能闪光灯0-不检测;1-检测*/
BYTE byBrightnessThreld;/*使能闪光灯亮度阈值,范围[0-100],高于阈值闪*/
BYTE byStartHour; //开始时间-小时, 取值范围0-23
BYTE byStartMinute; //开始时间-分, 取值范围0-59
BYTE byEndHour; //结束时间-小时, 取值范围0-23
BYTE byEndMinute; //结束时间-分, 取值范围0-59
BYTE byFlashLightEnable; //设置闪光灯时间使能:0-关;1-开
BYTE byLightDetect; //闪光灯检测:0-不检测,1-检测
BYTE byDetectSensitivity; //检测灵敏度:0-100
}NET_DVR_FLASH_OUTCFG, *LPNET_DVR_FLASH_OUTCFG;
1.7虚拟线圈配置
#define MAX_VL_NUM 5 //最大虚拟线圈个数
#define NET_DVR_GET_VTPPARAM 1084 //获取虚拟线圈参数
#define NET_DVR_SET_VTPPARAM 1085 //设置虚拟线圈参数
typedef struct tagNET_DVR_TRIGCOORDINATE
{
WORD wTopLeftX; /*线圈左上角横坐标(2个字节),默认为160*/
WORD wTopLeftY; /*线圈左上角纵坐标(2个字节),默认为210*/
WORD wWdith; /*线圈宽度(2个字节),默认为1000*/
WORD wHeight; /*线圈高度(2个字节),默认为45*/
} NET_DVR_TRIGCOORDINATE, *LPNET_DVR_TRIGCOORDINATE;
typedef 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;
typedef struct tagNET_DVR_GEOGLOCATION
{
int iStdTimeZone; /*标准时区*/
int iLocalTimeZone; /*当地时区*/
DWORD dwCity; /*城市,详见PROVINCE_CITY_IDX */
}NET_DVR_GEOGLOCATION, *LPNET_DVR_GEOGLOCATION;
//场景模式
typedef enum _SCENE_MODE_
{
UNKOWN_SCENE_MODE = 0, //未知场景模式
HIGHW AY_SCENE_MODE = 1, //高速场景模式
SUBURBAN_SCENE_MODE = 2, //郊区场景模式
URBAN_SCENE_MODE = 3, //市区场景模式
TUNNEL_SCENE_MODE = 4 //隧道场景模式
}SCENE_MODE;
typedef struct tagNET_DVR_VTPARAM
{
DWORD dwSize;
BYTE byEnable;//使能位,是否使用虚拟线圈,0-不使用,1-使用
BYTE byIsDisplay;//是否显示虚拟线圈
BYTE byLoopPos; //晚间触发线圈的偏向:0-正向,1-负向
BYTE byRes1[5];
NET_DVR_TRIGCOORDINATE struTrigCoordinate;
NET_DVR_TRIGCOORDINATE struRes[MAX_VL_NUM];
BYTE byTotalLaneNum;/*视频触发的车道数1*/
BYTE byPolarLenType; /*偏振镜类型,0:不加偏振镜;1:加施耐德偏振镜。*/ BYTE byDayAuxLightMode; /*白天辅助照明模式,0:无辅助照明;1:LED 灯照明; 2:闪光灯照明。0*/
BYTE byLoopToCalRoadBright; /*用以计算路面亮度的车道(虚拟线圈)*/ BYTE byRoadGrayLowTh; /*路面亮度低阈值初始化值,默认值为1*/
BYTE byRoadGrayHighTh; /*路面亮度高阈值初始化值,默认值为140*/ WORD wLoopPosBias; /*晚间触发线圈位移,默认值为30*/
DWORD dwHfrShtterInitValue; /*连续图像曝光时间的初始值,单位us ,默认值为2000*/
DWORD dwSnapShtterInitValue; /*抓拍图像曝光时间的初始值,默认值为500*/ DWORD dwHfrShtterMaxValue; /*连续图像曝光时间的最大值,默认值为20000*/ DWORD dwSnapShtterMaxValue; /*抓拍图像曝光时间的最大值,默认值为1500*/ DWORD dwHfrShtterNightValue; /*晚间连续图像曝光时间的设置值,默认值为3000*/ DWORD dwSnapShtterNightMinValue; /*晚间抓拍图像曝光时间的最小值,默认值为3000*/
DWORD dwSnapShtterNightMaxValue; /*晚间抓拍图像曝光时间的最大值,默认值为5000*/
DWORD dwInitAfe; /*增益的初始值,默认值为200*/
DWORD dwMaxAfe; /*增益的最大值,默认值为400*/
WORD wResolutionX;/* 设备当前分辨率宽*/
WORD wResolutionY;/* 设备当前分辨率高*/
DWORD dwGainNightV alue; /*晚间增益,默认值70*/
DWORD dwSceneMode; /*场景模式, 详见SCENE_MODE */
DWORD dwRecordMode; /*录像标志:0-不录像,1-录像*/
NET_DVR_GEOGLOCATION struGeogLocation; /*地址位置*/
BYTE byTrigFlag[MAX_VL_NUM]; /*触发标志,0-车头触发;1-车尾触发;2-车头/车尾都触发*/
BYTE byLoopSensitivity[MAX_VL_NUM]; //触发线圈的灵敏度
BYTE byRes2[62]; /*保留*/
}NET_DVR_VTPARAM, *LPNET_DVR_VTPARAM;
1.8抓拍编号和防伪码上传
使用NET_DVR_SetDVRMessageCallBack_V30接口设置回调后,用NET_DVR_SetupAlarmChan_V30接口对设备进行布防,报警信息通过回调函数获取
#define MAX_LICENSE_LEN 16 //车牌号最大长度 //车牌颜色
typedef enum _VCA_PLATE_COLOR_
{
VCA_BLUE_PLATE = 0, //蓝色车牌
VCA_YELLOW_PLATE, //黄色车牌
VCA_WHITE_PLATE, //白色车牌
VCA_BLACK_PLATE //黑色车牌
}VCA_PLATE_COLOR;
//车牌类型
typedef enum _VCA_PLATE_TYPE_
{
VCA_STANDARD92_PLATE = 0, //标准民用车与军车
VCA_STANDARD02_PLATE, //02式民用车牌
VCA_WJPOLICE_PLATE, //武警车
VCA_JINGCHE_PLATE, //警车
STANDARD92_BACK_PLATE, //民用车双行尾牌
VCA_SHIGUAN_PLATE, //使馆车牌
VCA_NONGYONG_PLATE, //农用车
VCA_MOTO_PLATE //摩托车
}VCA_PLATE_TYPE;
/*归一化, 数值为当前画面的百分比大小*1000, 精度为小数点后三位*/
typedef struct tagNET_DVR_VCA_RECT_
{
float fX; /* 边界框左上角点的X 轴坐标,取值范围[0.001,1] */ float fY; /* 边界框左上角点的Y 轴坐标,取值范围[0.001,1] */ float fWidth; /* 边界框的宽度,取值范围[0.001,1] */
float fHeight; /* 边界框的高度,取值范围[0.001,1] */
}NET_VCA_RECT, *LPNET_DVR_VCA_RECT;
//车牌识别结果子结构
typedef struct tagNET_DVR_PLATE_INFO_
{
BYTE byPlateType; //车牌类型
BYTE byColor; //车牌颜色
BYTE byBright; //车牌亮度
BYTE byLicenseLen; //车牌字符个数 BYTE byEntireBelieve; //整个车牌的置信度,0-100
BYTE byCapCode[18]; //抓拍编号
BYTE by S ecurityCode[17]; //防伪码
NET_VCA_RECT struPlateRect; //车牌位置
char sLicense[MAX_LICENSE_LEN]; //车牌号码
BYTE byBelieve[MAX_LICENSE_LEN]; //各个识别字符的置信度,如检测到车牌" 浙A12345", 置信度为,20,30,40,50,60,70,则表示" 浙" 字正确的可能性只有%,"A" 字的正确的可能性是%
}NET_DVR_PLATE_INFO, *LPNET_DVR_PLATE_INFO;
//车辆信息
typedef struct tagNET_DVR_VEHICLE_INFO_
{
DWORD dwIndex; //车辆序号
BYTE byVehicleType; //车辆类型,0 表示其它车型,1 表示小型车,2 表示大型车
BYTE byColorDepth; //车身颜色深浅,0-深色,1-浅色
BYTE byColor; //车身颜色,0-其他色,1-白色,2-银色,3-灰色,4-黑色,5-红色,6-深蓝,7-蓝色,8-黄色,9-绿色,10-棕色,11-粉色;12-紫色; BYTE byRes1; //保留
WORD wSpeed; //车辆速度,单位km/h
WORD wLength; //车身长度
BYTE byIllegalType; //0-正常;1-低速2-超速3-逆行;4-闯红灯
BYTE byRes[35]; //保留
}NET_DVR_VEHICLE_INFO, *LPNET_DVR_VEHICLE_INFO;
//车牌检测结果
typedef struct tagNET_DVR_PLATE_RESULT_
{
DWORD dwSize; //结构长度
BYTE byResultType; //0-通过视频识别,1-通过图像进行识别 BYTE byChanIndex; //通道号
BYTE byRes1[2]; //保留
DWORD dwRelativeTime; //相对时间点(保留)
BYTE byAbsTime[32]; //绝对时间点,yyyymmddhhmmssxxx,e.g.[**************]99(毫秒)
DWORD dwPicLen; //图片长度
DWORD dwPicPlateLen; //车牌小图片长度
DWORD dwVideoLen; //录像内容长度
BYTE byTrafficLight; //0-非红绿灯抓拍,1-绿灯时抓拍;2-红灯时抓拍 BYTE byPicNum; //连拍的图片序号
BYTE byDriveChan; //触发车道号
BYTE byRes2[33]; //保留
NET_DVR_PLATE_INFO struPlateInfo; //车牌信息结构 NET_DVR_VEHICLE_INFO struVehicleInfo; //车辆信息
BYTE *pBuffer1; // 用于保存获取到的图像或者视频,如果不想获得图片或视频信息,传NULL
BYTE *pBuffer2; // 当识别结果为图像识别结果时,指向车牌图片的指针 }NET_DVR_PLATE_RESULT, *LPNET_DVR_PLATE_RESULT;
//后面紧跟图片数据和录像数据,只传一种,图片数据为场景图片+车牌小图片
视频长度为0xffffffff 时,表示视频内容异常,此时只上传报警信息,后面无视频内容,指向视频内容的指针为NULL
//车牌报警NET_DVR_PLATE_RESULT
#define COMM_UPLOAD_ PLATE_RESULT 0x2800 //上传车牌信息
1.9大小车限速值配置
#define NET_DVR_GET_POSTEPOLICECFG 1088 //获取卡口电警参数 #define NET_DVR_SET_ POSTEPOLICECFG 1089 //设置卡口电警参数
使用函数NET_DVR_GetDVRConfig()和NET_DVR_SetDVRConfig()配置
typedef struct tagNET_DVR_POSTEPOLICECFG
{
DWORD dwSize;
DWORD dwDistance;//线圈距离, 单位cm ,取值范围[0,20000]
DWORD dwLightChan[6]; //信号灯通道号
BYTE byCapSpeed;//起拍速度,单位km/h,取值范围[0,255]
BYTE bySpeedLimit;//限速值,单位km/h,取值范围[0,255]
BYTE byTrafficDirection;//车流方向,0-由东向西,1-由西向东,2-由南向北,3-由北向南 BYTE byRes1; //保留
WORD wTrigDelay; //触发延时时间,单位:毫秒
WORD wLoopPreDist; //触发延时距离,单位:分米
DWORD dwEnTrigTime; //启动视频触发的时间,单位:分
BYTE byDeviceSN[10]; //设备编号
BYTE byBCarSpeedLimit; //大车限速值,单位km/h,取值范围[0,255]
BYTE bySCarSpeedLimit; //小车限速值,单位km/h,取值范围[0,255]
BYTE byRes2[108];//保留字节
}NET_DVR_POSTEPOLICECFG, *LPNET_DVR_POSTEPOLICECFG;
1.10 OSD叠加配置
#define NET_DVR_GET_OSDOVERLAYCFG 4004 //获取OSD 叠加参数配置 #define NET_DVR_SET_OSDOVERLAYCFG 4005 //设置OSD 叠加参数配置
#define MAX_OSD_NUM 30 //最大OSD 种数
typedef struct tagNET_DVR_OSD_PARAM
{
BYTE byOSDType; //OSD类型:0-不叠加
//1-叠加毫秒信息,
//2-限速标志,1~999km/h
//3-违法信息(低速、超速、逆行、闯红灯)
//4-车道号
//5-超速比,0~999%
//6-车速,1~999km/h
//7-车长, 1~99米
//8-车型,大、中、小型
//9-车牌号加车牌颜色
//10-车身颜色
//11-红灯已亮时间
//12-时间叠加
//13-监测点信息(客户可根据需要设置)
//14抓拍编号(不用传,DSP 自动生成)
//15地点(手动输入)
//16测速模式(手动输入)
//17防伪码 (不用传,DSP 自动生成)
//18设备编号(手动输入)
//19检定证书号(手动输入)
//20检定有效期(手动输入)
//21检定单位(手动输入
//22查询网址(手动输入)
BYTE byChangeLineNum; //该OSD 后的换行数
BYTE bySpaceNum; //该OSD 后的空格数,默认为0
BYTE byRes; //保留
}NET_DVR_OSD_PARAM, *LPNET_DVR_OSD_PARAM;
typedef struct tagNET_DVR_OSDOVERLAYCFG
{
DWORD dwSize;
BYTE byFontSize; //字体大小:0-32*32,1-64*64
BYTE byRes1[3]; //保留
NET_DVR_OSD_PARAM struOsdParam[MAX_OSD_NUM]; //OSD参数
BYTE byMonitorInfo1[32]; //监测点1信息
BYTE byMonitorInfo2[44]; //监测点2信息
BYTE byCapLocation[50]; //抓拍地点
BYTE bySpeedMode[50]; //测速模式
BYTE byDeviceCode[50]; //设备编号
BYTE byGertificateNumber[50]; //检定证书号
BYTE byGertificateValidity[50]; //检定有效期
BYTE byGertificateUnit[50]; //检定单位
BYTE byQueryUrl[50]; //查询网址
BYTE byRes2[10]; //保留
}NET_DVR_OSDOVERLAYCFG, *LPNET_DVR_OSDOVERLAYCFG;
接口:
NET_DVR_GetDVRConfig和NET_DVR_SetDVRConfig
1.11增加机柜报警上传功能
使用NET_DVR_SetDVRMessageCallBack_V30接口设置回调后,NET_DVR_SetupAlarmChan_V30接口对设备进行布防,报警信息通过回调函数获取
#define COMM_UPLOAD_CABINETS_INFO 0x8000 //上传机柜信息
typedef struct tagNET_CAM_CABINETSINFO
{
DWORD dwSize;
BYTE byCabinetsStatus; //机柜状态:0-关闭,1-打开
BYTE byRes[31]; //保留
}NET_CAM_CABINETSINFO, *LPNET_CAM_CABINETSINFO; 用