directshow显示两个窗口 我想把视频显示在两个窗口该怎么做?一个显示窗口就是把IVideoWindow 指针和graph绑定,两个窗口就不知这么弄了,两个窗口句柄这么和graph的指定的rengder Filter对应? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Infinite Pin Tee Filter. 不行,我分了两个流,其中设置窗口函数如下:bool CGraphUtility::SetDisplayWindow(CWnd * pWnd){ m_pParentWnd=pWnd; HRESULT hr = m_pGraph->QueryInterface(IID_IVideoWindow, (void **)&pVideoWindow); if (pVideoWindow) { pVideoWindow->put_Visible(OAFALSE); pVideoWindow->put_Owner((OAHWND)pWnd->m_hWnd); RECT windowRect; ::GetClientRect(pWnd->m_hWnd, &windowRect); pVideoWindow->put_Left(0); pVideoWindow->put_Top(0); pVideoWindow->put_Width(windowRect.right - windowRect.left); pVideoWindow->put_Height(windowRect.bottom - windowRect.top); pVideoWindow->put_WindowStyle(WS_CHILD|WS_CLIPCHILDREN|WS_CLIPSIBLINGS); pVideoWindow->SetWindowPosition(0,0,windowRect.right - windowRect.left,windowRect.bottom - windowRect.top); pVideoWindow->put_MessageDrain((OAHWND) pWnd->m_hWnd); if (pWnd->m_hWnd != NULL) { pVideoWindow->put_Visible(OATRUE); } else { pVideoWindow->put_Visible(OAFALSE); } pVideoWindow->Release(); pVideoWindow=NULL; return true; } return false;}我创建graph的时候调用了两次SetDisplayWindow,传的参数分别是两个窗口的句柄,但运行时只有一个窗口中有视频,另外窗口没有。而且会弹出dshow自带的那个视频窗口。也就是说只有一个窗口与视频绑定成功了,另外一个视频流使用的dshow自带的视频窗口。 VC里如何不打开 pdf文件, 而直接打印 怎么用VC 修改/删除 webbrowser控件中 当前网页的cookie 图像格式转换? 多重继承的疑惑?!(Multi Inherit) 简单的问题,望点拨 超级白痴: 如何在VC里调用Oracle中的存储过程?(在线求救!!!) 为何创建出来的线程指针是NULL 谁有COM技术内幕源代码,发一个给我,万分感谢!(20分) 为什么会有这个错误? 我买到喉结的《Win32多线程程序设计》了!!! 外部extern const声明常量不能定义数组下标!? CODE128怎么生成打印?
我分了两个流,其中设置窗口函数如下:
bool CGraphUtility::SetDisplayWindow(CWnd * pWnd)
{
m_pParentWnd=pWnd;
HRESULT hr = m_pGraph->QueryInterface(IID_IVideoWindow, (void **)&pVideoWindow);
if (pVideoWindow)
{
pVideoWindow->put_Visible(OAFALSE);
pVideoWindow->put_Owner((OAHWND)pWnd->m_hWnd); RECT windowRect;
::GetClientRect(pWnd->m_hWnd, &windowRect);
pVideoWindow->put_Left(0);
pVideoWindow->put_Top(0);
pVideoWindow->put_Width(windowRect.right - windowRect.left);
pVideoWindow->put_Height(windowRect.bottom - windowRect.top);
pVideoWindow->put_WindowStyle(WS_CHILD|WS_CLIPCHILDREN|WS_CLIPSIBLINGS);
pVideoWindow->SetWindowPosition(0,0,windowRect.right - windowRect.left,windowRect.bottom - windowRect.top);
pVideoWindow->put_MessageDrain((OAHWND) pWnd->m_hWnd);
if (pWnd->m_hWnd != NULL)
{
pVideoWindow->put_Visible(OATRUE);
}
else
{
pVideoWindow->put_Visible(OAFALSE);
}
pVideoWindow->Release();
pVideoWindow=NULL;
return true;
}
return false;
}
我创建graph的时候调用了两次SetDisplayWindow,传的参数分别是两个窗口的句柄,但运行时只有一个窗口中有视频,另外窗口没有。而且会弹出dshow自带的那个视频窗口。也就是说只有一个窗口与视频绑定成功了,另外一个视频流使用的dshow自带的视频窗口。