IVMRMixerControl9未在Video Mixing Renderer 9上实现

时间:2014-08-18 15:33:50

标签: c# video directshow directshow.net

我正在尝试从视频混合渲染器9中提取IVMRMixerControl9,但这个基于COM的直接显示过滤器并未将此接口列为已实现,我无法{{1} } 为了它。我试图设置启用" YUV混合模式",我可能使用IVMRMixerControl9::SetMixingPrefs方法。

为什么MSDN文档列出了实现QueryInterface的VMR9,但我无法提取接口?我已经检查过Windows XP和Windows 7,没有运气。

IVMRMixerControl9

以下是我尝试启用的设置的图片。

Pixture of setting trying to enable

1 个答案:

答案 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);