如何改变摄像头(视频图像)的大小????????????????????

honghong2 2006-12-20 06:01:02
如何更改(摄像头取像)动态图像的默认高宽(默认是320*240)啊。我这么设置可是没有效果。。
我这样写代码,可是没有更改设置。

'下面这些我放在状态回调函数里的。
'info是个CapStatus结构
SendMessage ihwnd, WM_CAP_GET_STATUS, Len(info), VarPtr(info)
info.uiImageWidth = 640
info.uiImageHeight = 480
SetWindowPos ihwnd, HWND_BOTTOM, 0, 0, _
info.uiImageWidth, _
info.uiImageHeight, _
SWP_NOMOVE Or SWP_NOZORDER
...全文
1221 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
honghong2 2006-12-25
  • 打赏
  • 举报
回复
to:VirtualDesktop(吴滂:欢迎到我的Blog转转 ^_^)
谢谢,你说的这个bmi.biSizeImage在信息头里设置是不太重要的,在信息头里最重要的是高宽设置好了图像就能正常显示,而biSizeImage的大小是无关紧要的。因为我测试了很多次,然后发现了这个现像。


谢谢大家。问题以解决,我的代码设置是没有错,只是放的位置不应该在回调函数里。应该放在连接摄像头的后面。呵呵。
VirtualDesktop 2006-12-24
  • 打赏
  • 举报
回复
bmi.biSizeImage = 57600也要设置
具体这个数是多少,你要打开一个摄像头手动调到你需要的大小
然后获取这个值
honghong2 2006-12-21
  • 打赏
  • 举报
回复
我解决了一个问题,就是一楼的代码我能实现了。因为我没有打开分辩率设置,但是我内存得图片大小还是原始大小,没有改变,就是我如何改变dim m_bmpinfo as BITMAPINFO结构里的m_bmpinfo.bmiHeader.biwidth宽和m_bmpinfo.bmiHeader.biheight高呢????

我是按下面这样来改变格式,可是还是没有改变啊??为什么???

SendMessage ihwnd, WM_CAP_GET_VIDEOFORMAT, dword, VarPtr(m_bmpinfo) '获得当前的视频格式
m_bmpinfo.bmiHeader.biwidth = 640
m_bmpinfo.bmiHeader.biheight = 480
SendMessage oldPic.hWnd, WM_CAP_SET_VIDEOFORMAT, dword, VarPtr(m_bmpinfo) '发送当前的视频格式
honghong2 2006-12-20
  • 打赏
  • 举报
回复
我现在是改变不了厂家设置的默认大小,从摄像头取到picture上是320*240的高宽,但我要设置成640*480的高宽。
cangwu_lee 2006-12-20
  • 打赏
  • 举报
回复
你现在是碰到什么问题?


--------------------------------------------------------------
程序,犹如人生。

809

社区成员

发帖
与我相关
我的任务
社区描述
VB 多媒体
社区管理员
  • 多媒体
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧