1

我是直接演出的新手,我想知道这是否可能(寻找解决方案的任何额外帮助也很好,但我更担心这是否值得追求)。

我正在 C++ 中创建 DirectShow 源过滤器,并且我正在对其进行设计,以便将 FillBuffer 调用传递给 C# 应用程序。据我了解,C# 应用程序需要加载 DirectShow 过滤器(我计划使用 DirectShowNet 库),然后请求我创建的包含辅助方法的接口(以指定 FillBuffer 函数并配置媒体源)。这与DirectShowNet站点上的 GSSF 示例非常相似。

但是,我想知道将过滤器加载到一个应用程序中的行为是否会阻止它在另一个应用程序中使用 - 或者如果过滤器加载到不同的应用程序中,我对过滤器配置所做的更改是否不会反映。

就像我说的那样,我对 COM 或 DirectShow 不太满意。

4

1 回答 1

1

在应用程序中使用 DirectShow 过滤器意味着在此应用程序中构建图表。当您使用两个应用程序时,您将有两个图表,每个图表都有自己的过滤器实例。

我不确定您是否可以在多个应用程序中使用一个图表。工具 GraphBuilder 能够连接到现有的图,但这最初是出于调试原因而不是为了图共享而实现的。

如果您只想共享配置并且可以使用两个过滤器实例,您可以实现一个共享配置(注册表、序列化数据等)并让每个过滤器轮询配置更改。

于 2012-04-22T17:13:24.153 回答