MF_TRANSCODE_TOPOLOGYMODE attribute

Specifies for a transcode topology whether the topology loader will load hardware-based transforms.

The topology mode specifies whether hardware transforms (such as hardware codecs) may be used in the transcode topology. The application can store this attribute in a transcode profile by calling IMFTranscodeProfile::SetContainerAttributes.

Data type

MF_TRANSCODE_TOPOLOGYMODE_FLAGS stored as UINT32

Get/set

To get this attribute, call IMFAttributes::GetUINT32.

To set this attribute, call IMFAttributes::SetUINT32.

Remarks

This attribute is optional. It must have one of the following values.

Value Description
MF_TRANSCODE_TOPOLOGYMODE_HARDWARE_ALLOWED The Topology Loader will load hardware-based MFTs, such as hardware decoders, when available.
The Topology Loader automatically falls back to software decoding if no hardware decoder is found, or if a hardware decoder fails to connect for some reason.
MF_TRANSCODE_TOPOLOGYMODE_SOFTWARE_ONLY The Topology Loader will load only software MFTs, including software decoders.

 

The default value is MF_TRANSCODE_TOPOLOGYMODE_SOFTWARE_ONLY.

If the Topology Loader inserts a hardware MFT into the topology, it sets the MFT_ENUM_HARDWARE_URL_Attribute attribute on the topology node. To check whether a hardware MFT is present, enumerate the nodes in the resolved topology and check whether this attribute is present.

The GUID constant for this attribute is exported from mfuuid.lib.

Requirements

Requirement Value
Minimum supported client
Windows 7 [desktop apps only]
Minimum supported server
Windows Server 2008 R2 [desktop apps only]
Header
Mfidl.h

See also

Alphabetical List of Media Foundation Attributes

Transcode API

IMFTranscodeProfile::GetContainerAttributes

IMFTranscodeProfile::SetContainerAttributes