c++ - 调用 ConnectDirect() MSFT API 时出现错误 "The owner SID on a per-user subscription doesn' t 存在于 DXVA2 中,但不存在于 DXVAHD 中。

标签 c++ visual-c++ com directshow directshow.net

当我调用时,返回值“hr”中出现错误“每个用户订阅的所有者 SID 不存在”:

hr = pGraph->ConnectDirect(pOut, pIn, NULL);

只有在使用 DXVA2 时才会出现此错误,但在使用 DXVAHD 时会返回 S_OK。

任何人都可以告诉我这样做的原因。

我怀疑我为“ConnectDirect()”给出的第三个参数,即媒体类型为 NULL。我一定给了其他类型的是吗?

2 个过滤器的 pOut 和 pIn 是正确的,正如我在获取引脚值时从 S_OK 返回值中观察到的那样。

由于 ConnectDirect() 是一个 Microsoft API,我无法进入代码以进行进一步调试。

谁能帮我解决这个问题?

提前致谢。

最佳答案

您遇到的错误是 0x80040207“这些引脚之间没有通用的媒体类型。”,VFW_E_NO_ACCEPTABLE_TYPES。您的图形构建中有些地方做错了。

关于c++ - 调用 ConnectDirect() MSFT API 时出现错误 "The owner SID on a per-user subscription doesn' t 存在于 DXVA2 中,但不存在于 DXVAHD 中。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9974830/

相关文章:

c++ - Visual Studio 2013 是否提供了对 c++11 的 high_performance_clock 的改进?

c++ - 如何运行套接字示例 C++?

c# - 使用来自 COM 的参数化构造函数实例化类

c++ - 根据 size() 排序 vector

c++ - 使用C++将UTF8字符打印到Linux控制台

c++ - 重载 + 运算符以组合两个使用 vector 的字典

c++ - 比较数组相似性的最佳比较算法是什么?

c++ - 缩小转换和初始化列表,哪个编译器是对的?

.net - Excel 从两个不同的 AppDomain 调用 .NET 自动化服务器?

C# Com Interop 与 Windows Media Player 可视化(带有示例代码)