|
分類:[C/C++]
2009/08/31(Mon) 13:36:59 編集(投稿者) 2009/08/31(Mon) 13:36:42 編集(投稿者)
いつもお世話になっております。 ふくちゃんです。
Microsoft Visual Studio 2005
DirectShowの IMediaControlについてお伺いします。
私が作成したキャプチャアプリなのですが、 ネットワークカメラから動画取得→保存といったソフトです。
OS起動してすぐのアプリ起動一回目については、 正しくIMediaControlのRun()でき、 表示→保存まですんなりとできるのですが、 1度アプリを終了した後、 2度目にアプリを立ち上げると、Runするタイミングで 戻り値がHRESULTの S_FALSEが返ってきてしまいます。
ですので事前にGetState()をして、状態を見てみました。
結果はState_Stopped 停止中 値0が入っており、 S_OKが返ってきますので、 準備ができているように思えます。
そしてやっかいなことにOSを再起動すると、 最初の1度目のみ、成功するといったいやな状態が続いております。
ざっくりとした情報で申し訳ないのですが、 似たような経験はございますでしょうか?
もしくはDirectShowを使用したアプリを作成する際に、 忘れやすい解放忘れなどございましたらご教授願います。
|