在视频会议的开发工作中,可能会遇到动态调整摄像头捕捉分辨率的问题,
利用winvfw库的时候,如果将相关的代码与某个按钮相联系,也就是由按钮激发相关的
动态调整代码,可以实现此目的。伪码如下:
{
CaptureAbort();
SetFormat(width,height);
reCapture();
}
但是如果是在程序的某块代码中根据环境的变化,自动激发这块代码,基本不会成功。
原因可能在于vfw库没有接受此代码的调整要求。针对此种情况,我们可以采用激活新线程的
的方法,在此线程中对不同的捕捉状态进行判定,然后进行相关的操作调整,便可以成功的
实现我们的目的,伪码如下:
SetFormatProc()
{
CaptureStop();
while(isCapturing())
{
Sleep(100);
}
SetFormat(width,height);
while(!isCapturing())
{
CaptureStop();
reCapture();
}
return 0;
}
<script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>
本文介绍在视频会议开发中,如何使用winvfw库通过按钮触发和线程方式动态调整摄像头捕捉分辨率。通过按钮触发的方式较为直接,而通过线程则能更好地适应环境变化。
1628

被折叠的 条评论
为什么被折叠?



