⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dhnetsdk.h

📁 大华DVR的客户端开发包和Demo,从网上是下载不到的。
💻 H
📖 第 1 页 / 共 5 页
字号:
} NET_RECORDFILE_INFO, *LPNET_RECORDFILE_INFO;


/************************************************************************
 ** 协议信息
 ***********************************************************************/
typedef struct {
	char            protocolname[12]; //协议名
	unsigned int	baudbase;	      //波特率
	unsigned char	databits; 	      //数据位
	unsigned char	stopbits;	      //停止位
	unsigned char	parity;		      //校验位
	unsigned char   reserve;
} PROTOCOL_INFO, *LPPROTOCOL_INFO;


/************************************************************************
 ** 报警IO控制
 ***********************************************************************/
typedef struct {
	unsigned short index;	//端口序号
	unsigned short state;	//端口状态
}ALARM_CONTROL;

/************************************************************************
 ** 用户控制信息
 ***********************************************************************/
typedef struct {
	DWORD		dwID;
	char		name[RIGHT_NAME_LENGTH];
	char		memo[MEMO_LENGTH];
}OPR_RIGHT;

typedef struct {
	DWORD		dwID;
	DWORD		dwGroupID;
	char		name[USER_NAME_LENGTH];
	char		passWord[USER_PSW_LENGTH];
	DWORD		dwRightNum;
	DWORD		rights[MAX_RIGHT_NUM];
	char		memo[MEMO_LENGTH];
}USER_INFO;

typedef struct {
	DWORD		dwID;
	char		name[USER_NAME_LENGTH];
	DWORD		dwRightNum;
	DWORD		rights[MAX_RIGHT_NUM];
	char		memo[MEMO_LENGTH];
}USER_GROUP_INFO;

//用户信息配置结构
typedef struct {
	DWORD				dwRightNum;
	OPR_RIGHT			rightList[MAX_RIGHT_NUM];
	DWORD				dwGroupNum;
	USER_GROUP_INFO		groupList[MAX_GROUP_NUM];
	DWORD				dwUserNum;
	USER_INFO			userList[MAX_USER_NUM];
}USER_MANAGE_INFO;

/************************************************************************
 ** 服务器断开回调原形
 ***********************************************************************/
typedef void (CALLBACK *fDisConnect)(LONG lLoginID, char *pchDVRIP, LONG nDVRPort, DWORD dwUser);

/************************************************************************
 ** 实时预览回调原形
 ***********************************************************************/
typedef void(CALLBACK *fRealDataCallBack) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, DWORD dwUser);

/************************************************************************
 ** 原始数据回调原形
 ***********************************************************************/
typedef int(CALLBACK *fDataCallBack) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, DWORD dwUser);

/************************************************************************
 ** 回调原形
 ***********************************************************************/
typedef BOOL (CALLBACK *fMessCallBack)(LONG lCommand, LONG lLoginID, char *pBuf,
			DWORD dwBufLen, char *pchDVRIP, LONG nDVRPort, DWORD dwUser);

/************************************************************************
 ** 屏幕叠加回调原形
 ***********************************************************************/
typedef void (CALLBACK *fDrawCallBack)(LONG lLoginID, LONG lPlayHandle, HDC hDC, DWORD dwUser);

/************************************************************************
 ** 实时预览回调原形-扩展
 ***********************************************************************/
typedef void(CALLBACK *fRealDataCallBackEx) (LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, LONG param, DWORD dwUser);

/************************************************************************
 ** 回放录像进度回调原形
 ***********************************************************************/
typedef void(CALLBACK *fDownLoadPosCallBack) (LONG lPlayHandle, DWORD dwTotalSize, DWORD dwDownLoadSize, DWORD dwUser);

/************************************************************************
 ** 通过时间下载录像进度回调原形
 现在按时间下载没有使用这个回调函数,使用的是回放录像进度回调原形. //by linjianyan
 ***********************************************************************/
typedef void(CALLBACK *fTimeDownLoadPosCallBack) (LONG lPlayHandle, DWORD dwTotalSize, DWORD dwDownLoadSize, int index, NET_RECORDFILE_INFO recordfileinfo, DWORD dwUser);

/************************************************************************
 ** 查询设备日志数据回调原形
 ***********************************************************************/
typedef void(CALLBACK *fLogDataCallBack) (LONG lLoginID, char *pBuffer, DWORD dwBufSize, DWORD nTotalSize, bool bEnd, DWORD dwUser);

/************************************************************************
 ** 透明串口回调原形
 ***********************************************************************/
typedef void(CALLBACK *fTransComCallBack) (LONG lLoginID, LONG lTransComChannel, char *pBuffer, DWORD dwBufSize, DWORD dwUser);

/************************************************************************
 ** 升级设备程序回调原形
 ***********************************************************************/
typedef void(CALLBACK *fUpgradeCallBack) (LONG lLoginID, LONG lUpgradechannel, int nTotalSize, int nSendSize, DWORD dwUser);

/*Begin: Add by yehao(10857) 2006-12-20*/
/************************************************************************
 ** 语音对讲的音频数据回调原形
 ***********************************************************************/
typedef void(CALLBACK *pfAudioDataCallBack) (LONG lTalkHandle, char *pDataBuf, DWORD dwBufSize, BYTE byAudioFlag, DWORD dwUser);
/*End: yehao(10857) */
/************************************************************************
 ** SDK初始化
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_Init(fDisConnect cbDisConnect, DWORD dwUser);


/************************************************************************
 ** SDK退出清理
 ***********************************************************************/
CLIENT_API void CALL_METHOD CLIENT_Cleanup();

/************************************************************************/
/* 返回函数执行失败代码                                                                  */
/************************************************************************/
CLIENT_API DWORD CALL_METHOD CLIENT_GetLastError(void);

/************************************************************************
 ** 设置连接服务器超时时间和尝试次数
 ***********************************************************************/
CLIENT_API void CALL_METHOD CLIENT_SetConnectTime(int nWaitTime, int nTryTimes);


/************************************************************************
 ** 获取SDK的版本信息
 ***********************************************************************/
CLIENT_API DWORD CALL_METHOD CLIENT_GetSDKVersion();


/************************************************************************
 ** 向设备注册
 ***********************************************************************/
CLIENT_API LONG CALL_METHOD CLIENT_Login(char *pchDVRIP, WORD wDVRPort, char *pchUserName, char *pchPassword, LPNET_DEVICEINFO lpDeviceInfo, int *error = 0);

CLIENT_API LONG CALL_METHOD CLIENT_LoginEx(char *pchDVRIP, WORD wDVRPort, char *pchUserName, char *pchPassword, int nSpecCap, void* pCapParam, LPNET_DEVICEINFO lpDeviceInfo, int *error = 0);

/************************************************************************
 ** 向设备注销
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_Logout(LONG lLoginID);

/************************************************************************
 ** 
 ***********************************************************************/
CLIENT_API void CALL_METHOD CLIENT_SetDVRMessCallBack(fMessCallBack cbMessage,DWORD dwUser);


/************************************************************************
 ** 开始帧听设备
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_StartListen(LONG lLoginID);


/************************************************************************
 ** 停止帧听设备
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_StopListen(LONG lLoginID);


/************************************************************************
 ** 设置屏幕叠加回调
 ***********************************************************************/
CLIENT_API void CALL_METHOD CLIENT_RigisterDrawFun(fDrawCallBack cbDraw, DWORD dwUser);


/************************************************************************
 ** 开始实时预览
 ***********************************************************************/
CLIENT_API LONG CALL_METHOD CLIENT_RealPlay(LONG lLoginID, int nChannelID, HWND hWnd);



/************************************************************************
 ** 开始实时预览_扩展
 ***********************************************************************/
//实时预览扩展接口增加的参数:预览类型
typedef enum _RealPlayType
{
	RType_Realplay = 0,	//实时预览
	RType_Multiplay,	//多画面预览
	
	RType_Realplay_0,	//实时监视-主码流
	RType_Realplay_1,	//实时监视-从码流1
	RType_Realplay_2,	//实时监视-从码流2
	RType_Realplay_3,	//实时监视-从码流3
}RealPlayType;

CLIENT_API LONG CALL_METHOD CLIENT_RealPlayEx(LONG lLoginID, int nChannelID, HWND hWnd, RealPlayType rType = RType_Realplay);


/************************************************************************
 ** 停止实时预览
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_StopRealPlay(LONG lRealHandle);

/************************************************************************
 ** 停止实时预览_扩展
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_StopRealPlayEx(LONG lRealHandle);

/************************************************************************
 ** 保存数据为文件
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_SaveRealData(LONG lRealHandle, const char *pchFileName);


/************************************************************************
 ** 结束保存数据为文件
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_StopSaveRealData(LONG lRealHandle);


/************************************************************************
 ** 设置图像属性
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_ClientSetVideoEffect(LONG lPlayHandle, unsigned char nBrightness, unsigned char nContrast, unsigned char nHue, unsigned char nSaturation);


/************************************************************************
 ** 获取图像属性
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_ClientGetVideoEffect(LONG lPlayHandle, unsigned char *nBrightness, unsigned char *nContrast, unsigned char *nHue, unsigned char *nSaturation);


/************************************************************************
 ** 打开声音
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_OpenSound(LONG hPlayHandle);


/************************************************************************
 ** 关闭声音
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_CloseSound();

/*Begin: Add by yehao(10857) 2006-12-19 */
/************************************************************************
 ** 打开语音对讲
 ***********************************************************************/
CLIENT_API LONG CALL_METHOD CLIENT_StartTalkEx(LONG lLoginID, pfAudioDataCallBack pfcb, DWORD dwUser);

/************************************************************************
 ** 设置语音对讲的音量
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_SetAudioClientVolume(LONG lTalkHandle, WORD wVolume);

/************************************************************************
 ** 发送语音数据到设备
 ***********************************************************************/
CLIENT_API LONG CALL_METHOD CLIENT_TalkSendData(LONG lTalkHandle, char *pSendBuf, DWORD dwBufSize);

/************************************************************************
 ** 开始PC端录音
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_RecordStart();

/************************************************************************
 ** 结束PC端录音
 ***********************************************************************/
CLIENT_API BOOL CALL_METHOD CLIENT_RecordStop();

/************************************************************************
 ** 解码音频数据
 ***********************************************************************/
CLIENT_API void CALL_METHOD CLIENT_AudioDec(char *pAudioDataBuf, DWORD dwBufSize);

/************************************************************************
 ** 打开语音转发
 ***********************************************************************/
//CLIENT_API LONG CALL_METHOD CLIENT_StartTalk_MR(LONG lLoginID, pfAudioDataCallBack pfcb, DWORD dwUser);

/************************************************************************
 ** 停止语音对讲
 ***********************************************************************/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -