有没有办法以编程方式控制 DirectShow VSFilter?

Posted

技术标签:

【中文标题】有没有办法以编程方式控制 DirectShow VSFilter?【英文标题】:Is there any way to control DirectShow VSFilter programmatically? 【发布时间】:2014-08-07 09:48:25 【问题描述】:

我正在尝试以编程方式为 DirectShow VSFilter 设置字幕文件。 有一种方法可以通过它的属性页来做到这一点,但我找不到任何关于它的 API 的文档,即使它有一个。

是否有任何类型的 API、Interop、任何可以为 VSFilter 设置字幕文件的东西?

【问题讨论】:

【参考方案1】:

没有关于 VSFilter 的具体文档,但是它是开源软件。所以你可以下载源代码,参考它的接口定义,例如在 MPC-HC 源 \Mpc-hc\src\filters\transform\vsfilter\IDirectVobSub.h 中,并使用该接口以编程方式控制过滤器。

    interface __declspec(uuid("EBE1FB08-3957-47ca-AF13-5827E5442E56"))
IDirectVobSub : public IUnknown 
    
        STDMETHOD(get_FileName) (THIS_
                    WCHAR* fn   // fn should point to a buffer allocated to at
                                // least the length of MAX_PATH (=260)
                 ) PURE;

        STDMETHOD(put_FileName) (THIS_
                    WCHAR* fn
                 ) PURE;
// ...

【讨论】:

谢谢!我没有意识到这个过滤器是 MPC-HC 项目的一部分。

以上是关于有没有办法以编程方式控制 DirectShow VSFilter?的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式将空间添加到任务控制?

有没有办法以编程方式列出所有 gradle 依赖项?

有没有办法以编程方式列出所有gradle依赖项?

Wear OS 2.0 - 有没有办法以编程方式处理 html、网页?

如何在没有情节提要的情况下以编程方式实例化视图控制器

Chrome 开发工具控制台 - 以编程方式选择框架