IDirectDrawVideo interface (amvideo.h)
[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]
The IDirectDrawVideo
interface queries the Video Renderer filter about DirectDraw surfaces and hardware capabilities.
Applications can use this interface to control what DirectDraw features the Video Renderer will take advantage of. For example, if you are positive that you don't want the Video Renderer to use a hardware overlay you can disable its use via the SetSwitches method.
The Video Renderer does not load DirectDraw until it is connected, and likewise DirectDraw is unloaded only 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.
Inheritance
The IDirectDrawVideo interface inherits from the IUnknown interface. IDirectDrawVideo also has these types of members:
Methods
The IDirectDrawVideo interface has these methods.
IDirectDrawVideo::CanUseOverlayStretch The CanUseOverlayStretch method determines whether the renderer will check overlay restrictions. |
IDirectDrawVideo::CanUseScanLine The CanUseScanLine method determines whether the renderer will check the current scan line when drawing. |
IDirectDrawVideo::GetCaps The GetCaps method retrieves a DirectDraw-defined DDCAPS structure containing the hardware capabilities. |
IDirectDrawVideo::GetDirectDraw The GetDirectDraw method retrieves the IDirectDraw interface. |
IDirectDrawVideo::GetEmulatedCaps The GetEmulatedCaps method retrieves a DirectDraw-defined DDCAPS structure containing the emulated capabilities. |
IDirectDrawVideo::GetFourCCCodes The GetFourCCCodes method retrieves the multimedia format type. |
IDirectDrawVideo::GetSurfaceDesc The GetSurfaceDesc method retrieves a DDSURFACEDESC structure describing the current DirectDraw surface. |
IDirectDrawVideo::GetSurfaceType The GetSurfaceType method retrieves the actual surface type as a DirectShow DirectDraw Surface (AMDDS) definition. |
IDirectDrawVideo::GetSwitches The GetSwitches method retrieves the surface types that the renderer is allowed to use. |
IDirectDrawVideo::SetDefault The SetDefault method makes the current property settings the global default. |
IDirectDrawVideo::SetDirectDraw The SetDirectDraw method passes the IDirectDraw interface to a loaded driver. |
IDirectDrawVideo::SetSwitches The SetSwitches method sets the surface types that the renderer is allowed to use. |
IDirectDrawVideo::UseOverlayStretch The UseOverlayStretch method determines whether the renderer should check overlay stretch limitations. |
IDirectDrawVideo::UseScanLine The UseScanLine method determines whether the renderer should check the current scan line when drawing a video. |
IDirectDrawVideo::UseWhenFullScreen The UseWhenFullScreen method determines whether DirectShow should change display mode when going to full-screen mode. |
IDirectDrawVideo::WillUseFullScreen The WillUseFullScreen method determines whether DirectShow will change display mode when going to full-screen mode. |
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 2000 Professional [desktop apps only] |
Minimum supported server | Windows 2000 Server [desktop apps only] |
Target Platform | Windows |
Header | amvideo.h (include Dshow.h) |