METransformHaveOutput
METransformHaveOutput イベントは、デバイス変換の出力ストリームのいずれかでサンプルの準備が整っていることを示します。
送信日時
Devproxy またはデバイス MFT は、Device Transform Manager (DTM) によって取得した出力ストリームでサンプルが準備できたときに、このイベントを発生させます。
Devproxy が METransformHaveOutput を発生させると、DTM は Devproxy で ProcessOutput を呼び出します。 得られたサンプルは、デバイス MFT の対応する入力に供給されます。
デバイス MFT が METransformHaveOutput を発生させると、DTM はイベントをデバイス ソースに中継します。 デバイス ソースは、デバイス MFT にルーティングされる Device Transform Manager のプロセス出力を呼び出します。 したがって、サンプルはデバイス ソースによって取得され、メディア パイプラインに入ります。
パラメーター
ありません。
解説
デバイス MFT は、MFT_OUTPUT_DATA_BUFFER 構造体の出力ストリーム数の合計を配列で受け取ります。 構造体のメンバーには、適切な値を入力することが想定されています。 DTM がデバイス MFT にコールバックしてサンプルを取得する前に、METransformHaveOutput メッセージに応答し、別のストリームで別のサンプルが使用可能になった場合、Device MFT はこの ProcessOutput 呼び出しで先にサンプルを送信します。 DTM は ProcessOutput を再度呼び出しますが、その時点でサンプルがない場合、デバイス MFT はサンプルなしで呼び出しを返す場合があります。
詳細については、「IMFDeviceTransform::ProcessOutput」を参照してください。