MediaFoundationVideoEncoderTransforms: Detecting support for hardware H.264 video encoders

H.264 (MPEG-4 Part 10 also known as MPEG-4 AVC) video encoding was never packaged into DirectShow filter by Microsoft and instead they offered Media Foundation Transform (MFT) for the job: H.264 Video Encoder. Further development gave us third party video encoders also packaged as MFTs. Hardware backed MFTs became a part of video hardware drivers and nevertheless are part of Media Foundation API, can also be very well used standalone.

Detection of H.264 encoding capabilities? MediaFoundationVideoEncoderTransforms is here to help.

MediaFoundationVideoEncoderTransforms UI

H.264 options include:

  • H264 Encoder MFT
  • Intel® Quick Sync Video H.264 Encoder MFT
  • NVIDIA H.264 Encoder MFT
  • AMDh264Encoder

H.265 encoding will apparently be (already is) using the same encoder packaging.

The tools enumerates the transforms and provides details, similar to Enumerating Media Foundation Transforms (MFTs) application (source code available).

# System

[…]

# Display Devices <<– Same as in Device Manager

* AMD Radeon R7 200 Series
* Instance: PCI\VEN_1002&DEV_6610&SUBSYS_22BF1458&REV_00\4&2DB3ECDA&0&0008
* DEVPKEY_Device_Manufacturer: Advanced Micro Devices, Inc.
* DEVPKEY_Device_DriverVersion: 15.201.1151.1008
* Intel(R) HD Graphics 530 <<– Video adapter Intel QSV is available through (if you don’t see Intel video, then maybe it needs to be turned on in BIOS)
* Instance: PCI\VEN_8086&DEV_1912&SUBSYS_D0001458&REV_06\3&11583659&0&10
* DEVPKEY_Device_Manufacturer: Intel Corporation
* DEVPKEY_Device_DriverVersion: 20.19.15.4331

# Category `MFT_CATEGORY_VIDEO_ENCODER`

NOTE: Detail is limited to H.264 video encoders.

## Intel® Quick Sync Video H.264 Encoder MFT <<– The guy that does Intel QSV encoding

[…]

## H264 Encoder MFT <<– Stock Microsoft software H.264 implementation, available since Windows 7

[…]

(Other encoders like those from AMD, Nvidia will also be listed)

## Intel® Hardware H265 Encoder MFT <<– Intel also provides now H.265 hardware encoding option

[…]

## H265 Encoder MFT

[…]

Download links

One Reply to “MediaFoundationVideoEncoderTransforms: Detecting support for hardware H.264 video encoders”

  1. Francis Grave wrote::

    This might be due to Intel has a dedicated block of transistors for Encoding/Decoding. NVIDIA and INTEL are having an extra dedicated block on the die for Decoding/Encoding since they started offering H.264 hardware acceleration.

    AMD has the names UVD and VCE for their decoding/encoding engines, but the computation was in fact shader based uptil Tonga/Fiji, while NVIDIA and INTEL have an extra block of transistors for this purpose. Its a seperate pipeline which is independent to the most rest of the chip.

    Maybe thats why i cant use my IGPU when i have a dedicated GPU in the system. The A10-7850 has no Tonga IP, its the last generation of GCN without dedicated transistors for Encoding/Decoding.

    Mmh i expected to have the same behavior with INTEL IGPUs but guess i was wrong. To be honest i never read deeply into INTEL’s H.264 Decoding/Encoding as i refuse to buy/use anything that is from this company. Once it was a company of culture with Noice and Moore but since end of the 90’s it turned into a company without Innovation and crime behavior and i am with AMD since then.

    Back to the topic of this thread:

    It seems that it is possible to use INTEL IGPU’s for H.264 acceleration on Windows 7, even while having a dedicated graphics card in the system. The problem must be something else. Well i answered this thread because the problem felt similar to what i experienced with AMD IGPUs.

Leave a Reply