视频会议的视频如何固定在一个位置上?
我下载了一个视频会议管理系统源码,觉得不错。但里面的视频窗口是游离于软件界面之外的,我想把它固定在一个位置,怎么做?另,如果多人不够显示时,如何视频轮换?谢谢!!
源码下载
http://www.115studio.com/download/vis_h323_dll_2.6r.zip
[解决办法]
代码没看,要是通用的视频采集代码,应该是基于DirectShow的,如果猜得没错,你所说的游离窗口,应该是ActiveMovie创建的窗口,这个问题你可参考amcap,DXSDK中有源码,具体实现用到IVideoWindow接口
IFilterGraph *pGraph;
// ... 创建graph
// ...
IVideoWindow *pvw = NULL;
hr = pGraph-> QueryInterface(IID_IVideoWindow, (void **)&pvw);
if(hr == NOERROR)
{
RECT rc;
pvw-> put_Owner((OAHWND)owner/*handle of parent window*/);
pvw-> put_WindowStyle(WS_CHILD); // you are now a child
// 确实显示区域: rc
pvw-> SetWindowPosition(0, 0, rc.right, rc.bottom);
pvw-> put_Visible(OATRUE);
}
[解决办法]
CVideoWnd:直接调用drawdibdraw来显示视频数据,直接CVideoWnd-> MoveWindow