IMFDXGIDeviceManager interface

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


The IMFDXGIDeviceManager interface has these methods.

Method Description
IMFDXGIDeviceManager::CloseDeviceHandle Closes a Microsoft Direct3D device handle.
IMFDXGIDeviceManager::GetVideoService Queries the Microsoft Direct3D device for an interface.
IMFDXGIDeviceManager::LockDevice Gives the caller exclusive access to the Microsoft Direct3D device.
IMFDXGIDeviceManager::OpenDeviceHandle Gets a handle to the Microsoft Direct3D device.
IMFDXGIDeviceManager::ResetDevice Sets the Microsoft Direct3D device or notifies the device manager that the Direct3D device was reset.
IMFDXGIDeviceManager::TestDevice Tests whether a Microsoft Direct3D device handle is valid.
IMFDXGIDeviceManager::UnlockDevice 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.


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