网络接收,Directshow 预览窗口像死机一样无响应,但视频音频正常
按照《directshow 实务精选》完成了网络发送和接收的Filter,然后写了一个服务器程序和一个客户端程序,服务器构造接收filter接收媒体数据并在对话框窗口上显示,客户端构造发送filter发送媒体数据,IP地址使用127.0.0.1这个本地回环地址。
服务器端的链路是:网络接收filter-->Smar Tee-->AVIDec-->Colour-->VideoRenderer,然后把服务器对话框窗口设为预览窗口。
先运行服务器程序并点击“接收媒体数据”按钮,再运行客户端程序并点击“发送媒体数据”按钮,此时不要在服务器窗口上做任何操作,可以看到视频显示很正常,声音传送正常,然后,尝试用鼠标拖动服务器窗口,这时服务器窗口整个就像死机一样动不了,无法移动,也不能做任何操作,就连关闭按钮都无法操作,但现在那个视频音频还是正常的,能看到视频在变化,声音传送也正确,就是这个服务器窗口无法操作,实在是郁闷死了,纠结了几天了,请高手指点,万分感谢!
下面网址是我的VC2008项目代码,请高手运行看看.
http://download.csdn.net/detail/huangyinghua/6247337
[解决办法]
m_pVideoWindow->put_Visible(OAFALSE);
m_pVideoWindow->put_Owner((OAHWND)hWindow);
m_pVideoWindow->put_WindowStyle(WS_CHILD
[解决办法]
WS_CLIPCHILDREN
[解决办法]
WS_CLIPSIBLINGS);
m_pVideoWindow->put_MessageDrain((OAHWND)hMsgDrainWnd);
[解决办法]
let dlg creat graph