ダウンロード ソースコード (7.4 KB)
ダウンロード 機能強化版バイナリファイル (27.6 KB)
本稿では、DirectShowと透明なウィンドウを組み合わせる事により、透明なウィンドウでビデオ再生を行う方法を解説します。
はじめに
簡易にストリームデータを取り出す事ができるDirectShowを利用する事により、取得したフレーム画像をリアルタイムでGDI描画に利用する事ができます。
今回はこの機能をWindows2000、XPの透明なウィンドウと組み合わせてみます。
対象読者
C++のコードを使える事とWINAPIをある程度理解している必要があります。それと、かじった事がある程度でいいのですが、DirectShowを使った事が前提となります。
DirectShowについては、次のサイトが一番参考になると思います。
- Geekなぺーじの
- MSDNライブラリの
必要な環境
とりあえず、Windows 2000(未検証)またはWindows XP(検証済)上でしか動きません。ですが、ウィンドウを透明にしたいと思わない場合はその限りではありません。
制作にはPlatformSDKが必要になります。ヘッダ、ライブラリはパスを通しリンクして下さい。
また、再生するビデオデータは何でも良いわけではありません。とりあえず、MPEG1、WMV辺りは再生できるのですが、AVIはコーデックとの相性により音だけしか出ない場合があります。また、通常に再生できてもこのプログラムでは再生できないと言う場合もあります。他のソースでの再生テストをお願いします。
この記事は参考になりましたか?
- この記事の著者
-
利都(りと)
陸奥でプログラムをしている学生。LOGOからVB6.0へ。現在は主にC系言語を利用。Atelier BlueにてManaged DirectXについてのTipsを書いている。http://www.atelier-blue.com/IL(CIL,MSIL)もしているのでそちらに興味がある方もどうぞ。Manag...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
