我将要编写一个 C# 应用程序来播放 webm 视频文件,其中包含 VP8 编码的视频流。
是否可以在用户不安装 DirectShow 过滤器的情况下执行此操作? 即通过分发提供一些 DLL?
从许可的角度来看,这是允许的吗?
最佳答案
DirectShow 过滤器一旦被添加到过滤器图中就可以运行。所以您不一定需要过滤器 COM 注册:您可以通过显式调用自己将其添加到那里。然后你可以通过 COM 或其他方式实例化它。
如果您需要标准过滤器注册来实例化过滤器,您可以利用 reg-free COM或者简单地加载 DLL 并通过导出的 DllGetClassObject
函数获取其工厂。
但是如果您需要 DirectShow Intelligent Connect 自动获取您的解码器,您需要完整的 COM 注册或者您需要更新您的代码以使用显式过滤器添加来构建您的图形。
关于windows - 在不安装 directShow 过滤器的情况下分发 webm/VP8 播放器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28148227/