DirectShowサンプル

DirectShowのサンプルをダウンロードしようとして、DirectX SDK をダウンロードしたら「DirectShowのサンプルは古いSDKを見てね」ってことになっていました。なんじゃぁ?と思うと、DirectX の .NET 版も廃止。

というか、.NET版のDirectXは、XNA http://msdn.microsoft.com/ja-jp/xna/default.aspx に統合(?)されています。

XNA Game Studio 3.0 をダウンロードすると、Visual Studio 2005/2008で XNA のプロジェクトが作成できます。
XNA が何かと簡単に言えば、Xbox360のゲームを作るSDKなのですが、PCのゲームも作れます。というか、ゲーム関係のAPIが揃っています。当然、DirectX関係がごっそり入っているので、このSDKを使えば通常のアプリで作るのも問題ない、と思うのですが(多分)。ただ、普通のWindowsアプリケーションのUIならば、WPFの方が楽だろうなぁ、やっぱり。

20090612_01

プロジェクトを作って、ビルドをしてみたが、何をしていいものやら・・・。

 

さて、旧DirectXのSDKを落として来て、解凍します。
http://www.microsoft.com/downloads/en/resultsForCategory.aspx?nr=50&sortOrder=Ascending&sortCriteria=Popularity&categoryId=2&stype=ss_pd&sterm=DirectX

DirectX 9.0c Redistributable for Software Developers
http://www.microsoft.com/downloads/details.aspx?FamilyID=03c30962-4b78-4e59-8c70-32998dceffe5&DisplayLang=en

MSDN サブスクリプションからダウンロードしてきたので、上記のものと違いますが、多分大丈夫なはず。

この中にある

C:\dx9sdk\Samples\C++\DirectShow\Capture\AMCap\

が、WEBカメラの表示になります。。。って、このサンプルはELECOMのドライバに同封されていたものと全く同じ。な~んだ。
以下、雑談

旧式のPDAの場合、フラッシュプレイヤーや新しいストリーミングのフォーマットに対応していないわけですが、考えてみたら PC のほうにプロキシを立ててやって、内部でPDAで表示できるように変換させればよいのでした。
つまりは、

– 非力なPDAに無用なエンコーディングをさせない。
– PDAをサブ画面として使う。
– PDAとPCは無線LANかBluetoothで繋ぐ。

ということができればOK。あと、

– サブ画面(PDA)への操作は、タッチパネル以外の操作は行わない。
– キーボード操作が必要であれば、別途PCで操作する。
– PDA に nanoHTTP を入れ込む。

とする。

例えば、ニコニコ動画を見るためには最新の Flash Player が必要なのですが、旧式のPDAでは対応できない。ポーティングしてもよいが、手間も時間も掛かるし、第一 CPU が貧弱なのでエンコード等に PDA が耐えられない。また、ニコニコ動画のコメント機能を PDA から入力するとは考えにくい。主に閲覧に特化するだろう。そうであれば、Flash 形式ではなくて、PDA が扱える wmv 形式のストリーミングで流してやればよい。エンコードに時間がかかるよりも、読み捨てのストリーミングにして無線LANかBluetoothへの負荷を増やしたほうがよいだろう。

同様な方法は、twitter の閲覧ソフトを PDA で作るときにも言える(と思う)。twitterへの返信/問い掛けはPCでキーボードを打つほうがよい。あるいは、携帯電話か Android の形式の入力を考えたほうがよい。というか、PCのサブ画面としてPDAを使うのだから、PCのキーボードで打つほうが早い。つまり、PDA で twitter などを流す。ニュースサイトでも何でもよい。そして、PCでコメントする。この間のPDAとPCの連携を考えたほうがよい。PCではキーボード=入力担当で、PDAでは閲覧担当とか。マウスでPDAの画面を操作するようなミニ画面がPCで出る、あるいは、直接マウスでPDAの画面を操作する、あるいは、PDAを直接タッチするとか。タッチした情報は、PCに送られて該当するコメントが開かれる、とか。

今思い出したけど、これは SideShow http://trendy.nikkeibp.co.jp/article/rev/20070322/121308/ だったり。

カテゴリー: 開発 パーマリンク