有函数的说明,但是小弟才接触delphi不久,要编写采集成AVI的这个功能,实在是有些困难,我现在只能把采集卡的图像通过一个image框显示,要想同过他来采集不知可行否?哪位知道的朋友能不能写写来小弟参考一下:
这个是函数说明:
MV_GetBufferSize
原型: DWORD __stdcall MV_GetBufferSize(WORD nCardNo,DWORD *lpLiner,DWORD *dwSize);
说明:获得可为本卡作为图象数据使用的缓存BUFFER的线性首地址和大小,及在当前设置下可存放图象的幅数
//设置分配内存大小多少Kbytes(//HLM//SOFTWARE//Microview//MemAlloc//MemorySize)
参数: nCardNo : 卡号
lpLiner : 线性地址
dwSize : 大小
MV_SetCaptureStreamHook
原型:BOOL __stdcall MV_SetCaptureStreamHook(WORD nCardNo, CaptureStreamProc lpStreamFun);
回调函数原型
typedef UINT (*CaptureStreamProc)(WORD wHWCardNo,LPBYTE lpBuffer, DWORD DataLenth);
说明:设置图像采集回调函数,并激活
参数 : nCardNo : 卡号
lpStreamFun : 采集回调函数
MV_StopCaptureStreamHook
原型:BOOL __stdcall MV_StopCaptureStreamHook(WORD nCardNo);
说明:关闭图像采集回调函数
参数:nCardNo : 卡号
MV_EnableOverlay
原型:BOOL __stdcall MV_EnableOverlay(WORD nCardNo,HWND m_hWnd,DWORD ColorKey,BOOL IsDisp,WORD DispMethod);
说明:激活Overlay采集显示
参数: nCardNo : 卡号
m_hWnd : 窗口句柄
ColorKey : 色健值
IsDisp : 是否显示
DispMethod : 显示模式 (OFFSCREEN = 0,OVERLAY = 1,GDIFUNCTION = 2,AUTO = 3)
MV_CaptureContinueFrames
原型:BOOL __stdcall MV_CaptureContinueFrames(WORD nCardNo,HWND m_hWnd,DWORD ColorKey,BOOL IsDisp,WORD DispMethod,BOOL IsWait,int iStartFrameNo,int iTotalFrame);
说明:设置开始连续帧采集
参数:nCardNo:板卡号
m_hWnd : 窗口句柄(如显示时需要,不需显示可以为NULL)
ColorKey:色健值
IsDisp : 是否显示(TRUE=显示,FALSE=不显示)
DispMethod : 显示模式(如显示时需要)
IsWait : 是否等采集结束返回
iStartFrameNo :起始帧号(MV_GetBufferSize获得共能采集的图像帧数)
iTotalFrame :共采集的帧数(如为0,一直循环采集,直到调用MV_StopCaptureContinueFrames)
MV_StopCaptureContinueFrames
原型:BOOL __stdcall MV_StopCaptureContinueFrames(WORD nCardNo);
说明:设置停止连续帧采集
参数:nCardNo:板卡号
MV_SetCaptureWindow
原型: BOOL __stdcall MV_SetCaptureWindow(WORD nCardNo,int Left, int Top,int Width, int Height)
说明:设置采集时窗口大小
参数 : nCardNo : 卡号
Left : 左
Top : 顶
Width : 宽度
Height : 高度