如何从IMFMediaSource获取Pins类别

时间:2013-12-01 13:51:38

标签: c++ com directshow ms-media-foundation

我需要迭代IMFMediaSource引脚并获取每个引脚的特定类别名称,我使用媒体基础的cpp接口在win 8中工作。

我看到IBaseFilter的IBaseFilter :: EnumPins函数,但IMFMediaSource不支持IBaseFilter接口:

CComPtr<IBaseFilter> pFilter;
HRESULT hr = m_pMediaSource->QueryInterface(__uuidof(IBaseFilter), (void **)&pFilter);

以NO_INTERFACE错误代码失败:(

如何从媒体源获取引脚类别?

1 个答案:

答案 0 :(得分:1)

这不起作用,因为它不必工作。 IMFMediaSource属于Media Foundation,IBaseFilter属于DirectShow。不同的API不必共享或以其他方式复制实现。 Media Foundation对象甚至没有引脚开头。

由于对所提出的问题没有答案,因此这里唯一的解决方案就是退后一步,回顾一下你想要实现的目标。