byBright As Byte '车牌亮度
byLicenseLen As Byte '车牌字符个数
byEntireBelieve As Byte '整个车牌的置信度,-100 byRes(1 To 35) As Byte '保留
struPlateRect As NET_VCA_RECT '车牌位置 sLicense(1 To MAX_LICENSE_LEN) As Byte '车牌号码
byBelieve(1 To MAX_LICENSE_LEN) As Byte '各个识别字符的置信度,如检测到车牌\浙A12345\置信度为,20,30,40,50,60,70,则表示\浙\字正确的可能性只有%,\字的正确的可能性是% End Type
'车辆信息
Public Type NET_DVR_VEHICLE_INFO
dwIndex As Long '车辆序号 byVehicleType As Byte '车辆类型
byColorDepth As Byte '车身颜色深浅
byColor As Byte '车身颜色,参考VCR_CLR_CLASS byRes1 As Byte '保留 wSpeed As Integer '单位km/h
wLength As Integer '前一辆车的车身长度
'违规类型,0-正常,1-低速,2-超速,3-逆行,4-闯红灯,5-压车道线,6-不按导向,7-路口滞留,
'8-机占非,9-违法变道,10-不按车道 11-违反禁令,12-路口停车,13-绿灯停车, 14-未礼让行人(违法代码1357),
'15-违章停车,16-违章掉头,17-占用应急车道
byIllegalType As Byte
byVehicleLogoRecog As Byte '参考枚举类型 VLR_VEHICLE_CLASS
byRes2(1 To 2) As Byte '保留
byCustomInfo(1 To 16) As Byte '自定义信息 byRes3(1 To 16) As Byte End Type
'//校时结构参数
Public Type NET_DVR_TIME
dwYear As Long '//年 dwMonth As Long '//月 dwDay As Long '//日 dwHour As Long '//时 dwMinute As Long '//分 dwSecond As Long '//秒 End Type
'时间
Public Type NET_DVR_TIME_V30
wYear As Integer '年 byMonth As Byte '月 byDay As Byte byHour As Byte byMinute As Byte bySecond As Byte byRes As Byte
wMilliSec As Integer byRes1(1 To 2) As Byte End Type
' 图片信息(后续会加入码流)
Public Type NET_ITS_PICTURE_INFO
dwDataLen As Long '媒体数据长度
byType As Byte ' 0:车牌图 As Byte1:场景图 As Byte2:合成图 As Byte3:码流
'0-数据直接上传 1-云存储服务器URL(3.7Ver)原先的图片数据变成URL数据,图片长度变成URL长度 byDataType As Byte
byRes1(1 To 2) As Byte '保留
dwRedLightTime As Long '经过的红灯时间 (s)
byAbsTime(1 To 32) As Byte '绝对时间点,yyyymmddhhmmssxxx,e.g.20090810235959999 最后三位为毫秒数 struPlateRect As NET_VCA_RECT '车牌位置
struPlateRecgRect As NET_VCA_RECT '牌识区域坐标 pBuffer As Long ' 数据指针 byRes2(1 To 12) As Byte '保留 End Type
' 检测结果V41
Public Type NET_ITS_PLATE_RESULT
dwSize As Long '结构长度
dwMatchNo As Long '匹配序号,由(车辆序号,数Chan据类型,车道号)组成匹配码
byGroupNum As Byte '图片组数量(一辆过车相机多次抓拍的数量,代表一组图片的总数,用于延时匹配数据)
byPicNo As Byte '连拍的图片序号(接收到图片组数量后,表示接收完成 As Byte接收超时不足图片组数量时,根据需要保留或删除) bySecondCam As Byte '是否第二相机抓拍(如远近景抓拍的远景相机,或前后抓拍的后相机,特殊项目中会用到)
byFeaturePicNo As Byte '闯红灯电警,取第几张图作为特写图,&Hff-表示不取
byDriveChan As Byte '触发车道号
byVehicleType As Byte '车辆类型,参考VTR_RESULT byRes1(1 To 2) As Byte '保留
wIllegalType As Integer '违章类型采用国标定义 byIllegalSubType(1 To 8) As Byte '违章子类型
byPostPicNo As Byte '违章时取第几张图片作为卡口图,&Hff-表示不取
byChanIndex As Byte '通道号(保留)
wSpeedLimit As Integer '限速上限(超速时有效) byRes2(1 To 2) As Byte
struPlateInfo As NET_DVR_PLATE_INFO '车牌信息结构 struVehicleInfo As NET_DVR_VEHICLE_INFO '车辆信息 byMonitoringSiteID(1 To 48) As Byte '监测点编号 byDeviceID(1 To 48) As Byte '设备编号
byDir As Byte '监测方向,1-上行,2-下行,3-双向,4-由东向西,5-由南向北,6-由西向东,7-由北向南,8-其它
byDetectType As Byte '检测方式,1-地感触发,2-视频触发,3-多帧识别,4-雷达触发
byRes3(1 To 20) As Byte '保留
'0-开闸,1-未开闸 (专用于历史数据中相机根据黑白名单匹配后,是否开闸成功的标志) byBarrierGateCtrlType As Byte
byAlarmDataType As Byte '0-实时数据,1-历史数据
struSnapFirstPicTime As NET_DVR_TIME_V30 '端点时间(ms)(抓拍第一张图片的时间)
dwIllegalTime As Long '违法持续时间(ms) = 抓拍最后一张图片的时间 - 抓拍第一张图片的时间
dwPicNum As Long '图片数量(与picGroupNum不同,代表本条信息附带的图片数量,图片信息由struVehicleInfoEx定义
struPicInfo(1 To 6) As NET_ITS_PICTURE_INFO '图片信息,单张回调,最多6张图,由序号区分 End Type
'报警设备信息
Public Type NET_DVR_ALARMER
byUserIDValid As Byte 'userid是否有效 0-无效,1-有效 bySerialValid As Byte '序列号是否有效 0-无效,1-有效 byVersionValid As Byte '版本号是否有效 0-无效,1-有效 byDeviceNameValid As Byte '设备名字是否有效 0-无效,1-有效 byMacAddrValid As Byte 'MAC地址是否有效 0-无效,1-有效 byLinkPortValid As Byte 'login端口是否有效 0-无效,1-有效 byDeviceIPValid As Byte '设备IP是否有效 0-无效,1-有效 bySocketIPValid As Byte 'socket ip是否有效 0-无效,1-有效 lUserID As Long 'NET_DVR_Login()返回值, 布防时有
效
sSerialNumber(1 To SERIALNO_LEN) As Byte '序列号
dwDeviceVersion As Long '版本信息 高16位表示主版本,低16位表示次版本
sDeviceName(1 To NAME_LEN) As Byte '设备名字
byMACAddr(1 To MACADDR_LEN) As Byte 'MAC地址 wLinkPort As Integer 'link port sDeviceIP(1 To 128) As Byte 'IP地址
sSocketIP(1 To 128) As Byte '报警主动上传时的socket IP地址 byIpProtocol As Byte 'Ip协议 0-IPV4, 1-IPV6 byRes2(1 To 11) As Byte End Type
'============================================================================================================================================================函数
'初始化SDK NET_DVR_API BOOL __stdcall NET_DVR_Init();
Public Declare Function NET_DVR_Init Lib \'释放SDK资源 NET_DVR_API BOOL __stdcall NET_DVR_Cleanup(); Public Declare Function NET_DVR_Cleanup Lib \
'用户注册 NET_DVR_API LONG __stdcall NET_DVR_Login_V30(char *sDVRIP, WORD wDVRPort, char *sUserName, char *sPassword, NET_DVR_DEVICEINFO_V30 lpDeviceInfo);
Public Declare Function NET_DVR_Login_V30 Lib \ ByVal sDVRIP As String, _ ByVal wDVRPort As Integer, _ ByVal sUserName As String, _ ByVal sPassword As String, _
ByRef lpDeviceInfo As NET_DVR_DEVICEINFO_V30) As Long '注销用户 NET_DVR_API BOOL __stdcall NET_DVR_Logout(LONG lUserID); Public Declare Function NET_DVR_Logout Lib \ ByVal lUserID As Long) As Boolean
'参数配置 NET_DVR_API BOOL __stdcall NET_DVR_SetDVRConfig(LONG lUserID,LONG dwCommand,LONG lChannel, LPVOID lpInBuffer,dwInBufferSize) As Long Public Declare Function NET_DVR_SetDVRConfig Lib \ ByVal lUserID As Long, _
ByVal dwCommand As Long, _ ByVal lChannel As Long, _
ByRef lpInBuffer As NET_DVR_TIME, _ ByVal dwInBufferSize As Long) As Boolean
'启动预览 NET_DVR_API LONG __stdcall NET_DVR_RealPlay_V40(LONG lUserID, NET_DVR_PREVIEWINFO lpPreviewInfo, REALDATACALLBACK fRealDataCallBack_V30

