首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

关于视频图象捕获的一个基础有关问题

2012-02-17 
关于视频图象捕获的一个基础问题我用下面代码实现了视频捕获,显示到窗口hWnd_Farther里面,但是发现窗口里

关于视频图象捕获的一个基础问题
我用下面代码实现了视频捕获,显示到窗口hWnd_Farther里面,但是发现窗口里显示速度很慢,很占资源。而且我在窗口里还要输出其他信息(包括文字和图象)都被覆盖掉了。
其实我只想获得视频流,不要在窗口显示捕获到的图象,得到视频缓冲区就够了,我可以在回调函数FrameCallbackProc里面利用缓冲区通过别的方式显示捕获图象。
但是试了很多次都没成功,好象视频捕获就是和视频显示绑定在一起似的,而偏偏capCreateCaptureWindow的视频显示作的又很烂。
总之一句话,我想只进行视频捕获,不要在窗口显示捕获图象,该怎么修改下面代码。
ghWndCap=capCreateCaptureWindow((LPSTR) "Capture   Window ",
                                                  WS_CHILD|WS_VISIBLE,
  0,0,   width,height,
  (HWND)hWnd_Farther,(int)0);
    capDriverConnect(ghWndCap,0);//将捕获窗同驱动器连接
    //获得驱动器的能力,相关的信息放在结构变量gCapDriverCaps中
    capDriverGetCaps(ghWndCap,&gCapDriverCaps,sizeof(CAPDRIVERCAPS));
    capSetCallbackOnError(ghWndCap,(FARPROC)ErrorCallbackProc);
    capSetCallbackOnStatus(ghWndCap,(FARPROC)StatusCallbackProc);
    capSetCallbackOnFrame(ghWndCap,(FARPROC)FrameCallbackProc);
    capPreviewRate(ghWndCap,CapFrameRate);//设置Preview模式的显示速率
    //
    capPreview(ghWndCap,true);//关闭Preview模式

[解决办法]
图像是用directshow画上去的。。。思路错误。
[解决办法]
capCreateCaptureWindow
The capCreateCaptureWindow function creates a capture window.
这个函数本身就是显示视频窗口的。
[解决办法]
要想速度快,并且在上面叠加文字等的话,应该使用Overlay平面来显示。
[解决办法]
不懂 帮顶
[解决办法]
手动去掉Render filter

热点排行