当我们运行一些多媒体程序或者OpenCV的例子的时候,经常要用摄像头作为输入源,但是并不是每个用户电脑上都装了USB摄像头,那怎么办呢?可以在你系统上安装一个虚拟摄像头的Directshow插件,那么你系统上就多了一个“摄像头”了,但是实际上它不是物理摄像头,只是模拟摄像头设备可以采集图像。我的资源里提供了一个虚拟摄像头的代码,大家可以试用一下,下载地址:
http://download.csdn.net/download/zhoubotong2012/10242646
这个Filter原先的版本是一个老外写的,我在上面做了些修改,主要增加了将文件作为输入源的功能。
压缩包里包含两部分:
Virtual Cam Source Filter工程--VirtualCam
还有配置Filter属性的一个工具--VirtualCamConfig
进入VirtualCam的Bin目录,会看到下面的这些文件:
其中VCam.ax就是我们要注册的Release版的Filter,目录下面还有FFmpeg的DLL文件,为什么还用到FFmpeg呢?
因为这个Filter的功能是将一个媒体文件解码后的图像作为视频源的,也就是从摄像头里出来的数据就是文件里的视频。所以,使用Filter时我们需要加载一个文件,通过前面说的VirtualCamConfig工具来设置文件路径: