MFCreateVideoMixerAndPresenter callback function (evr.h)

[The component described on this page, Enhanced Video Renderer, is a legacy feature. It has been superseded by the Simple Video Renderer (SVR) exposed through the MediaPlayer and IMFMediaEngine components. To play video content you should send data into one of these components and allow them to instantiate the new video renderer. These components have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer or the lower level IMFMediaEngine APIs to play video media in Windows instead of the EVR, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

Creates the default video mixer and video presenter for the enhanced video renderer (EVR).

Syntax

MFCreateVideoMixerAndPresenter Mfcreatevideomixerandpresenter;

EVRPUBLIC Mfcreatevideomixerandpresenter(
  [in]  IUnknown *pMixerOwner,
  [in]  IUnknown *pPresenterOwner,
  [in]  REFIID riidMixer,
  [out] void **ppvVideoMixer,
  [in]  REFIID riidPresenter,
  [out] void **ppvVideoPresenter
)
{...}

Parameters

[in] pMixerOwner

Pointer to the owner of the video mixer. If the mixer is aggregated, pass a pointer to the aggregating object's IUnknown interface. Otherwise, set this parameter to NULL.

[in] pPresenterOwner

Pointer to the owner of the video presenter. If the presenter is aggregated, pass a pointer to the aggregating object's IUnknown interface. Otherwise, set this parameter to NULL.

[in] riidMixer

Interface identifier (IID) of the requested interface on the video mixer. The video mixer exposes the IMFTransform interface.

[out] ppvVideoMixer

Receives a pointer to the requested interface on the video mixer. The caller must release the interface.

[in] riidPresenter

IID of the requested interface on the video presenter. The video presenter exposes the IMFVideoPresenter interface.

[out] ppvVideoPresenter

Receives a pointer to the requested interface on the video presenter. The caller must release the interface.

Return value

The function returns an HRESULT. Possible values include, but are not limited to, those in the following table.

Return code Description
S_OK
The method succeeded.

Requirements

Requirement Value
Minimum supported client Windows Vista [desktop apps only]
Minimum supported server Windows Server 2008 [desktop apps only]
Target Platform Windows
Header evr.h

See also

Enhanced Video Renderer

Media Foundation Functions