IVMRMonitorConfig9::SetDefaultMonitor method (vmr9.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 SetDefaultMonitor method specifies the default monitor that all future instances of the VMR should use for video playback.

Syntax

HRESULT SetDefaultMonitor(
  [in] UINT uDev
);

Parameters

[in] uDev

Index that specifies the default monitor.

Return value

The method returns an HRESULT. Possible values include those in the following table.

Return code Description
E_FAIL
Could not set the specified monitor as the default.
E_INVALIDARG
Invalid argument; uDev does not correspond to a valid monitor.
S_OK
The method succeeded.
VFW_E_WRONG_STATE
The allocator-presenter has not been loaded.

Remarks

Use this method on a multi-monitor system to specify to the VMR the default Direct3D device to use when connecting to an upstream filter. The default Direct3D device can be overridden for a particular connection by the SetMonitor method.

Include DShow.h and D3d9.h before Vmr9.h.

Requirements

Requirement Value
Minimum supported client Windows XP with SP2 [desktop apps only]
Minimum supported server Windows Server 2003 R2 [desktop apps only]
Target Platform Windows
Header vmr9.h
Library Strmiids.lib

See also

IVMRMonitorConfig9 Interface

IVMRMonitorConfig9::GetDefaultMonitor

Using the Video Mixing Renderer