IMFDXGIDeviceManager interface (mfobjects.h)

Enables two threads to share the same Microsoft Direct3D 11 device.


The IMFDXGIDeviceManager interface inherits from the IUnknown interface. IMFDXGIDeviceManager also has these types of members:


The IMFDXGIDeviceManager interface has these methods.


Closes a Microsoft Direct3D device handle.

Queries the Microsoft Direct3D device for an interface.

Gives the caller exclusive access to the Microsoft Direct3D device.

Gets a handle to the Microsoft Direct3D device.

Sets the Microsoft Direct3D device or notifies the device manager that the Direct3D device was reset.

Tests whether a Microsoft Direct3D device handle is valid.

Unlocks the Microsoft Direct3D device.


This interface is exposed by the Microsoft DirectX Graphics Infrastructure (DXGI) Device Manager. To create the DXGI Device Manager, call the MFCreateDXGIDeviceManager function.

When you create an IMFDXGIDeviceManager with MFCreateDXGIDeviceManager, a Direct3D 11 device is not associated with the device manager. To associate a Direct3D 11 device with the device manager, call IMFDXGIDeviceManager::ResetDevice, passing in the pointer to the Direct3D 11 device. To create a Direct3D 11 device, call D3D11CreateDevice. The device should be created with the D3D11_CREATE_DEVICE_VIDEO_SUPPORT device creation flag which is defined in the D3D11_CREATE_DEVICE_FLAG enumeration.

For Microsoft Direct3D 9 devices, use the IDirect3DDeviceManager9 interface.

Windows Store apps must use IMFDXGIDeviceManager and Direct3D 11 Video APIs.


Requirement Value
Minimum supported client Windows 8 [desktop apps | UWP apps]
Minimum supported server Windows Server 2012 [desktop apps | UWP apps]
Target Platform Windows
Header mfobjects.h (include Mfidl.h)

See also

Media Foundation Interfaces