IMFSinkWriter::Finalize メソッド (mfreadwrite.h)
シンク ライターに対するすべての書き込み操作を完了します。
構文
HRESULT Finalize();
戻り値
このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。
注釈
すべての入力サンプルをシンク ライターに送信した後、このメソッドを呼び出します。 メソッドは、メディア シンクから最終的な出力を作成するために必要な操作を実行します。
シンク ライターの作成時にコールバック インターフェイスを指定すると、このメソッドは非同期的に完了します。 操作が完了すると、コールバックの IMFSinkWriterCallback::OnFinalize メソッドが呼び出されます。 詳細については、「 MF_SINK_WRITER_ASYNC_CALLBACK」を参照してください。 それ以外の場合、コールバックを指定しない場合、 Finalize メソッドは操作が完了するまでブロックします。
内部的には、このメソッドは IMFStreamSink::P laceMarker を呼び出して、メディア シンク上の各ストリームのセグメント終了マーカーを配置します。 また、メディア シンクが IMFFinalizableMediaSink インターフェイスをサポートしている場合は、IMFFinalizableMediaSink::BeginFinalize と EndFinalize も呼び出します。
このメソッドが呼び出されると、次のメソッドは失敗します。
Finalize を呼び出さない場合、メディア シンクからの出力が不完全または無効である可能性があります。 たとえば、出力ファイルに必要なファイル ヘッダーがない可能性があります。このインターフェイスは、Windows Vista のプラットフォーム更新プログラムの補足情報がインストールされている場合、Windows Vista で使用できます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista 用 Windows 7、Windows Vista およびプラットフォーム更新プログラムの補足 [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリ |UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | mfreadwrite.h |