Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Defines messages for a Media Foundation transform (MFT). To send a message to an MFT, call IMFTransform::ProcessMessage.
Syntax
typedef enum _MFT_MESSAGE_TYPE {
MFT_MESSAGE_COMMAND_FLUSH = 0,
MFT_MESSAGE_COMMAND_DRAIN = 0x1,
MFT_MESSAGE_SET_D3D_MANAGER = 0x2,
MFT_MESSAGE_DROP_SAMPLES = 0x3,
MFT_MESSAGE_COMMAND_TICK = 0x4,
MFT_MESSAGE_NOTIFY_BEGIN_STREAMING = 0x10000000,
MFT_MESSAGE_NOTIFY_END_STREAMING = 0x10000001,
MFT_MESSAGE_NOTIFY_END_OF_STREAM = 0x10000002,
MFT_MESSAGE_NOTIFY_START_OF_STREAM = 0x10000003,
MFT_MESSAGE_NOTIFY_RELEASE_RESOURCES = 0x10000004,
MFT_MESSAGE_NOTIFY_REACQUIRE_RESOURCES = 0x10000005,
MFT_MESSAGE_NOTIFY_EVENT = 0x10000006,
MFT_MESSAGE_COMMAND_SET_OUTPUT_STREAM_STATE = 0x10000007,
MFT_MESSAGE_COMMAND_FLUSH_OUTPUT_STREAM = 0x10000008,
MFT_MESSAGE_COMMAND_MARKER = 0x20000000
} MFT_MESSAGE_TYPE;
Constants
MFT_MESSAGE_COMMAND_FLUSHValue: 0 Requests the MFT to flush all stored data. Should only be called after streaming has started using the MFT_MESSAGE_NOTIFY_BEGIN_STREAMING message. See MFT_MESSAGE_COMMAND_FLUSH. |
MFT_MESSAGE_COMMAND_DRAINValue: 0x1 Requests the MFT to drain any stored data. Should only be called after streaming has started using the MFT_MESSAGE_NOTIFY_BEGIN_STREAMING message. See MFT_MESSAGE_COMMAND_DRAIN. |
MFT_MESSAGE_SET_D3D_MANAGERValue: 0x2 Sets or clears the Direct3D Device Manager for DirectX Video Acceleration (DXVA). Must be called before SetInputType or SetOutputType. See MFT_MESSAGE_SET_D3D_MANAGER. |
MFT_MESSAGE_DROP_SAMPLESValue: 0x3 Note Requires Windows 7. |
MFT_MESSAGE_COMMAND_TICKValue: 0x4 Note Requires Windows 8. |
MFT_MESSAGE_NOTIFY_BEGIN_STREAMINGValue: 0x10000000 Notifies the MFT that streaming is about to begin. Must be called after SetInputType and SetOutputType. See MFT_MESSAGE_NOTIFY_BEGIN_STREAMING. |
MFT_MESSAGE_NOTIFY_END_STREAMINGValue: 0x10000001 Notifies the MFT that streaming is about to end. See MFT_MESSAGE_NOTIFY_END_STREAMING. |
MFT_MESSAGE_NOTIFY_END_OF_STREAMValue: 0x10000002 Notifies the MFT that an input stream has ended. See MFT_MESSAGE_NOTIFY_END_OF_STREAM. |
MFT_MESSAGE_NOTIFY_START_OF_STREAMValue: 0x10000003 Notifies the MFT that the first sample is about to be processed. Must be called after SetInputType and SetOutputType. See MFT_MESSAGE_NOTIFY_START_OF_STREAM. |
MFT_MESSAGE_NOTIFY_RELEASE_RESOURCESValue: 0x10000004 |
MFT_MESSAGE_NOTIFY_REACQUIRE_RESOURCESValue: 0x10000005 |
MFT_MESSAGE_NOTIFY_EVENTValue: 0x10000006 |
MFT_MESSAGE_COMMAND_SET_OUTPUT_STREAM_STATEValue: 0x10000007 |
MFT_MESSAGE_COMMAND_FLUSH_OUTPUT_STREAMValue: 0x10000008 |
MFT_MESSAGE_COMMAND_MARKERValue: 0x20000000 Marks a point in the stream. This message applies only to asynchronous MFTs. See MFT_MESSAGE_COMMAND_MARKER. Note Requires Windows 7 |
Remarks
Some messages require specific actions from the MFT. These events have "MESSAGE" in the message name. Other messages are informational; they notify the MFT of some action by the client, and do not require any particular response from the MFT. These messages have "NOTIFY" in the messages name. Except where noted, an MFT should not rely on the client sending notification messages.
Requirements
| Requirement | Value |
|---|---|
| Minimum supported client | Windows Vista [desktop apps | UWP apps] |
| Minimum supported server | Windows Server 2008 [desktop apps | UWP apps] |
| Header | mftransform.h |