📄 subject_56624.htm
字号:
<p>
序号:56624 发表者:zhangfeng 发表日期:2003-10-19 15:33:42
<br>主题:菜鸟问题:我copy了一段directshow的代码,然后为什么不能播放出图象来,只有声音,而且是死循环的。
<br>内容:代码片段<BR>HRESULT DShow::Play(IDirectDrawSurface *pSurface, IMultiMediaStream *pMMStream)<BR>{<BR> IMediaStream *pPrimaryVidStream; <BR>IDirectDrawMediaStream *pDDStream; <BR>IDirectDrawStreamSample *pSample; <BR>RECT rect; <BR>DDSURFACEDESC ddsd; <BR><BR>pMMStream->GetMediaStream(MSPID_PrimaryVideo, &pPrimaryVidStream); <BR>pPrimaryVidStream->QueryInterface(IID_IDirectDrawMediaStream, (void **) <BR>&pDDStream); <BR>ddsd.dwSize = sizeof(ddsd); <BR>pDDStream->GetFormat(&ddsd, NULL, NULL, NULL); <BR><BR>rect.top =100; <BR>rect.left =150; <BR>rect.bottom = ddsd.dwHeight+100; <BR>rect.right = ddsd.dwWidth+150; <BR><BR>pDDStream->CreateSample(pSurface, &rect, 0, &pSample); <BR>pMMStream->SetState(STREAMSTATE_RUN); <BR><BR>while (pSample->Update(0, NULL, NULL, NULL) == S_OK); <BR>//就是在这里死住了!<BR><BR>pMMStream->SetState(STREAMSTATE_STOP); <BR>pSample->Release(); <BR>pDDStream->Release(); <BR>pPrimaryVidStream->Release(); <BR><BR> return E_NOTIMPL;<BR>}<BR>还有,就是关于播放不出图象来的,是不是在directdraw中的<BR>if(FAILED(r=pDD->SetCooperativeLevel(hwnd, <BR>DDSCL_EXCLUSIVE|DDSCL_FULLSCREEN))) <BR>我不知道怎么样获得个对话框的hwnd,然后我就将第一个参数写了null。<BR><BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:hua_soft 回复日期:2003-12-24 09:39:12
<br>内容:你可以先定义一个全局的HWND 变量,在对话框的初始化过程中把this->m_hWnd的值赋给它
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -