IVMRDeinterlaceControl9 Interface
Microsoft DirectShow 9.0 |
IVMRDeinterlaceControl9 Interface
The IVMRDeinterlaceControl9 interface supports hardware-accelerated deinterlacing using the Video Mixing Renderer Filter 9 (VMR-9). This interface enables applications or other filters to control how the VMR manages DirectX Video Acceleration (DirectX VA) hardware deinterlacing.
In addition to the methods inherited from IUnknown, the IVMRDeinterlaceControl9 interface exposes the following methods.
Method | Description |
GetActualDeinterlaceMode | Returns the deinterlacing mode that the VMR is using for a specified stream. |
GetDeinterlaceMode | Retrieves the deinterlacing mode for the specified video stream. |
GetDeinterlaceModeCaps | Retrieves the capabilities of a specific deinterlacing mode supported by the graphics device driver. |
GetDeinterlacePrefs | Queries how the VMR will select a deinterlacing mode if it cannot use the preferred mode. |
GetNumberOfDeinterlaceModes | Retrieves the deinterlacing modes available to the VMR for the specified video format. |
SetDeinterlaceMode | Sets the deinterlacing mode for the specified video stream. |
SetDeinterlacePrefs | Specifies how the VMR will select a deinterlacing mode if it cannot use the preferred mode. |
Remarks
Deinterlacing modes are identified by GUIDs. The graphics device driver returns an array of GUIDs for the modes that it supports. The array is sorted in order of quality, from best quality to lowest quality. To retrieve the list of GUIDs, call the GetNumberOfDeinterlaceModes method. To obtain more information about a particular mode, pass this GUID to the GetDeinterlaceModeCaps method. To configure the VMR to use a particular mode, call the SetDeinterlaceMode method.
To determine what de-interlacing modes are available, perform these steps:
1. Create the VMR and put it into mixing mode.
2. Get the IVMRDeinterlaceControl9 interface from the VMR.
3. Create a valid VMRVideoDesc variable that matches the type of video you want to de-interlace.
4. Call IVMRDeinterlaceControl9::GetNumberOfDeinterlaceModes to get the number of available de-interlacing modes.
5. For each mode returned, call IVMRDeinterlaceControl::GetDeinterlaceModeCaps to get information about each mode.
Requirements
Header: Include D3d9.h, Vmr9.h.
Library: Use Strmiids.lib.
See Also