查找过滤器的DirectShow类别 [英] Finding a filter's DirectShow category

查看:66
本文介绍了查找过滤器的DirectShow类别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

鉴于过滤器或硬件设备或其名称,我如何找出该过滤器或硬件设备所属的DirectShow类别?是否存在某种类别"?在PropertyBag中的某处找到物业?

Given a filter or a hardware device or its moniker, how can I find out what DirectShow category that filter or hardware device belongs to? Is there some kind of a "Category" property somewhere in the PropertyBag?

推荐答案

DirectShow类别包含过滤器注册信息,表示可以从注册条目中创建监视器.创建别名后,您将没有过滤器,但此时类别信息已经消失了.从绰号创建过滤器实例显然不会使您归类.

DirectShow categories contain filter registration information in terms that it is possible to create a monitor out of registration entry. Once moniker is created you don't yet have a filter but category information is already gone at this point. Creating an instance of filter from moniker obviously does not get you category back.

还可以在多个类别中注册一个过滤器,并且还可以将[第三方]过滤器注册到一个类别中,而过滤器根本不知道它.

Also it is possible to have one filter regisered in multiple categories, and it is also possible to register a [third party] filter into a category without filter being aware of it at all.

因此,不,拥有过滤器后,您将无法找到过滤器的类别.有时,您可以从实例中获取CLSID并通过枚举类别将其匹配,但即使这样对每个过滤器也无效.

So, no, you cannot find out filter's category when you have a filter. Sometimes you can get CLSID from instance and match it back by enumerating a categories, but even this would not work for every filter.

这篇关于查找过滤器的DirectShow类别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆