次の方法で共有


IFileSinkFilter2 インターフェイス

IFileSinkFilter2 インターフェイスは IFileSinkFilter インターフェイスから派生し、このインターフェイスに置き換わるものである。IFileSinkFilter 同様、メディア ストリームをファイルに書き込むフィルタでは、このインターフェイスを実装する。たとえば、ビデオ キャプチャ用フィルタ グラフのファイル シンク フィルタは、圧縮フィルタの出力をファイルに保存する。通常、このフィルタ グラフを実行するアプリケーションでは、ユーザーが保存先のファイル名を入力できなければならない。このインターフェイスを使うと、その情報をやり取りできる。IFileSinkFilter2 には、既に同じ名前のファイルがある場合に既存ファイルを破棄すべきかどうかを決定するオプションが加わっている。ビデオ キャプチャの場合、ファイル容量を事前に割り当てるには時間がかかるため、既に作成したファイルを破棄しないこと。デフォルトでは、元のファイルは破棄されない。それ以外の場合、新しく書き込むファイルに不要なデータを残さないため、元のファイルが破棄される。

出力ファイル名を必要とするフィルタ、または出力ファイルのオプションを設定する必要があるフィルタでは、このインターフェイスを実装しなければならない。開発するフィルタと ActiveMovie 1.0 との互換性を保つには、従来の IFileSinkFilter インターフェイスを実装する。現在、このインターフェイスを実装する基底クラスはない。

ファイル シンク フィルタの出力先ファイル名を設定する必要があるアプリケーションでは、このインターフェイスを使って、ファイル名を取得および設定するか、またはオプションを変更しなければならない。開発するアプリケーションと ActiveMovie 1.0 との互換性を保つには、従来の IFileSinkFilter インターフェイスを使うこと。

IFileSinkFilter インターフェイスは、IFileSinkFilter から継承するメソッド以外に以下のメソッドも公開する。

メソッド 説明
SetMode 新規ファイルの作成時にファイル ライタがファイルを破棄するかどうかを決定する。
GetMode 新規ファイルの作成時にファイル ライタがファイルを破棄するかどうかを取得する。