基於《海康板卡網絡開發包編程手冊 V4.7》與 VC++ Demo,完整封裝 `hikclient.dll` 核心 API,含結構體、枚舉、委托、37 個函數簽名。
// 客戶端視頻信息結構
public struct CLIENT_VIDEOINFO {
public byte m_bRemoteChannel; // 服務端通道號
public byte m_bSendMode; // 網絡模式
public byte m_nImgFormat; // 0=主碼流 1=子碼流
public string m_sIPAddress; // 服務端 IP
public string m_sUserName; // 用戶名
public string m_sUserPassWord; // 密碼
public bool m_bUserCheck; // 是否驗證
public IntPtr m_hShowVideo; // 顯示窗口句柄
}
// 網絡模式枚舉
public enum SEND_MODE { UDPMODE=0, TCPMODE, MULTIMODE, DIALING, AUDIODETACH }
// 顯示模式枚舉
public enum DISP_MODE { NORMALMODE=0, OVERLAYMODE }
// 回調委托
public delegate void ReadDataCallBack(ulong channel, byte[] buffer, ulong size);
public delegate void CapPicFun(int handle, IntPtr pBuf, int size, int w, int h, int stamp, int type, int reserved);
public delegate void DrawFun(int handle, Graphics dc, int user);
| 函數 | 用途 |
|---|---|
| MP4_ClientStartup | 初始化客戶端 |
| MP4_ClientStart | 啟動預覽(含回調) |
| MP4_ClientStop | 停止預覽 |
| MP4_ClientGetState | 獲取連接狀態 |
| MP4_ClientStartCaptureFile | 開始錄像到文件 |
| MP4_ClientSetCapPicCallBack | 設置截圖回調 |
| MP4_ClientSavePicFile | 保存截圖為 BMP |
| MP4_ClientAudioStart/Stop | 音頻開關 |
| MP4_ClientCommandtoServer | 發送字符串命令 |