网络摄像头外观顺序

时间:2011-03-23 03:36:48

标签: c++ webcam directshow

我开发了虚拟网络摄像头(DShow过滤器),现在我想在应用程序中的网络摄像头列表中排名第一。我知道应用程序使用DirectShow或VFW来枚举视频设备,但是如何强制它们将我的网络摄像头显示为“默认”?

提前致谢!

1 个答案:

答案 0 :(得分:0)

您可以尝试使用过滤器优点。这不会达到“默认”(不确定这是否可以实现),但至少可以将您的过滤器置于列表顶部,具体取决于客户端应用程序如何对其捕获列表进行排序(例如按字母顺序或按优先级排序)。

过滤器优点允许过滤器供应商将“优先级”级别归于其过滤器。此过滤器优点已在过滤器中注册,如过滤器的注册表描述符中所述。例如:


AMOVIESETUP_FILTER sudFilterReg = {
    &CLSID_SomeFilter,      // Filter CLSID.
    g_wszName,              // Filter name.
    MERIT_PREFERRED,        // Merit.
    1,                      // Number of pin types.
    &sudPins                // Pointer to pin information.
};

这通常与编码器/解码器滤波器一起使用。例如,在DirectShow使用自动连接从用户系统上注册的多个MJPEG编解码器列表中选择MJPEG解码器过滤器的情况下,选择具有最高优值的过滤器。

这种方法还使最终用户有机会查看/调整其系统上注册的所有过滤器的过滤器优值(请查看Filmerit http://paul.glagla.free.fr/filmerit_en.htm),这是一个很好的免费工具。