IMFTransform::GetOutputStatus method (mftransform.h)

Queries whether the Media Foundation transform (MFT) is ready to produce output data.


HRESULT GetOutputStatus(
  [out] DWORD *pdwFlags


[out] pdwFlags

Receives a member of the _MFT_OUTPUT_STATUS_FLAGS enumeration, or zero. If the value is MFT_OUTPUT_STATUS_SAMPLE_READY, the MFT can produce an output sample.

Return value

The method returns an HRESULT. Possible values include, but are not limited to, those in the following table.

Return code Description
The method succeeded.
Not implemented.
The media type is not set on one or more streams.


If the method returns the MFT_OUTPUT_STATUS_SAMPLE_READY flag, it means you can generate one or more output samples by calling IMFTransform::ProcessOutput.

MFTs are not required to implement this method. If the method returns E_NOTIMPL, you must call ProcessOutput to determine whether the transform has output data.

If the MFT has more than one output stream, but it does not produce samples at the same time for each stream, it can set the MFT_OUTPUT_STATUS_SAMPLE_READY flag when just one stream is ready. However, if the MFT normally produces samples at the same time for each output stream, it should not set this flag until all streams are ready.

After the client has set valid media types on all of the streams, the MFT should always be in one of two states: Able to accept more input, or able to produce more output.

If MFT_UNIQUE_METHOD_NAMES is defined before including mftransform.h, this method is renamed MFTGetOutputStatus. See Creating Hybrid DMO/MFT Objects.


Minimum supported client Windows Vista [desktop apps | UWP apps]
Minimum supported server Windows Server 2008 [desktop apps | UWP apps]
Target Platform Windows
Header mftransform.h
Library Mfuuid.lib

See also


Media Foundation Transforms