IDirect3DDeviceManager9 interface (dxva2api.h)

Enables two threads to share the same Direct3D 9 device, and provides access to the DirectX Video Acceleration (DXVA) features of the device.


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


The IDirect3DDeviceManager9 interface has these methods.

Method Description
IDirect3DDeviceManager9::CloseDeviceHandle Closes a Direct3D device handle.
IDirect3DDeviceManager9::GetVideoService Gets a DirectX Video Acceleration (DXVA) service interface.
IDirect3DDeviceManager9::LockDevice Gives the caller exclusive access to the Direct3D device.
IDirect3DDeviceManager9::OpenDeviceHandle Gets a handle to the Direct3D device.
IDirect3DDeviceManager9::ResetDevice Sets the Direct3D device or notifies the device manager that the Direct3D device was reset.
IDirect3DDeviceManager9::TestDevice Tests whether a Direct3D device handle is valid.
IDirect3DDeviceManager9::UnlockDevice Unlocks the Direct3D device.


This interface is exposed by the Direct3D Device Manager. To create the Direct3D device manager, call DXVA2CreateDirect3DDeviceManager9.

To get this interface from the Enhanced Video Renderer (EVR), call IMFGetService::GetService. The service GUID is MR_VIDEO_ACCELERATION_SERVICE. For the DirectShow EVR filter, call GetService on the filter's pins.

The Direct3D Device Manager supports Direct3D 9 devices only. It does not support DXGI devices.

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


Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Target Platform Windows
Header dxva2api.h

See also

Direct3D Device Manager

Media Foundation Interfaces