by fanxiushu 202-03-01 转载或引用请注明原始作者。

对于windows平台下的虚拟摄像头实现方式的研究比较多,范围也比较广,曾采用各种方式来实现windows平台下的虚拟摄像头。
从CSDN上的第一篇文章开始:
https://blog.csdn.net/fanxiushu/article/details/8496747 (虚拟摄像头驱动原理开发)
文章描述的是利用老的流内核来实现的虚拟摄像头,调用stream.sys中导出的StreamClassRegisterAdapter 来注册和初始化摄像头。
这种摄像头其实依然是WDM基于内核驱动模式的摄像头,绝大部分程序会把他当成硬件摄像头,只是直到WIN10以上的系统中,
特别是UWP程序,由于放弃了老旧流内核,因此UWP程序基本上不能识别这种基于stream.sys的摄像头。

再后来,实现了虚拟USB总线驱动之后,利用虚拟USB总线驱动模拟出了虚拟USB摄像头。
https://blog.csdn.net/fanxiushu/article/details/52761644 ( USB设备驱动开发之扩展(利用USB虚拟总线驱动模拟USB摄像头)
而这种驱动,本质上是调用windows自己提供的usbvideo.sys驱动,usbvideo.sys驱动根据USB通讯中描述符提供的信息,
动态生成硬件摄像头,俗称USB摄像头。而我们再研究usbvideo.sys驱动,本质上它

Windows 虚拟摄像头驱动开发之 基于AVstream流内核的摄像头驱动相关推荐

  1. <Linux开发>驱动开发 -之-基于pinctrl/gpio子系统的LED驱动

    <Linux开发>驱动开发 -之-基于pinctrl/gpio子系统的LED驱动 交叉编译环境搭建: <Linux开发> linux开发工具-之-交叉编译环境搭建 uboot移 ...

  2. 【Linux驱动】Linux--USB免驱摄像头驱动分析(基于5.4内核)

    Linux--USB免驱摄像头驱动分析(基于5.4内核) Linux摄像头系列文章 Linux--USB免驱摄像头驱动分析 一.UVC简介 二.UVC功能 三.如何写一个USB摄像头驱动 四.Linu ...

  3. linux驱动开发篇(四)—— platform平台设备驱动

    linux系列目录: linux基础篇(一)--GCC和Makefile编译过程 linux基础篇(二)--静态和动态链接 ARM裸机篇(一)--i.MX6ULL介绍 ARM裸机篇(二)--i.MX6 ...

  4. 《linux设备驱动开发详解》笔记——15 linux i2c驱动

    <linux设备驱动开发详解>笔记--15 linux i2c驱动 15.1 总体结构 如下图,i2c驱动分为如下几个重要模块 核心层core,完成i2c总线.设备.驱动模型,对用户提供s ...

  5. 迅为RK3588开发板-基于瑞芯微RK3588摄像头方案

    硬件: RK3588开发板+摄像头 MIPI摄像头:   1.1 硬件连接 RK3588 底板上有四个摄像头接口,如下图所示,此四个接口均可连接摄像头 ov5695 和 摄像头 ov13850. 摄像 ...

  6. 【Linux驱动开发】基于imx6ul平台的sht30驱动开发

    Linux 的i2c系统 Linux 的i2c系统十分庞大,主要由3部分构成,i2c核心,i2c总线驱动,以及i2c设备驱动. i2c核心 主要提供了i2c总线驱动和设备驱动的注册,注销方法,i2c通 ...

  7. Linux设备驱动开发详解【二】_设备驱动相关硬件基础知识

    本文简介 本文讲解底层驱动工程师必备的硬件基础,给出了嵌入式系统硬件原理及分析方法的全景视图.         2.1 节讲解微控制器.微处理器.数字信号处理器以及应用于特定领域的处理器各自的特点. ...

  8. STM32MP157 Linux系统移植开发篇14:Linux内核RGB LCD驱动移植

    本文章为<STM32MP157 Linux系统移植开发篇>系列中的一篇,笔者使用的开发平台为华清远见FS-MP1A开发板(STM32MP157开发板).stm32mp157是ARM双核,2 ...

  9. Linux 网络设备驱动开发(一) —— linux内核网络分层结构

    Linux内核对网络驱动程序使用统一的接口,并且对于网络设备采用面向对象的思想设计. Linux内核采用分层结构处理网络数据包.分层结构与网络协议的结构匹配,既能简化数据包处理流程,又便于扩展和维护. ...

  10. Exynos4412 IIC总线驱动开发(一)—— IIC 基础概念及驱动架构分析

    关于Exynos4412 IIC 裸机开发请看 :Exynos4412 裸机开发 -- IIC总线 ,下面回顾下 IIC 基础概念 一.IIC 基础概念 IIC(Inter-Integrated Ci ...

最新文章

  1. JDK ThreadPoolExecutor核心原理与实践
  2. python 调用linux命令-Python Linux系统管理之Python中执行外部命令
  3. 说说Broker服务节点、Queue队列、Exchange交换器?
  4. libevent源码深度剖析八
  5. 利用WinRAR命令行压缩文件或文件夹
  6. 码率跟视频质量有关系
  7. Sharepoint 2010 应用范围
  8. Java别说取余( )运算简单,你真的会吗
  9. python 字符串函数 center_Python字符串处理
  10. windows winrar 指令_Windows上WinRAR.exe命令行参数说明(转载) .
  11. c#压缩解压缩bzip2、tar、zip、gzip、deflate、ntdll
  12. 漫画:什么是优先队列?
  13. 开了一个月yunfile的会员,发现没东西可下,做了个软件分享下
  14. 离散数学——自动生成真值表、主合取范式
  15. Android键盘自定义表情包,关于自定义表情键盘...
  16. 2022-2028年中国塑封机行业市场需求分析及投资前景展望报告
  17. PHP对接支付宝当面付详细教程
  18. Lisp Command ActiveX
  19. java工程师面试常见问题_JAVA软件工程师面试遇到的十个问题,这些你都知道吗?...
  20. python脚本实现qq邮箱发送邮件

热门文章

  1. 对51job网页招聘信息的简单爬取
  2. 付临门商服宝 v1.0.5
  3. Excel自动化教程之通过python将Excel与Word集成无缝生成自动报告
  4. MXNet对含隐藏状态的循环神经网络(RNN)的实现
  5. matlab中 .name,matlab中propertyname都有什么
  6. python提示jsondecodeerror是什么意思_Python爬虫解析json遇到一类JSONDecodeError的解决方案...
  7. 电脑插上耳机后声音依然外放,简单解决两步走!
  8. Ansys最新报告找到阻碍仿真效率提升“元凶”,竟然是……
  9. php文章下一页,php获取文章上一页与下一页的方法,_PHP教程
  10. MyBatis框架总结