2011-02-08 44 views
0

いいえ私はこの3d tv変換フィルタを持っています。 GraphEditを使ってそのプロパティを簡単に設定できます。プロパティを右クリックして、必要なものを設定します。DirectShowフィルタのプロパティを設定するには

これで、C++でフィルタグラフを作成してプロパティを自動的に設定したいと考えています。 私はWindows SDKのドキュメントを読んで、IKsPropertySet関数を使用しなければならないことを知りました。

IKsPropertySet :: QuerySupportedを使用して、この種類のプロパティがサポートされているかどうかをチェックする必要があります。そして、それを行うには、私は、プロパティセット内のプロパティの

dwPropID

[中]識別子を知っている必要があります。

しかし、どのようにしてそのIDを取得できますか?このフィルタのように、水平と垂直を調整するプロパティがありますが、私はそのプロパティのIDを見つけることができません。

フィルタでサポートされているすべてのプロパティIDをリストしてもよろしいですか?

+0

はhttp://stackoverflow.com/questions/14050074/how-to-change-directshow-filter-properties-c – rogerdpack

答えて

1

ダイレクトショーフィルタの機能は、通常、インターフェイスを通じて公開されます。標準のDirectShowインタフェース、またはカスタムインタフェース。 COMオブジェクト(おそらくあなたのフィルタですが、それはピンの1つでもあります)でQueryInterfaceを呼び出すことによって、インターフェイスを取得します。フィルタがどのような種類のインタフェースを公開するかは、おそらくフィルタのドキュメントで説明されています。

コーディングに飛び込む前に、directshowとCOMに関するいくつかの情報を見てみてください。 HereあなたはDirecShowについての情報を見つけるでしょう。 hereにはCOMについての情報があります。

これを.netで行う予定の場合は、directshownetを検索してみてください。これは、マネージコードで使用するためのDirectShow APIをラップするオープンソースプロジェクトです。

-Svein

+0

おそらく3DTVTransformationインタフェースも参照してください? – rogerdpack