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エンコーダの解像度を切り替えるインタフェースラッパーの実装は、ありませんでしたので、
私が、作りこんでみました。合ってるかどうかは、謎ですが(苦笑)とりあえず、この実装で、問題は出ておりませんです…
必要とされる方は、ご自由にお使いください(もちろん、自己責任でよろしく!)
[ComVisible(true), ComImport, Guid("b8e8bd60-0bfe-11d0-af91-00aa00b67a42"), InterfaceType( ComInterfaceType.InterfaceIsIUnknown )] public interface IIPDVDec { int get_IPDisplay( [Out] out int displayPix); int put_IPDisplay( [In] int displayPix); } public enum DVDECODERRESOLUTION { DVDECODERRESOLUTION_720x480 = 1000, DVDECODERRESOLUTION_360x240 = 1001, DVDECODERRESOLUTION_180x120 = 1002, DVDECODERRESOLUTION_88x60 = 1003 }んでは、仕事に戻りますぅ~~
関連記事
- 【C++】CPPで鬼のような実装を行った!動いた!!キタ――(゚∀゚)――!! 【2020年09月29日(火)】
- 昨日はC#で4000行,今日はC++で300行 【2020年08月25日(火)】
- 【#Xamarin】ファイルの読み書き出来た!「PCL Storage」&「NetStandard Storage」 【2018年12月22日(土)】
- 【#Xamarin】弊社ライブラリを移植作業中 【2018年12月21日(金)】
- C#での自PC内プロセス間通信(WCF版:Windowsサービスにて実装) 【2018年08月06日(月)】
コメント
続く原酒不足 国産ウイスキー
今日から数日,雨っぽい
【#新型コロナウイルス】コロナ、新型インフルと同分類へ
【#新型コロナウイルス】宮崎:自宅療養者が246人(21/1/12)
すんごい不安感に襲われており
【#アメリカ大統領選】抗議デモのトランプ支持者らが米議会に乱入
【#新型コロナウイルス】宮崎:100人超の感染確認(21/1/7)
【#新型コロナウイルス】宮崎:80人の感染確認(21/1/6)