IRenderEngine::SetFilterGraph method

[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.]

Note

[Deprecated. This API may be removed from future releases of Windows.]

 

The SetFilterGraph method specifies a filter graph for the render engine to use.

Syntax

HRESULT SetFilterGraph(
   IGraphBuilder *pFG
);

Parameters

pFG

Pointer to the IGraphBuilder interface of the filter graph.

Return value

Returns one of the following HRESULT values:

Return code Description
S_OK
Success.
E_INVALIDARG
Invalid argument.
E_MUST_INIT_RENDERER
Render engine failed to initialize.

 

Remarks

Most applications do not need to call this method. It is more typical to let the render engine build the graph for you, by calling the IRenderEngine::ConnectFrontEnd method.

This method fails if the render engine already has a filter graph.

Never retrieve a pointer to a filter graph created by one render engine and then use it as the parameter to this method on another render engine. Doing so will cause unpredictable results.

The ConnectFrontEnd method tears down any existing filter graph, but keeps the same Filter Graph Manager instance.

Note

The header file Qedit.h is not compatible with Direct3D headers later than version 7.

 

Note

To obtain Qedit.h, download the Microsoft Windows SDK Update for Windows Vista and .NET Framework 3.0. Qedit.h is not available in the Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 Service Pack 1.

 

Requirements

Requirement Value
Header
Qedit.h
Library
Strmiids.lib

See also

IRenderEngine Interface

Error and Success Codes