IDirectDrawVideo Interface (Windows CE 5.0)
This interface is on the video renderer and provides information about Microsoft® DirectDraw® with respect to its use by the renderer.
For example, the interface allows an application to get details of the surface and any available hardware capabilities. It also allows the application to adjust the surfaces that the renderer should use, and even to set the DirectDraw instance.
There is some duplication in this interface with the IDirectDraw interface. However, this interface allows simple access to that information without calling the DirectDraw provider directly.
DirectDraw is not loaded by the renderer until it is connected, and DirectDraw is unloaded when the renderer is disconnected.
When the renderer has allocated the DirectDraw surfaces it will use for video playback, an application can obtain a DDSURFACEDESC structure describing it.
By passing in a pointer to a DDSURFACEDESC structure, the renderer will fill in the structure with the details of the current surface. If DirectDraw has not been loaded, the renderer will return E_FAIL.
If the renderer is using DCI (the predecessor to DirectDraw), the DDSURFACEDESC structure is not filled in but the call will return S_FALSE.
The only type of DCI surfaces the renderer uses are primary surfaces.
When to Implement
This interface is implemented by the DirectShow video renderer to provide information about DirectDraw surfaces and hardware capabilities.
When to Use
Applications can use this interface to get details of the surface and any available hardware capabilities, adjust the surfaces that the renderer should use, and set the IDirectDraw instance.
Applications are allowed to set the IDirectDraw instance because DirectDraw can be opened only once per process; this helps resolve conflicts.
Methods in Vtable Order
The following table shows the methods that appear in the Vtable beneath the standard COM methods inherited from IUnknown.
Method | Description |
---|---|
GetCaps | Retrieves a DirectDraw-defined DDCAPS structure containing the hardware capabilities. |
GetEmulatedCaps | Retrieves a DirectDraw-defined DDCAPS structure containing the emulated capabilities. |
CanUseOverlayStretch | Determines whether the renderer will check overlay restrictions. |
CanUseScanLine | Determines whether the renderer will check the current scan line when drawing. |
GetDirectDraw | Retrieves the IDirectDraw interface. |
GetFourCCCodes | Retrieves the multimedia format type FOURCCDWORD. |
GetSurfaceDesc | Retrieves a description of the DirectDraw surface in use. |
GetSurfaceType | Retrieves the actual surface type. |
GetSwitches | Retrieves the surface types that the renderer is allowed to use. |
SetDefault | Makes the current property settings the global default. |
SetDirectDraw | Passes the IDirectDraw interface to a loaded driver. |
SetSwitches | Sets the surface types that the renderer is allowed to use. |
UseOverlayStretch | Determines whether the renderer should check overlay stretch limitations. |
UseScanLine | Determines whether the renderer should check the current scan line when drawing a video. |
UseWhenFullScreen | Determines whether DirectShow might change display mode when going to full-screen mode. |
WillUseFullScreen | Determines whether DirectShow will change display mode when going to full-screen mode. |
Requirements
DirectShow applications and DirectShow filters have different include file and link library requirements.
For more information, see Setting Up the Build Environment.
Pocket PC: Windows Mobile 5.0 and later
Smartphone: Windows Mobile 5.0 and later
OS Versions: Windows CE 2.12 and later. Version 2.12 requires DXPAK 1.0 or later.
Header:
Send Feedback on this topic to the authors