DirectShow 自作フィルタ(dll内)の宣言内容を知るには?

解決


ひめ  2006-12-28 04:36:32  No: 64107

よろしくお願いします

USBカメラからmpegファイルに画像を保存するプログラムを作成しています
GraphEditを使用して、フィルター接続をして、mpegファイルに画像を保存する事は成功しました。
これを、VCから行なうプログラムを作成したいのですが、フィルターのインスタンスを作成する段階で、フィルターのCLSID名が分かりません。

CoCreateInstance( "ココに記述する方法がわかりません" );

dllに記述してある、CLSID名を取得する方法、又は宣言している内容を得る方法がありましたら御教授頂けないでしょうか。

最近Windowsプログラムをはじめたので、何を知ってよいか分からず、正直dllすら何やらと言った感じです。。。


シャノン  2006-12-29 00:46:01  No: 64108

フィルタはあなたが作ったのですか?  どのように?


超初心者  2006-12-29 03:44:45  No: 64109

CLSID_NullRendererとかならSDKとかのヘッダファイルを探せば見つかるよ。
実際の値はライブラリにあるのでリンクしないとリンクエラーになるけどね。

それ以外のはGraphEditから判るよ。
フィルタ選んでいるなら一覧に表示されるし
自動で選ばれたフィルタならプログラムからも自動で選ばせることできるし
GraphEditでセーブしたファイルにも書かれている。


ひめ  2007-01-02 19:07:02  No: 64110

迎春

返信が遅れて申し訳ありません

>シャノン様へ
フィルタはGraphEditで、選択されるフィルタです
質問方法がよくありませんでした
GraphEditで選択できるフィルタを呼び出したいのです・・・
それって、私の根本的な解釈が間違っているのでしょうか?

>超初心者様
GraphEditでフィルタを選択してピンを繋げて、画像をファイルセーブする事はでたのですが、コレをプログラムで行ないたいのです。。。
GraphEditでセーブした.GRFファイルのソースって見れるのでしょうか?

すいません、本当に何が判らなくてはいけないのかを、今は勉強しています
お時間がありましたら、もう少しお付き合い下さい
よろしくお願い致します


超初心者  2007-01-02 21:42:38  No: 64111

酷似した発言を発見
http://forums.belution.com/ja/vc/000/387/55.shtml

ただCLSIDを知りたいだけだったらメモ帳で見りゃいいじゃん


シャノン  2007-01-02 23:36:33  No: 64112

#新年初投稿。

タイトルが「自作フィルタ」となっていたので、「自分で作ったフィルタなのに CLSID がわからないなんてことあるの?  ひょっとして MFC とか ATL とか使って作るとわからないんだろうか?」と思って、先のような質問をしました。
フィルタはあなたが作ったものではないのですね?

あと、わからないフィルタってどれでしょう?
ソース?  中間?  出力?  あるいは全部?
CoCreateInstance で作る必要があるものも、そうでないものもありますから。


ひめ  2007-01-03 00:40:39  No: 64113

シャノン様

返信ありがとうございます
題名がよくありませんでした・・・申し訳ありません。

GraphEditで作れるグラフは、プログラムで実現可能という認識でいます
例えば、私のPCには、"ATI MPEG Video Encorder"というフィルターが
GraphEditより確認でき、コレを使用するとUSBカメラの画像をMPEGファイル
に保存する事ができます。
これを、GraphEditではなく、プログラムから書きたいと思ってます
実際に使用するフィルターはコレだけではないので、CoCreateInstanceで
作る場合と、作らない場合の両方を御教授頂けたら幸いです

超初心者様

返信ありがとうございます

メモ帖で見ましたが、よくわかりませんでした
そもそも、「このフィルターを使いたい」っていうような指定は行なわないのでしょうか?

まだまだ、先は長いです。。。


ひめ  2007-01-12 01:22:22  No: 64114

自己解決いたしました

読みにくいですが、CLSIDが確かにありました
皆様、ありがとうございました


ひめ  2007-01-12 01:23:18  No: 64115

解決チェックを忘れました。。。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加