IDvdGraphBuilder::GetDvdInterface method (strmif.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 GetDvdInterface method retrieves interfaces from the DVD-Video playback graph to make DVD-Video playback development easier.
Syntax
HRESULT GetDvdInterface(
[in] REFIID riid,
[out] void **ppvIF
);
Parameters
[in] riid
IID of the requested interface.
[out] ppvIF
Receives a pointer to the interface. The application must release the interface.
Return value
Returns an HRESULT value. Possible values include the following.
Return code | Description |
---|---|
|
The ppvIF parameter is invalid. This parameter must not be NULL. |
|
The requested interface could not be returned. |
|
The graph is not built yet. See Remarks. |
Remarks
You can use this method to select and configure a video renderer filter before you build the filter graph for DVD playback. The following interfaces are available:
- Overlay Mixer Filter: IDDrawExclModeVideo.
- Video Mixing Renderer 7 (VMR-7): IVMRFilterConfig, IVMRMixerBitmap, IVMRWindowlessControl, and IVMRMonitorConfig.
- Video Mixing Renderer 9 (VMR-9): IVMRFilterConfig9, IVMRMixerBitmap9, IVMRWindowlessControl9, and IVMRMonitorConfig9.
- Enhanced Video Renderer (EVR): IEVRFilterConfig and IMFVideoRenderer.Windows Server 2003, Windows XP and Windows 2000: This interface is not supported.
Before the DVD playback graph is built, if you request any interfaces that are not on the previous list, the method returns VFW_E_DVD_GRAPHNOTREADY. To build the DVD graph, call IDvdGraphBuilder::RenderDvdVideoVolume. After you build the graph, you can use GetDvdInterface to retrieve some additional interfaces:
- IDvdControl (deprecated), IDvdControl2, IDvdInfo (deprecated), and IDvdInfo2 to control DVD playback.
- IVideoWindow, IBasicVideo, and IBasicVideo2 to control the video settings, in windowed mode only.
- IBasicAudio to control the audio settings.
- IAMLine21Decoder to control closed caption display.
- IMixerPinConfig and IMixerPinConfig2 to configure the Overlay Mixer filter's first input pin, which delivers the primary video stream. (To get this interface for the other pins on the Overlay Mixer, enumerate the filter's pins and query them directly.) New applications should avoid using the Overlay Mixer filter.
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 | strmif.h (include Dshow.h) |
Library | Strmiids.lib |