DirectShowムービー表示

Posted on Fri 09 November 2007 in DirectX

ただムービを再生するだけだと別ウィンドウで表示されてしまうのでこれをIvideoWindowで操作して子ウィンドウとすれば任意のウィンドウ内でムービーを再生させることができる。

IGraphBuilder::QueryInterface()でIVideoWindowを作れるのだが上手くいかない。。。

IGraphBuilder::RenderFile()の後に
IGraphBuilder::QueryInterface()でIVideoWindowを作らないとダメなようだ。

次に
音は出るが画像は出ない状態に。。。
しかし、タイトルバーをクリックし続けると、表示される。

ムービーは子ウィンドウとして表示されるので、
親ウィンドウとなるウィンドウスタイルに
WS_CLIPCHILDREN
を指定しなければならなかった。 考えてみたら当然だったが・・・

参考リンク
http://www.geekpage.jp/programming/directshow/renderfile.php