📄 hcnetsdk.h
字号:
/*************************************************************************** * HCNetSDK.h * * Wed Dec 8 15:11:16 2004 * Copyright 2004 Hikvision * Email ****************************************************************************/#ifndef _HCNETSDK_H_#define _HCNETSDK_H_#include "m4play.h"#include "analyzedata.h"#ifdef __cpluscplus#define NET_DVR_API extern#else#define NET_DVR_API#endif#ifdef __cplusplusextern "C"{#endif//2005-03-15#define SDK_V12//2005-04-13#define SDK_V13//2005-07-11#define SDK_V14//2005-12-28#define SDK_V15//2006-04-27#define SDK_V20//2006-08-18#define SDK_V21typedef unsigned int BOOL;typedef unsigned char BYTE;typedef unsigned short WORD;typedef unsigned int DWORD;#define NET_DVR_NOERROR 0 //没有错误#define NET_DVR_PASSWORD_ERROR 1 //用户名密码错误#define NET_DVR_NOENOUGHPRI 2 //权限不足#define NET_DVR_NOINIT 3 //没有初始化#define NET_DVR_CHANNEL_ERROR 4 //通道号错误#define NET_DVR_OVER_MAXLINK 5 //连接到DVR的客户端个数超过最大#define NET_DVR_VERSIONNOMATCH 6 //版本不匹配#define NET_DVR_NETWORK_FAIL_CONNECT 7 //连接服务器失败#define NET_DVR_NETWORK_SEND_ERROR 8 //向服务器发送失败#define NET_DVR_NETWORK_RECV_ERROR 9 //从服务器接收数据失败#define NET_DVR_NETWORK_RECV_TIMEOUT 10 //从服务器接收数据超时#define NET_DVR_NETWORK_ERRORDATA 11 //传送的数据有误#define NET_DVR_ORDER_ERROR 12 //调用次序错误#define NET_DVR_OPERNOPERMIT 13 //无此权限#define NET_DVR_COMMANDTIMEOUT 14 //DVR命令执行超时#define NET_DVR_ERRORSERIALPORT 15 //串口号错误#define NET_DVR_ERRORALARMPORT 16 //报警端口错误#define NET_DVR_PARAMETER_ERROR 17 //参数错误#define NET_DVR_CHAN_EXCEPTION 18 //服务器通道处于错误状态#define NET_DVR_NODISK 19 //没有硬盘#define NET_DVR_ERRORDISKNUM 20 //硬盘号错误#define NET_DVR_DISK_FULL 21 //服务器硬盘满#define NET_DVR_DISK_ERROR 22 //服务器硬盘出错#define NET_DVR_NOSUPPORT 23 //服务器不支持#define NET_DVR_BUSY 24 //服务器忙#define NET_DVR_MODIFY_FAIL 25 //服务器修改不成功#define NET_DVR_PASSWORD_FORMAT_ERROR 26 //密码输入格式不正确#define NET_DVR_DISK_FORMATING 27 //硬盘正在格式化,不能启动操作#define NET_DVR_DVRNORESOURCE 28 //DVR资源不足#define NET_DVR_DVROPRATEFAILED 29 //DVR操作失败#define NET_DVR_OPENHOSTSOUND_FAIL 30 //打开PC声音失败#define NET_DVR_DVRVOICEOPENED 31 //服务器语音对讲被占用#define NET_DVR_TIMEINPUTERROR 32 //时间输入不正确#define NET_DVR_NOSPECFILE 33 //回放时服务器没有指定的文件#define NET_DVR_CREATEFILE_ERROR 34 //创建文件出错#define NET_DVR_FILEOPENFAIL 35 //打开文件出错#define NET_DVR_OPERNOTFINISH 36 //上次的操作还没有完成#define NET_DVR_GETPLAYTIMEFAIL 37 //获取当前播放的时间出错#define NET_DVR_PLAYFAIL 38 //播放出错#define NET_DVR_FILEFORMAT_ERROR 39 //文件格式不正确#define NET_DVR_DIR_ERROR 40 //路径错误#define NET_DVR_ALLOC_RESOURCE_ERROR 41 //资源分配错误#define NET_DVR_AUDIO_MODE_ERROR 42 //声卡模式错误#define NET_DVR_NOENOUGH_BUF 43 //缓冲区太小#define NET_DVR_CREATESOCKET_ERROR 44 //创建int出错#define NET_DVR_SETSOCKET_ERROR 45 //设置int出错#define NET_DVR_MAX_NUM 46 //个数达到最大#define NET_DVR_USERNOTEXIST 47 //用户不存在#define NET_DVR_WRITEFLASHERROR 48 //写FLASH出错#define NET_DVR_UPGRADEFAIL 49 //DVR升级失败#define NET_DVR_MAX_MSGNUM 50 //消息队列达到最大#define NET_DVR_PLAYERFAILED 51 //播放器中错误#define NET_DVR_MAX_USERNUM 52 //设备端用户数达到最大#define NET_DVR_GETLOCALIPANDMACFAIL 53 //获得客户端的IP地址或物理地址失败#define NET_DVR_NOENCODEING 54 //该通道没有编码#define NET_DVR_IPMISMATCH 55 //IP地址不匹配#define NET_DVR_MACMISMATCH 56 //MAC地址不匹配#define NET_DVR_UPGRADELANGMISMATCH 57 //升级文件语言版本不匹配#define NET_DVR_UNKNOWN 99 ////一些网络错误码#define NET_DVR_TCP_SERVICES_ERROR -7150 /*获取端口出错*/#define NET_DVR_TCP_BIND_ERROR -7152 /*绑定套接字出错*/#define NET_DVR_TCP_ACCEPT_ERROR -7153 /*接收连接请求出错*/#define NET_DVR_TCP_HOST_ERROR -7155 /*获取主机名出错*/#define NET_DVR_TCP_SOCKFD_ERROR -7157 /*套接字描述符值非法*/#define NET_DVR_TCP_REMOTE_CLOSE -7158 /*远程端连接已关闭*/#define NET_DVR_TCP_READ_ERROR -7159 /*读数据出错*/#define NET_DVR_TCP_LISTEN_ERROR -7161 /*监听出错*/#define NET_DVR_TCP_WOULDBLOCK -7164 /* 网络拥堵*///查找文件和日志函数返回值#define NET_DVR_FILE_SUCCESS 1000 //获得文件信息#define NET_DVR_FILE_NOFIND 1001 //没有文件#define NET_DVR_ISFINDING 1002 //正在查找文件#define NET_DVR_NOMOREFILE 1003 //查找文件时没有更多的文件#define NET_DVR_FILE_EXCEPTION 1004 //查找文件时异常//NET_DVR_IsSupport()返回值,1-9位分别表示以下信息(位与是TRUE)表示支持;#define NET_DVR_SUPPORT_DDRAW 0x01//支持DIRECTDRAW,如果不支持,则播放器不能工作;#define NET_DVR_SUPPORT_BLT 0x02//显卡支持BLT操作,如果不支持,则播放器不能工作;#define NET_DVR_SUPPORT_BLTFOURCC 0x04//显卡BLT支持颜色转换,如果不支持,播放器会用软件方法作RGB转换;#define NET_DVR_SUPPORT_BLTSHRINKX 0x08//显卡BLT支持X轴缩小;如果不支持,系统会用软件方法转换;#define NET_DVR_SUPPORT_BLTSHRINKY 0x10//显卡BLT支持Y轴缩小;如果不支持,系统会用软件方法转换;#define NET_DVR_SUPPORT_BLTSTRETCHX 0x20//显卡BLT支持X轴放大;如果不支持,系统会用软件方法转换;#define NET_DVR_SUPPORT_BLTSTRETCHY 0x40//显卡BLT支持Y轴放大;如果不支持,系统会用软件方法转换;#define NET_DVR_SUPPORT_SSE 0x80//CPU支持SSE指令,Intel Pentium3以上支持SSE指令;#define NET_DVR_SUPPORT_MMX 0x100//CPU支持MMX指令集,Intel Pentium3以上支持SSE指令;#define SET_PRESET 8 /* 设置预置点 */#define CLE_PRESET 9 /* 清除预置点 */#define GOTO_PRESET 39 /* 转到预置点 */#define LIGHT_PWRON 2 /* 接通灯光电源 */#define WIPER_PWRON 3 /* 接通雨刷开关 */#define FAN_PWRON 4 /* 接通风扇开关 */#define HEATER_PWRON 5 /* 接通加热器开关 */#define AUX_PWRON 6 /* 接通辅助设备开关 */#define ZOOM_IN 11 /* 焦距以速度SS变大(倍率变大) */#define ZOOM_OUT 12 /* 焦距以速度SS变小(倍率变小) */#define FOCUS_NEAR 13 /* 焦点以速度SS前调 */#define FOCUS_FAR 14 /* 焦点以速度SS后调 */#define IRIS_OPEN 15 /* 光圈以速度SS扩大 */#define IRIS_CLOSE 16 /* 光圈以速度SS缩小 */#define TILT_UP 21 /* 云台以SS的速度上仰 */#define TILT_DOWN 22 /* 云台以SS的速度下俯 */#define PAN_LEFT 23 /* 云台以SS的速度左转 */#define PAN_RIGHT 24 /* 云台以SS的速度右转 */#define UP_LEFT 25 /* 云台以SS的速度上仰和左转 */#define UP_RIGHT 26 /* 云台以SS的速度上仰和右转 */#define DOWN_LEFT 27 /* 云台以SS的速度下俯和左转 */#define DOWN_RIGHT 28 /* 云台以SS的速度下俯和右转 */#define PAN_AUTO 29 /* 云台以SS的速度左右自动扫描 */#define STA_MEM_CRUISE 34 /* 开始记录轨迹 */#define STO_MEM_CRUISE 35 /* 停止记录轨迹 */#define RUN_CRUISE 36 /* 开始轨迹 */#define FILL_PRE_SEQ 30 /* 将预置点加入巡航序列 */#define SET_SEQ_DWELL 31 /* 设置巡航点停顿时间 */#define SET_SEQ_SPEED 32 /* 设置巡航速度 */#define CLE_PRE_SEQ 33 /* 将预置点从巡航序列中删除 */#define RUN_SEQ 37 /* 开始巡航 */#define STOP_SEQ 38 /* 停止巡航 *///显示模式 enum{NORMALMODE = 0,OVERLAYMODE};//发送模式enum{PTOPTCPMODE = 0,PTOPUDPMODE,MULTIMODE,PTOPRTPMODE,AUDIODETACH,NOUSEMODE};#define NET_DVR_SYSHEAD 1 //系统头数据#define NET_DVR_STREAMDATA 2 //流数据#define NET_DVR_RECVKEYDATA 90 //SETPOS后接收发过来的是关键帧数据(往前找I帧) #define NET_DVR_RECVSETPOSDATA 91 //SETPOS后接收改变位置后具体的数据#define NET_DVR_PLAYBACKOVER 101 //回放数据播放完毕#define NET_DVR_PLAYBACKNETCLOSE 103 //回放时候连接断开#define NET_DVR_PLAYBACK5SNODATA 104 //回放5s没有收到数据#define NET_DVR_REALPLAYEXCEPTION 111 //预览异常//NET_DVR_PlayBackControl,NET_DVR_PlayControlLocDisplay的宏定义#define NET_DVR_PLAYSTART 1//开始播放#define NET_DVR_PLAYSTOP 2//停止播放#define NET_DVR_PLAYPAUSE 3//暂停播放#define NET_DVR_PLAYRESTART 4//恢复播放#define NET_DVR_PLAYFAST 5//快放#define NET_DVR_PLAYSLOW 6//慢放#define NET_DVR_PLAYNORMAL 7//正常速度#define NET_DVR_PLAYFRAME 8//单帧放#define NET_DVR_PLAYSTARTAUDIO 9//打开声音#define NET_DVR_PLAYSTOPAUDIO 10//关闭声音#define NET_DVR_PLAYAUDIOVOLUME 11//调节音量#define NET_DVR_PLAYSETPOS 12//改变文件回放的进度#define NET_DVR_PLAYGETPOS 13//获取文件回放的进度#define NET_DVR_PLAYGETTIME 14//获取当前已经播放的时间#define NET_DVR_PLAYGETFRAME 15//获取当前已经播放的帧数#define NET_DVR_GETTOTALFRAMES 16//获取当前播放文件总的帧数#define NET_DVR_GETTOTALTIME 17//获取当前播放文件总的时间#define NET_DVR_THROWBFRAME 20//丢B帧//NET_DVR_GetDVRConfig,NET_DVR_GetDVRConfig的命令定义#define NET_DVR_GET_DEVICECFG 100 //获取设备参数#define NET_DVR_SET_DEVICECFG 101 //设置设备参数#define NET_DVR_GET_NETCFG 102 //获取网络参数#define NET_DVR_SET_NETCFG 103 //设置网络参数#define NET_DVR_GET_PICCFG 104 //获取图象参数#define NET_DVR_SET_PICCFG 105 //设置图象参数#define NET_DVR_GET_COMPRESSCFG 106 //获取压缩参数#define NET_DVR_SET_COMPRESSCFG 107 //设置压缩参数#define NET_DVR_GET_RECORDCFG 108 //获取录像时间参数#define NET_DVR_SET_RECORDCFG 109 //设置录像时间参数#define NET_DVR_GET_DECODERCFG 110 //获取解码器参数#define NET_DVR_SET_DECODERCFG 111 //设置解码器参数#define NET_DVR_GET_RS232CFG 112 //获取232串口参数#define NET_DVR_SET_RS232CFG 113 //设置232串口参数#define NET_DVR_GET_ALARMINCFG 114 //获取报警输入参数#define NET_DVR_SET_ALARMINCFG 115 //设置报警输入参数#define NET_DVR_GET_ALARMOUTCFG 116 //获取报警输出参数#define NET_DVR_SET_ALARMOUTCFG 117 //设置报警输出参数#define NET_DVR_GET_TIMECFG 118 //获取DVR时间#define NET_DVR_SET_TIMECFG 119 //设置DVR时间#define NET_DVR_GET_PREVIEWCFG 120 //获取预览参数#define NET_DVR_SET_PREVIEWCFG 121 //设置预览参数#define NET_DVR_GET_VIDEOOUTCFG 122 //获取视频输出参数#define NET_DVR_SET_VIDEOOUTCFG 123 //设置视频输出参数#define NET_DVR_GET_USERCFG 124 //获取用户参数#define NET_DVR_SET_USERCFG 125 //设置用户参数#define NET_DVR_GET_EXCEPTIONCFG 126 //获取异常参数#define NET_DVR_SET_EXCEPTIONCFG 127 //设置异常参数//Cybasec#define NET_DVR_GET_ZONEANDDST 128 //获取时区和夏时制参数#define NET_DVR_SET_ZONEANDDST 129 //设置时区和夏时制参数//叠加字符#define NET_DVR_GET_SHOWSTRING 130 //获取叠加字符参数#define NET_DVR_SET_SHOWSTRING 131 //设置叠加字符参数#define NET_DVR_GET_AUXOUTCFG 140 //获取报警触发辅助输出设置#define NET_DVR_SET_AUXOUTCFG 141 //设置报警触发辅助输出设置#define NET_DVR_GET_PREVIEWCFG_AUX 142 //获取-s系列双输出预览参数#define NET_DVR_SET_PREVIEWCFG_AUX 143 //设置-s系列双输出预览参数#define NET_DVR_GET_NTPCFG 224 //获取网络应用参数 NTP#define NET_DVR_SET_NTPCFG 225 //设置网络应用参数 NTP#define NET_DVR_GET_DDNSCFG 226 //获取网络应用参数 DDNS#define NET_DVR_SET_DDNSCFG 227 //设置网络应用参数 DDNS#define NET_DVR_GET_EMAILCFG 228 //获取网络应用参数 EMAIL#define NET_DVR_SET_EMAILCFG 229 //设置网络应用参数 EMAIL#define NET_DVR_GET_NETAPPCFG 198 //获取网络应用参数 NTP/DDNS/EMAIL#define NET_DVR_SET_NETAPPCFG 199 //设置网络应用参数 NTP/DDNS/EMAIL//SDK_V14#define NET_DVR_GET_PICCFG_EX 200 //获取图象参数#define NET_DVR_SET_PICCFG_EX 201 //设置图象参数//SDK_V15 扩展命令#define NET_DVR_GET_USERCFG_EX 202 //获取用户参数#define NET_DVR_SET_USERCFG_EX 203 //设置用户参数#define NET_DVR_GET_COMPRESSCFG_EX 204 //获取压缩参数(扩展)#define NET_DVR_SET_COMPRESSCFG_EX 205 //设置压缩参数(扩展)//回调函数类型#define COMM_ALARM 0x1100 //报警信息#define COMM_TRADEINFO 0x1500 //ATMDVR主动上传交易信息//异常类型#define EXCEPTION_EXCHANGE 0x8000 //探询设备时网络异常#define EXCEPTION_AUDIOEXCHANGE 0x8001 //语音对讲异常#define EXCEPTION_ALARM 0x8002 //报警异常#define EXCEPTION_PREVIEW 0x8003 //预览异常#define EXCEPTION_SERIAL 0x8004 //透明通道异常/*解码设备控制码定义 NET_DVR_DecCtrlDec()*/#define NET_DEC_STARTDEC 1#define NET_DEC_STOPDEC 2#define NET_DEC_STOPCYCLE 3#define NET_DEC_CONTINUECYCLE 4#define MAX_NAMELEN 16 //DVR本地登陆名#define MAX_RIGHT 32 //权限#define NAME_LEN 32#define SERIALNO_LEN 48#define MACADDR_LEN 6#define MAX_ETHERNET 2#define PATHNAME_LEN 128#define PASSWD_LEN 16#define MAX_CHANNUM 16#define MAX_ALARMOUT 4#define MAX_TIMESEGMENT 4#define MAX_PRESET 128//SDK_V14#define MAX_SHELTERNUM 4#define MAX_DAYS 7#define PHONENUMBER_LEN 32#define MAX_DISKNUM 16#define MAX_WINDOW 16#define MAX_VGA 1#define MAX_USERNUM 16#define MAX_EXCEPTIONNUM 16#define MAX_LINK 6#define MAX_ALARMIN 16#define MAX_DECPOOLNUM 4#define MAX_DECNUM 4#define MAX_TRANSPARENTNUM 2#define MAX_STRINGNUM 4
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -