DirectShowフィルターグラフをシャットダウンするときに、サンプルグラバーフィルターがこれ以上コールバックを生成しないようにする方法は?
-
26-10-2019 - |
質問
DSPACKコンポーネントライブラリを使用して、Delphi 6にDirectshowアプリケーションが書かれています。フィルターグラフをシャットダウンすると(プレイを停止)、コールバックメソッドを所有するオブジェクトが破壊された後にサンプルグラバーディレクターショーフィルターからのコールバックが発生したため、アクセス違反が得られます。それは毎回起こるわけではありませんが、かなり頻繁に起こります。誰かが私に、すべての保留中のサンプルグラバーコールバックが受信または排除されたことを確認する方法でグラフをシャットダウンするために必要な手順を教えてくれるコードサンプルまたはドキュメントを教えてもらえますか?
解決
発行はどうですか ISampleGrabber::SetCallback(NULL, ...
フィルターグラフを停止/リリースする前は?
これについては、終了を示す内部フラグを設定し、さらに処理せずにすぐに返す必要があるコールバックで確認できます。
所属していません StackOverflow