次の方法で共有


IMFTransform::GetOutputStatus メソッド (mftransform.h)

Media Foundation 変換 (MFT) が出力データを生成する準備ができているかどうかを照会します。

構文

HRESULT GetOutputStatus(
  [out] DWORD *pdwFlags
);

パラメーター

[out] pdwFlags

_MFT_OUTPUT_STATUS_FLAGS列挙体のメンバー (ゼロ) を受け取ります。 値が MFT_OUTPUT_STATUS_SAMPLE_READY場合、MFT は出力サンプルを生成できます。

戻り値

このメソッドは HRESULT を返します。 有効な値を次の表に示しますが、これ以外にもあります。

リターン コード 説明
S_OK
メソッドが成功しました。
E_NOTIMPL
実装されていません。
MF_E_TRANSFORM_TYPE_NOT_SET
メディアの種類が 1 つ以上のストリームに設定されていません。

解説

メソッドが MFT_OUTPUT_STATUS_SAMPLE_READY フラグを返す場合は、 IMFTransform::P rocessOutput を呼び出すことで 1 つ以上の出力サンプルを生成できることを意味します。

このメソッドを実装するために MFT は必要ありません。 メソッドが E_NOTIMPLを返す場合は、 ProcessOutput を 呼び出して、変換に出力データがあるかどうかを判断する必要があります。

MFT に複数の出力ストリームがあるが、ストリームごとに同時にサンプルが生成されない場合は、1 つのストリームの準備ができたときに MFT_OUTPUT_STATUS_SAMPLE_READY フラグを設定できます。 ただし、MFT が通常、出力ストリームごとに同時にサンプルを生成する場合は、すべてのストリームの準備が整うまでこのフラグを設定しないでください。

クライアントがすべてのストリームで有効なメディアの種類を設定した後、MFT は常に、より多くの入力を受け入れるか、より多くの出力を生成できるという 2 つの状態のいずれかになります。

mftransform.h を含める前に MFT_UNIQUE_METHOD_NAMES が定義されている場合、このメソッドの名前は MFTGetOutputStatus になります。 「ハイブリッド DMO/MFT オブジェクトの作成」を参照してください。

要件

   
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ | UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー mftransform.h
Library Mfuuid.lib

関連項目

IMFTransform

Media Foundation Transforms