首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >写一个虚拟摄像头?

写一个虚拟摄像头?
EN

Stack Overflow用户
提问于 2011-06-05 23:37:26
回答 2查看 15.8K关注 0票数 20

我需要创建一个虚拟摄像头,摆出一个摄像头的姿势,但作为输入的一组图像,它播放。我见过像ManyCam和伪摄像头这样的解决方案,但它们似乎都有这样或那样的限制(分辨率、最大文件大小、fps等)。我正在使用Windows XP SP3。

我知道我必须为这个任务编写一个WIA接口,但作为一名Python程序员,我从未编写过设备的驱动程序或接口。编写此接口的主要任务是什么?流程会是什么样子的?

EN

回答 2

Stack Overflow用户

发布于 2011-06-06 00:53:15

您需要编写DirectShow filter,它是一个实现IPinIAMStreamConfigIKsPropertySet接口的COM服务器。对于IPin部分,你最好从继承CSourceStream类开始,因为你需要得到Windows SDK,在那里安装了SDK会在samples\multimedia\directshow文件夹中有一个DirectShow基类源代码,在那里你会找到CSourceStream (还有许多其他的)。COM服务器的DllRegisterServer函数应使用过滤器映射器在CLSID_VideoInputDeviceCategory类别中注册您的过滤器。

在建立COM服务器之后,你用regsvr32工具注册它,你的虚拟网络摄像头应该会出现在网络摄像头列表中。

还要检查可以改进的samples\multimedia\directshow\filters\ball示例,并将其用作任务的起点。

票数 26
EN

Stack Overflow用户

发布于 2021-01-23 19:22:44

先读这篇文章

https://docs.microsoft.com/en-us/windows/win32/directshow/writing-source-filters

然后你就可以领养

https://github.com/roman380/tmhare.mvps.org-vcam

您可以在此示例虚拟摄影机的顶部进行操作。

这实现了IAMStreamConfigIKsPropertySet接口

这是使用CSourceStream和实现IPinIBaseFilterCSource类构建的

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6243891

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档