我正在尝试从视频混合渲染器9中提取IVMRMixerControl9
,但这个基于COM的直接显示过滤器并未将此接口列为已实现,我无法{{1} } 为了它。我试图设置启用" YUV混合模式",我可能使用IVMRMixerControl9::SetMixingPrefs
方法。
为什么MSDN文档列出了实现QueryInterface
的VMR9,但我无法提取接口?我已经检查过Windows XP和Windows 7,没有运气。
IVMRMixerControl9
以下是我尝试启用的设置的图片。
答案 0 :(得分:1)
太早,混音器按需加载。或者,您可以通过明确的SetNumberOfStreams
来强制执行此操作。
IBaseFilter baseFilter = new VideoMixingRenderer9() as IBaseFilter;
IVMRFilterConfig9 vmrFilterConfig = baseFilter as IVMRFilterConfig9;
vmrFilterConfig.SetNumberOfStreams(1);
IVMRMixerControl9 vmrMixerControl = baseFilter as IVMRMixerControl9;
Debug.Assert(vmrMixerControl != null);