最新の更新情報

2012年2月
« 1月    
 1234
567891011
12131415161718
19202122232425
26272829  

本ブログのURL

qrcode.png

雨雲の動き

お天気

 
 
吟遊詩人の戯言 内専用の記事検索...
 
 

DirectShowをC#で


キーワード(クリックで関連記事が読めます) → ,

関連記事



 
 

2004年11月10日 15時07分 旧ブログより
DirectShowをC#にて、呼び出すためのラッパに追加のコードを入れましょうな話
最近は、こちらを利用してますんで、過去の話ですが...


こんにちわ!
当地は朝から、強雨となっております。

ってことで、C#.NET@VS2003にて仕事しておりまして、
必要に迫られ、DVエンコーダをDirectShowにて接続、
映像表示するシステムなんぞ、突貫で作っております。

んで、MSさん、何を血迷ったのか、DirectX関連のラッパークラスは、ほとんど準備しているみたいなんですが、
なぜかDirectShow周りだけ、ラッパークラスを準備していない(怒)VC++での実装実績はありましたんで、
VCにてDirectShow周りをアクセスするアンマネージDLLを作成して、C#から呼んでやろうかとも考えましたが…

code project内にDirectShowのインタフェースラッパーを発見、必要最低限の実装だけど、なんとなく使えそう(ニヤリッ)
こいつをC#上のプロジェクトから呼んでやりましたが、問題なさそうでしたんで、こいつでシステム、作り上げてやりました。

ただし、DVエンコーダの解像度を切り替えるインタフェースラッパーの実装は、ありませんでしたので、
私が、作りこんでみました。合ってるかどうかは、謎ですが(苦笑)とりあえず、この実装で、問題は出ておりませんです…
必要とされる方は、ご自由にお使いください(もちろん、自己責任でよろしく!)

C#:
  1.   [ComVisible(true), ComImport,
  2.   Guid("b8e8bd60-0bfe-11d0-af91-00aa00b67a42"),
  3.   InterfaceType( ComInterfaceType.InterfaceIsIUnknown )]
  4.   public interface IIPDVDec
  5.   {
  6.     int get_IPDisplay(
  7.       [Out] out int displayPix);
  8.     int put_IPDisplay(
  9.       [In] int displayPix);
  10.   }
  11.  
  12.   public enum DVDECODERRESOLUTION
  13.   {
  14.     DVDECODERRESOLUTION_720x480 = 1000,
  15.     DVDECODERRESOLUTION_360x240 = 1001,
  16.     DVDECODERRESOLUTION_180x120 = 1002,
  17.     DVDECODERRESOLUTION_88x60 = 1003
  18.   }


 んでは、仕事に戻りますぅ~~


 
 
 
 

コメントを残す

  

  

  

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <img localsrc="" alt="">