function FrameCallBack(hWnd: HWND; lpVHdr: LongInt): LongInt; stdcall;
var
DataPoint: ^byte; //结构指针指向形式
DibLen: Cardinal;
begin
//转换从回调函数中得到的指针
VideoStr := PVIDEOHDR(lpVHdr); //得到视频数据的地址指针
//得到返回的数据大小
DibLen := VideoStr^.dwBufferLength;
GetMem(DataPoint, DibLen);
//将帧数据COPY到一个内存中,注意DATAPOINT要先分配空间
CopyMemory(DataPoint, VideoStr^.lpData, Diblen);
操作DATAPOINT就可以存成图片了:)
//一些其他处理
FreeMem(DataPoint, DibLen);
result := S_OK;
end;