IVMRMixerControl::SetMixingPrefs 方法 (strmif.h)

[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayerIMFMediaEngine媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayerIMFMediaEngineMedia Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

设置流的混合首选项。

语法

HRESULT SetMixingPrefs(
  [in] DWORD dwMixerPrefs
);

参数

[in] dwMixerPrefs

VMRMixerPrefs 标志的按位 OR 组合。

返回值

如果该方法成功,则它会返回 S_OK。 如果该方法失败,则会返回错误代码。

注解

混合首选项的标志分为三组:抽取、筛选和呈现目标。 VMRMixerPrefs 枚举定义位掩码来隔离这些标志:

  • MixerPref_DecimateMask
  • MixerPref_FilteringMask
  • MixerPref_RenderTargetMask
必须为每个组指定有效的标志。 如果要更改单个标志,可以获取当前首选项,删除不需要的标志,然后添加所需的标志。 例如:
C++
获取当前混合首选项。
DWORD dwPrefs;pMixControl-GetMixingPrefs> (&dwPrefs) ;

删除当前呈现目标标志。 dwPrefs &= ~MixerPref_RenderTargetMask;

添加所需的呈现目标标志。 dwPrefs |= MixerPref_RenderTargetYUV;

// Set the new flags. pMixControl->SetMixingPrefs(dwPrefs);

如果 VMR 处于无呈现模式,则必须在调用 SetMixingPrefs之前设置分配器呈现器。 否则,VMR 无法确定 Direct3D 设备的功能。

要求

   
最低受支持的客户端 Windows XP SP1 [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 strmif.h (包括 Dshow.h)
Library Strmiids.lib

另请参阅

错误和成功代码

IVMRMixerControl 接口

使用视频混合呈现器