其实不用那么麻烦的。市面上支持windows系列的各种摄像头都支持vfw(video for windows,
微软制定的视频捕捉标准,属于win32之列)。在里面有几个函数:
m_hCapWnd:HWND ;
1, m_hCapWnd:=capCreateCaptureWindow((LPTSTR)TEXT('这里是标题可以不填'),
WS_CHILD|WS_VISIBLE|WS_EX_CLIENTEDGE|WS_EX_DLGMODALFRAME,0,0,Width,heigh,
display->hwnd); //Width,显示视频图像的宽度 ,heigh 显示视频图像的宽度
// display->hwnd 指的是 显示视频窗口的句炳,可以是form ,也可以是panel.
返回一个句柄。 下一步的函数需要调用它。
2 capDriverConnect(m_hCapWnd,0));
这个函数是连接设备: 0,表示第一块,1表示第二块(多个设备的时候)
3 capPreviewRate(m_hCapWnd,30); // 设置预示帧频,一秒显示多少帧。
capPreview(m_hCapWnd,TRUE); // 表示以预览方式显示,也可以用capoverlay(m_hCapWnd,TRUE);
进行overlay方式显示图像。
其它的函数(捕捉动态图像,捕捉单帧画面,压缩图像等,自己看函数帮助就行,这里就不一一介绍)
c++ builder 包含:vfw.h delphi 包含:vfw
欢迎 交流: chenyingchun@yeah.net.需要示例程序的请给我发email.