IMFDeviceTransform::P rocessInput メソッド (mftransform.h)
ProcessInput メソッドは、この Media Foundation 変換 (MFT) の入力ストリームにデータを配信します。
構文
HRESULT ProcessInput(
[in] DWORD dwInputStreamID,
[in] IMFSample *pSample,
[in] DWORD dwFlags
);
パラメーター
[in] dwInputStreamID
入力ストリーム識別子。
[in] pSample
入力サンプルの IMFSample インターフェイスへのポインター。 サンプルには、有効な入力データを含むメディア バッファーが少なくとも 1 つ含まれている必要があります。
[in] dwFlags
ゼロを指定してください。
戻り値
このメソッドは HRESULT を返します。 使用できる値には、次の表に示す値が含まれますが、これらに限定されません。
リターン コード | 説明 |
---|---|
|
メソッドが成功しました。 |
|
無効な引数が渡されました。 |
|
現時点では、デバイス MFT で要求をサポートできませんでした。 |
|
無効なストリーム ID が渡されました。 |
|
要求されたストリームの切り替えは不可能です。 |
|
入力メディアの種類が設定されていません。 |
注釈
ほとんどの場合、メソッドが成功した場合、MFT はサンプルを格納し、 IMFSample ポインターの参照カウントを保持します。 MFT がサンプルを使用して行われる場合は、メモリ リークを回避するために解放する必要があります。
DTM がすべてのストリームで有効なメディアの種類を設定した後、MFT は常により多くの入力を受け入れ、より多くの出力を生成できる必要があります。
MFT が入力データで致命的でないエラーを検出した場合、単にデータを削除し、より多くの入力データを取得したときに回復を試みることができます。 MFT がデータを削除する場合は、次の出力サンプルで MFSampleExtension_Discontinuity 属性を設定して、データ ストリームにギャップがあることを呼び出し元に通知する必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 Version 1703 |
対象プラットフォーム | Windows |
ヘッダー | mftransform.h |