fanxiushu 2016-10-08 转载或引用,请注明原始作者
做这个事情写这篇文章之前,压根没朝模拟USB摄像头这方面去想过。
直到优快云上一位朋友提出问题,才想到还有这么一个玩意。
因此花了4,5天时间,利用自己之前开发的USB驱动,实现了一个虚拟USB摄像头的实例代码。
稍后会公布到优快云上。
记得最早的一篇文章也是介绍虚拟摄像头驱动的开发的,只是当时采用的是windows的流内核实现的,
windows实现视频驱动(包括摄像头,声卡等等多媒体相关的)本身就是采用流内核作为微端口框架来实现的。
因此很容易想到使用AVStream流内核框架来实现虚拟摄像头,
事实上,USB接口的摄像头,在经过底层的USB总线层,上升到驱动的功能层,
依然需要利用AVStream微端口实现摄像头的功能。
而USB接口的摄像头,如果它的USB接口传输的协议是符合UVC(USB Video Class)标准的,
则windows会自动加载自己的usbvideo驱动,而无需再额外开发驱动,这就是大家所说的是免驱的。
不光是USB摄像头,因为USB的通用性和普遍性,很多很多的USB接口设备,包括U