vb中可以调整摄像头分辨率吗
是这样的: 按照摄像头默认分辨率的话,它的尺寸不能满足占满我的软件窗口的需要,这样显得也不美观,而且现在摄像头分辨率都挺高,我想希望在vb中改变分辨率大小,也就是摄像在软件窗口显示的区域尺寸,好像听说过有万能调节摄像头分辨率的软件。想请教下朋友可否实现呢?
[解决办法]
可以设置的,就说说VFW方式访问摄像头吧,因为VB用不了DirectShow来访问,
所以就不说DirectShow的了。
下面是我博客中的一个使用VFW访问摄像头的VC程序范例
http://blog.csdn.net/SupermanKing/archive/2008/11/02/3207341.aspx
当然,范例中没有设置分辨率,但是可以参考一下代码好说明如何设置分辨率,看下面这样
加一段代码来实现:
- C/C++ code
... if(rd != 0){ CAPDRIVERCAPS *Caps; capDriverGetCaps(AVIhWnd,sizeof(CAPDRIVERCAPS),&Caps); //----------- 在这里加上分辨率设置的过程 ----------- BITMAPINFOHEADER bmpFormat; //定义BITMAPINFOHEADER结构的变量 capGetVideoFormatSize(AVIhWnd); capGetVideoFormat(AVIhWnd,&bmpFormat,sizeof(BITMAPINFO)); //取得当前的图像信息 bmpFormat.biWidth=640; //重新设置图像宽度 bmpFormat.biHeight=480; //重新设置图像高度 capSetVideoFormat(AVIhWnd,&bmpFormat,sizeof(BITMAPINFO)); //设置视频格式 //---------------- 设置分辨率完成 ------------------ capPreviewRate(AVIhWnd, 30); }else{ MessageBox(hWnd, "不能打开设备驱动。","提示",64); }...