我有一个自定义的源过滤器,通过执行dshow基类中的CSource
和CSourceStream
。它使用IFilterMapper2::RegisterFilter
方法以不同名称导出多次。 现在,在我的过滤器中,我想知道(尽快)哪些已注册的过滤器实例正在被打开。 例如,假设我有一个模拟虚拟摄像头的dll。同样的dll导出过滤器的两个实例,所以在(说)Skype中,我可以选择虚拟凸轮#1和虚拟凸轮#2。在我的CSource
或CSourceStream
的构造函数中,我想知道它是否是虚拟凸轮#1或虚拟凸轮#2正在构建中。这可以做到吗?DShow源过滤器:我是哪个过滤器实例?
1
A
回答
2
有没有文件记录的方式,但有一个解决方法。由于DirectShow稳定,它应该可以很好地工作。
在您的过滤器类覆盖IPersistPropertyBag::Load
和您所做的读取IPropertyBag::Read
映射到注册表从HKEY_LOCAL_MACHINE\SOFTWARE\Classes...\CLSID_VideoInputDeviceCategory\Instance\<your-instance>
读取。所以你可以把你需要的所有标识都放在那里,并让它可以访问。
注意这是从应用程序的BindToObject
调用中调用的。
我这样做在通过IP摄像机的回答http://alax.info/blog/1233
相关问题
- 1. 使用Winsock insde DShow过滤器
- 2. 过滤器Sequelize实例
- 3. 是否WEKA过滤器保持实例
- 4. 过滤器和过滤器
- 5. 过滤器是
- 6. 类的python过滤器实例
- 7. 角度多重过滤器,第二个过滤器是空的?
- 8. 过滤另一个过滤器对象
- 9. 写给Directshow源过滤器
- 10. DirectShow源代码过滤器
- 11. Jersey资源过滤器
- 12. maven资源过滤器xml
- 13. ICollectionView过滤器影响源
- 14. 如何实现一个DShow过滤器来读取专门的AVI文件
- 15. Django的过滤器 - 根据过滤器
- 16. 过滤器和-ms-过滤器
- 17. Twilio过滤器的记录源是recordverb
- 18. VSTSDK2.4的过滤示例源
- 19. 从多个过滤器到单个过滤器
- 20. JTable多个过滤器设计范例
- 21. 什么是实际应用过滤器?
- 22. 过滤器是如何实现的?
- 23. 例外:在WebAPI 2中实现自定义过滤器时,给定过滤器必须实现一个或多个以下过滤器接口
- 24. 是否有一个动作过滤器覆盖控制器过滤器?
- 25. SqlDataProvider过滤器
- 26. 有过滤器
- 27. TreeView过滤器
- 28. NSPredicate过滤器
- 29. 过滤器+ ElemMatch
- 30. adoQuery过滤器
感谢支持虚拟视频输入,声音完美。尽管如此,我仍然遇到了一些困难。我的CSource实现类现在继承自IPersistPropertyBag,但在我的CVCam :: QueryInterface中,我注意到IPersistPropertyBag接口永远不会被请求。因此IPersistPropertyBag的方法永远不会被调用。我错过了明显的东西吗? – 2012-04-18 10:16:23
我能想到的是,你不是指示支持IPersistPropertyBag(在'GetInterface'中)。 – 2012-04-18 10:57:54
如果你的意思是QueryInterface,我是。 'REFIID riid'参数永远不会等于'IID_IPersistPropertyBag',无论是在我的'CSource',还是'QueryInterface'和'NonDelegatingQueryInterface'方法的'CSourceStream'。 – 2012-04-18 11:09:59