void ccvideo::OnBnClickedButton13()
{
// TODO: 在此添加控件通知处理程序代码
BITMAPINFO bi;
capGetVideoFormat(m_hCapWnd,&bi,sizeof(bi));
bi.bmiHeader.biHeight = 480;
bi.bmiHeader.biWidth = 640;
capSetVideoFormat(m_hCapWnd, &bi, sizeof(bi));
return;}换了种还是没反应...
void ccvideo::OnBnClickedButton13()
{
// TODO: 在此添加控件通知处理程序代码
BITMAPINFOHEADER bi;
capGetVideoFormat(m_hCapWnd,&bi,sizeof(bi));
bi.biWidth = 320;
bi.biHeight = 160;
bi.biSizeImage = 0;
capSetVideoFormat(m_hCapWnd, &bi, sizeof(bi));
return;}哪位好心的大大帮忙改下可以用马上给分....最好说出为什么...

解决方案 »

  1.   

    VFW中使用capSetVideoFormat需要注意的//capDlgVideoFormat(m_hCapture);
    capGetVideoFormat(m_hCapture,&bmpInfo,sizeof(BITMAPINFO));TRACE("get width=%d\n",bmpInfo.bmiHeader.biWidth);
    TRACE("get biHeight=%d\n",bmpInfo.bmiHeader.biHeight);
    TRACE("get biBitCount=%d\n",bmpInfo.bmiHeader.biBitCount);
    TRACE("get biSize=%d\n",bmpInfo.bmiHeader.biSize);
    TRACE("get biSizeImage=%d\n",bmpInfo.bmiHeader.biSizeImage);//设置
    bmpInfo.bmiHeader.biWidth=g_iWidth;
    bmpInfo.bmiHeader.biHeight=g_iHeight;
    //bmpInfo.bmiHeader.biBitCount=g_iBits;
    //bmpInfo.bmiHeader.biSizeImage=g_iWidth*g_iHeight*g_iBits;
    ghVideo=m_hCapture;//写入
    if(!capSetVideoFormat(m_hCapture,&bmpInfo,sizeof(BITMAPINFO)))
    {
       MessageBox("capSetVideoFormat False!");
    }需要注意以下两点:1. 要看你得摄像头支不支持你所设的分辨率。2. bmpInfo的参数要设对,最好只改宽和高!
      

  2.   


    void ccvideo::OnBnClickedButton13()
    {
    // TODO: 在此添加控件通知处理程序代码capGetVideoFormat(m_hCapWnd,&bi,sizeof(bi));
    bi.biWidth = 320;
    bi.biHeight = 240;
    bi.biSizeImage = 0;
    if(!capSetVideoFormat(m_hCapWnd, &bi, sizeof(bi)))
    MessageBox("不支持的分辨率");
    return;}果然是不支持的分辨率 ......
    那请问如何得到可支持的分辨率呢....