我即将编写一个C#应用程序来播放内部有VP8编码视频流的webm视频文件。
是否可以在没有用户安装DirectShow过滤器的情况下执行此操作? 即通过提供一些具有分布的DLL?
从许可的角度来看,这是允许的吗?
答案 0 :(得分:2)
一旦将DirectShow过滤器添加到过滤器图形中,它就可以运行了。所以你不一定需要过滤COM注册:你可以通过显式调用自己添加它。然后你可以通过COM或其他方式实例化它。
如果您只需要标准过滤器注册来实例化过滤器,您可以利用reg-free COM或只是加载DLL并通过导出的DllGetClassObject
函数获取其工厂。
但是,如果您需要DirectShow Intelligent Connect自动获取解码器,则需要完整的COM注册,或者需要更新代码以使用显式过滤器添加来构建图形。