首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > 多媒体 >

关于VFW视频开发不能预览的有关问题

2012-02-23 
关于VFW视频开发不能预览的问题。求救大家好:我用VFW进行视频开发采集,可我怎么视频预览总没有,保存功能则

关于VFW视频开发不能预览的问题。求救
大家好:
  我用VFW进行视频开发采集,可我怎么视频预览总没有,保存功能则可以保存avi文件,文档上说用capPreview(m_hCapWnd,TRUE); // 设置预示方式
  函数就可以预览,可我的窗口总是黑的,什么原因呢??下面是部分代码,盼指点

CWnd *pWnd=AfxGetMainWnd()->GetDlgItem(IDC_VIDEO);//得到预示窗口指针
CRect rect;
pWnd->GetWindowRect(&rect); // 得到窗口大小
m_hCapWnd=capCreateCaptureWindow((LPTSTR)TEXT("视频捕捉测试程序"),
WS_CHILD|WS_VISIBLE|WS_EX_CLIENTEDGE|WS_EX_DLGMODALFRAME,
0,0,320,240,
pWnd->GetSafeHwnd(),0); // 设置预示窗口
ASSERT(m_hCapWnd);

if(capDriverConnect(m_hCapWnd,0))
{
// 连接第0 号驱动器
m_bInit=TRUE;

//得到驱动器的性能
capDriverGetCaps(m_hCapWnd,sizeof(CAPDRIVERCAPS), &m_CapDrvCap);

if(m_CapDrvCap.fCaptureInitialized)
{// 如果初始化成功
capGetStatus(m_hCapWnd, &m_CapStatus,sizeof(m_CapStatus)); // 得到驱动器状态
capPreviewRate(m_hCapWnd,66); // 设置预示帧频
capPreview(m_hCapWnd,TRUE); // 设置预示方式

}
else{// 初始化未成功
AfxMessageBox("视频捕捉卡初始化失败!");
AfxGetMainWnd()->PostMessage(WM_CLOSE);
}
}
else{// 未能连接到驱动器
AfxMessageBox("与视频捕捉卡连接失败!");
//AfxGetMainWnd()->PostMessage(WM_CLOSE);
}

//m_CapFileName="c:\\Capture.avi";// 设置捕获文件
//capFileSetCaptureFile(m_hCapWnd,m_CapFileName.GetBuffer(255));

//*/

return TRUE; // return TRUE unless you set the focus to a control

[解决办法]
你是不是装了摄像头的应用程序?
把它卸掉,只安装驱动试试
我也出现这种问题

[解决办法]
你还是用Directshow做吧,有点含金量,

Directshow可以打开V基于VFW和WDM的摄像头

而且VFW现在已经很不流行了,WDM正在取代它

你不能预览视频,可能就是你的摄像头只支持WDM的,不兼容VFW
[解决办法]
楼上说的有道理

另外我想问下楼主,VFW的视频捕获好捕获吗?

我也写了个,但点击截取按钮后,鼠标总是漏斗状,停止截取点下去后,要等待2,3秒才停下来

楼主你是不是也是这样的?


[解决办法]
忘了说了,我是在VB6下写的

热点排行