启动预览LONG VSNET_ClientStart(char *m_url,CHANNEL_CLIENTINFO *m_pChaninfo,WORD wserport = 3000,int streamtype = 0)
说明:与服务器建立连接,并实时预览图像;
参数说明:
m_url:服务器的地址或转发服务器的地址;
m_pChaninfo:CHANNEL_CLIENTINFO的指针;
wserport:服务器或转发服务器的端口号;
streamtype :连接的码流类型,0:主码流 1:次码流,此项需要设备支持,默认为主码流;
返回值:-1表示失败,其他值作为VSNET_ClientStop,VSNET_ClientStartCaptureFile等函数的参数;CHANNEL_CLIENTINFO结构:  //要求:转换成Delphi语言,以及m_messagecallback:消息回调函数怎么调用typedef struct{
char *m_sername;
char *m_username;
char *m_password;
WORD m_tranType;
WORD m_playstart;
BYTE m_ch;
HWND m_hVideohWnd;
HWND m_hChMsgWnd;
UINT m_nChmsgid;
int m_buffnum;
int m_useoverlay;
COLORREF nColorKey;
void (WINAPI *m_messagecallback)(LONG hHandle,int wParam,int lParam,void *context);
void *context;
}CHANNEL_CLIENTINFO;
说明:
m_sername:服务器名称,如果是通过转发服务器连接时需要该名称检索服务器;
m_username:用户名,长度不超过20个字符;
m_password:密码,长度不超过20个字符;
m_tranType:连接模式,1:UDP方式,2:多播方式,3:TCP方式;
m_playstart:启动实时预览,TRUE:成功连接服务器后开始实时预览图像,FALSE:连接服务器后不预览图像,可以调用VSNET_ClientStartView手动启动实时预览;
m_ch:连接服务器的通道;
m_hVideohWnd:播放窗口句柄;
m_hChMsgWnd: 通道消息通知窗口句柄,可以为NULL,用VSNET_ClientStartup注册的窗口接收消息
m_nChmsgid:  通道消息号;
m_buffnum:   播放用的缓冲大小,范围10-50,值越小可能会有丢失包的问题,越大效果越好,但会占用更过的内存;
m_useoverlay:OVERLAY使用标志,TRUE:表示创建OVERLAY的表面,如果OVERLAY表面创建失败,会自动使用其它的表面;
nColorKey:保留;
m_messagecallback:消息回调函数
context:用户上下文
注意:如果通过转发服务器连接图像时需要SDK校验服务器名称(m_sername),如果你没有输入服务器名称,连接通道后会返回-112错误:没有找到服务器索引。
消息回调函数返回失败时,不能在回调函数调用VSNET_ClientStop,可以同时使用消息和回调函数
结束操作BOOL VSNET_ClientStop(LONG hHandle)
说明:停止播放,断开服务器服务器的连接;
参数:hHandle是VSNET_ClientStart的返回值;
返回值:TRUE表示成功,FALSE表示失败。根据返回来的值,不能停止视频服务器的连接,VSNET_ClientStart反回的值不正确

解决方案 »

  1.   

    type
     CHANNEL_CLIENTINFO = record 
    m_sername: PAnsiChar; 
    m_username: PAnsiChar; 
    m_password: PAnsichar; 
    m_tranType: WORD ; 
    m_playstart: WORD ; 
    m_ch: BYTE; 
    m_hVideohWnd: THandle; 
    m_hChMsgWnd: Thandle ; 
    m_nChmsgid: LongWord ; 
    m_buffnum: integer ; 
    m_useoverlay: integer ; 
    nColorKey: COLORREF ; 
    m_messagecallback: procedure (hHandle: LONGINT ;wParam,lParam: Integer; context: Pointer);stdcall; 
    context: Pointer; 
    end;
      LPCHANNEL_CLIENTINFO = ^CHANNEL_CLIENTINFO;