我正在将基于 Direct Show 相机的 SDK 移植到 MFT。在我的旧代码中,我有 KSProxy 接口,例如 IksTopolgy,IKsControl 和 IKsProperty 。
IksTopolgy,IKsControl 用于枚举属性集,IKsProperty 用于获取/设置属性值。现在我尝试在新代码中进行相同的操作。我能够枚举属性,即 MFT 支持以下代码。
CComPtr<IKsTopologyInfo> ksTopology = NULL;
hRet = m_pMediaSource->QueryInterface(&ksTopology);
但是用于获取/设置属性值的 IKsProperty 接口无法返回 E_NOINTERFACE。
hRet = m_pMediaSource->QueryInterface(&pKsPropertySet);
失败了。我不明白为什么 m_pMediaSource 不支持此功能 请建议如何获取/设置属性值。