ICaptureGraphBuilder::SetOutputFileName メソッド (strmif.h)
[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、および Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayer、IMFMediaEngine、Audio/Video Capture を使用することを強くお勧めします。 Microsoft は、従来の API を使用する既存のコードを、可能であれば新しい API を使用するように書き直すよう提案しています。]
構文
HRESULT SetOutputFileName(
[in] const GUID *pType,
[in] LPCOLESTR lpstrFile,
[out] IBaseFilter **ppf,
[out] IFileSinkFilter **ppSink
);
パラメーター
[in] pType
メディア サブタイプを表す GUID へのポインター。 &MEDIASUBTYPE_Avi
である必要があります。
[in] lpstrFile
出力ファイル名を含むワイド文字列へのポインター。
[out] ppf
マルチプレクサー フィルターを表す IBaseFilter インターフェイスへのポインターのアドレス。 このメソッドは 、IBaseFilter インターフェイスの参照カウントをインクリメントするため、フィルターの使用が完了したら、このパラメーターの Release メソッドを使用して参照カウントをデクリメントする必要があります。
[out] ppSink
ファイル ライターを表す IFileSinkFilter インターフェイスへのポインターのアドレス。 このメソッドは、IFileSinkFilter インターフェイスの参照カウントをインクリメントするため、フィルターを使用して完了したときに Release を使用して参照カウントをデクリメントする必要があります。
戻り値
HRESULT 値を返します。 使用可能な値は次のとおりです。
リターン コード | 説明 |
---|---|
|
失敗しました。 |
|
引数が無効です。 Audio-Video インターリーブ (AVI) は、サポートされている唯一の出力形式です。 |
|
メモリが不足しています。 |
|
NULL ポインター引数。 |
|
Unexpected error occurred. (予期しないエラーが発生しました。) |
|
正常終了しました。 |
|
AVI マルチプレクサー フィルターのインスタンスが正常に作成されました。 |
注釈
このメソッドは、マルチプレクサーとファイル ライターをフィルター グラフに挿入し、 IFileSinkFilter::SetFileName を呼び出して出力ファイル名を設定します。
RenderStream の呼び出しでは、このメソッドによって返される ppf パラメーターを pfRenderer パラメーターとして使用できます。
SetFileName の呼び出しで、このメソッドの pSink パラメーターを使用して、 によって設定されたICaptureGraphBuilder::SetOutputFileName
ファイル名を変更できます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Reference:_Dshowh |
対象プラットフォーム | Windows |
ヘッダー | strmif.h |
[DLL] | Quartz.dll |